Fix Bogus Comment state for nil-characters

This commit is contained in:
iska
2014-11-01 22:04:23 +01:00
parent 244021072c
commit e8c74da8e2
+7 -3
View File
@@ -1571,12 +1571,16 @@
- (void)HTMLTokenizerStateBogusComment
{
NSMutableString *comment = [NSMutableString string];
NSString *characters = [_inputStreamReader consumeCharactersUpToCharactersInString:@">"];
characters = [characters stringByReplacingOccurrencesOfString:@"\0" withString:@"0xFFFD"];
_currentCommentToken = [[HTMLCommentToken alloc] initWithData:characters];
characters = [characters stringByReplacingOccurrencesOfString:@"\0" withString:StringFromUniChar(REPLACEMENT_CHAR)];
if (characters != nil) {
[comment appendString:characters];
}
_currentCommentToken = [[HTMLCommentToken alloc] initWithData:comment];
[self emitToken:_currentCommentToken];
[self switchToState:HTMLTokenizerStateData];
#warning Check if necessary
if ([_inputStreamReader consumeNextInputCharacter] == (UTF32Char)EOF) {
[_inputStreamReader reconsumeCurrentInputCharacter];
}