new contentsink api's for kipp
git-svn-id: svn://10.0.0.236/trunk@1243 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
@@ -516,15 +516,19 @@ PRBool nsHTMLParser::Parse(nsIURL* aURL,eParseMode aMode){
|
||||
mDTD->SetParser(this);
|
||||
mTokenizer=new CTokenizer(aURL, theDelegate, mParseMode);
|
||||
|
||||
mSink->WillBuildModel();
|
||||
#ifdef __INCREMENTAL
|
||||
int iter=-1;
|
||||
for(;;){
|
||||
mSink->WillResume();
|
||||
mTokenizer->TokenizeAvailable(++iter);
|
||||
mSink->WillInterrupt();
|
||||
}
|
||||
#else
|
||||
mTokenizer->Tokenize();
|
||||
#endif
|
||||
result=IterateTokens();
|
||||
mSink->DidBuildModel();
|
||||
}
|
||||
return result;
|
||||
}
|
||||
@@ -541,6 +545,11 @@ PRBool nsHTMLParser::Parse(nsIURL* aURL,eParseMode aMode){
|
||||
* @return PR_TRUE if parsing concluded successfully.
|
||||
*/
|
||||
PRBool nsHTMLParser::ResumeParse() {
|
||||
mSink->WillResume();
|
||||
int iter=0;
|
||||
PRInt32 errcode=mTokenizer->TokenizeAvailable(iter);
|
||||
if(kInterrupted==errcode)
|
||||
mSink->WillInterrupt();
|
||||
PRBool result=IterateTokens();
|
||||
return result;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user