Bug 483015 - Expose HTML line number to JS and CSS parsers in the HTML5 parser. r=bnewman, a=beltzner.

This commit is contained in:
Henri Sivonen
2009-10-28 15:48:37 +02:00
parent 972da1bcbb
commit 6d5095eb25
11 changed files with 123 additions and 19 deletions

View File

@@ -324,7 +324,7 @@ nsHtml5TreeOperation::Perform(nsHtml5TreeOpExecutor* aBuilder)
nsIContent* node = *(mOne.node);
nsAHtml5TreeBuilderState* snapshot = mTwo.state;
if (snapshot) {
aBuilder->InitializeDocWriteParserState(snapshot);
aBuilder->InitializeDocWriteParserState(snapshot, mInt);
}
aBuilder->SetScriptElement(node);
return rv;
@@ -392,6 +392,20 @@ nsHtml5TreeOperation::Perform(nsHtml5TreeOpExecutor* aBuilder)
aBuilder->DocumentMode(mOne.mode);
return rv;
}
case eTreeOpSetStyleLineNumber: {
nsIContent* node = *(mOne.node);
nsCOMPtr<nsIStyleSheetLinkingElement> ssle = do_QueryInterface(node);
NS_ASSERTION(ssle, "Node didn't QI to style.");
ssle->SetLineNumber(mInt);
return rv;
}
case eTreeOpSetScriptLineNumber: {
nsIContent* node = *(mOne.node);
nsCOMPtr<nsIScriptElement> sele = do_QueryInterface(node);
NS_ASSERTION(sele, "Node didn't QI to script.");
sele->SetScriptLineNumber(mInt);
return rv;
}
default: {
NS_NOTREACHED("Bogus tree op");
}