зеркало из https://github.com/mozilla/gecko-dev.git
Bug 601604 - Emit ]] or ] when ]]EOF or ]EOF appears in a CDATA section in text/html. rs=jonas, a=jst.
--HG-- extra : rebase_source : 8f83d4a619ff8893976db75f63b9ed81e4292e2f
This commit is contained in:
Родитель
649c4eccc3
Коммит
d9758ac3ac
|
@ -6471,6 +6471,12 @@ public class Tokenizer implements Locator {
|
|||
handleNcrValue(returnState);
|
||||
state = returnState;
|
||||
continue;
|
||||
case CDATA_RSQB:
|
||||
tokenHandler.characters(Tokenizer.RSQB_RSQB, 0, 1);
|
||||
break eofloop;
|
||||
case CDATA_RSQB_RSQB:
|
||||
tokenHandler.characters(Tokenizer.RSQB_RSQB, 0, 2);
|
||||
break eofloop;
|
||||
case DATA:
|
||||
default:
|
||||
break eofloop;
|
||||
|
|
|
@ -3684,6 +3684,14 @@ nsHtml5Tokenizer::eof()
|
|||
state = returnState;
|
||||
continue;
|
||||
}
|
||||
case NS_HTML5TOKENIZER_CDATA_RSQB: {
|
||||
tokenHandler->characters(nsHtml5Tokenizer::RSQB_RSQB, 0, 1);
|
||||
NS_HTML5_BREAK(eofloop);
|
||||
}
|
||||
case NS_HTML5TOKENIZER_CDATA_RSQB_RSQB: {
|
||||
tokenHandler->characters(nsHtml5Tokenizer::RSQB_RSQB, 0, 2);
|
||||
NS_HTML5_BREAK(eofloop);
|
||||
}
|
||||
case NS_HTML5TOKENIZER_DATA:
|
||||
default: {
|
||||
NS_HTML5_BREAK(eofloop);
|
||||
|
|
|
@ -1,17 +1,8 @@
|
|||
#data
|
||||
<svg><![CDATA[]]
|
||||
Placeholder
|
||||
#errors
|
||||
#document
|
||||
| <html>
|
||||
| <head>
|
||||
| <body>
|
||||
| <svg svg>
|
||||
|
||||
#data
|
||||
<svg><![CDATA[]
|
||||
#errors
|
||||
#document
|
||||
| <html>
|
||||
| <head>
|
||||
| <body>
|
||||
| <svg svg>
|
||||
| "Placeholder"
|
||||
|
|
|
@ -86,6 +86,26 @@
|
|||
| <svg svg>
|
||||
| "]] >"
|
||||
|
||||
#data
|
||||
<svg><![CDATA[]]
|
||||
#errors
|
||||
#document
|
||||
| <html>
|
||||
| <head>
|
||||
| <body>
|
||||
| <svg svg>
|
||||
| "]]"
|
||||
|
||||
#data
|
||||
<svg><![CDATA[]
|
||||
#errors
|
||||
#document
|
||||
| <html>
|
||||
| <head>
|
||||
| <body>
|
||||
| <svg svg>
|
||||
| "]"
|
||||
|
||||
#data
|
||||
<svg><![CDATA[]>a
|
||||
#errors
|
||||
|
|
Загрузка…
Ссылка в новой задаче