mirror of
https://github.com/servo/servo.git
synced 2025-07-24 15:50:21 +01:00
Ignore the HTML parser's borrow flag in GC tracing
Adds some other dynamic checks in debug builds.
This commit is contained in:
parent
6ec0939a22
commit
49234484d6
5 changed files with 59 additions and 5 deletions
|
@ -25,6 +25,8 @@ use encoding::types::{Encoding, DecodeReplace};
|
|||
use servo_net::resource_task::{Load, LoadData, Payload, Done, ResourceTask, load_whole_resource};
|
||||
use servo_msg::constellation_msg::LoadData as MsgLoadData;
|
||||
use servo_util::task::spawn_named;
|
||||
use servo_util::task_state;
|
||||
use servo_util::task_state::InHTMLParser;
|
||||
use servo_util::str::DOMString;
|
||||
use std::ascii::StrAsciiExt;
|
||||
use std::comm::{channel, Sender, Receiver};
|
||||
|
@ -480,6 +482,8 @@ pub fn parse_html(page: &Page,
|
|||
let parser = ServoHTMLParser::new(js_chan.clone(), base_url.clone(), document).root();
|
||||
let parser: JSRef<ServoHTMLParser> = *parser;
|
||||
|
||||
task_state::enter(InHTMLParser);
|
||||
|
||||
match input {
|
||||
InputString(s) => {
|
||||
parser.tokenizer().borrow_mut().feed(s);
|
||||
|
@ -512,6 +516,8 @@ pub fn parse_html(page: &Page,
|
|||
|
||||
parser.tokenizer().borrow_mut().end();
|
||||
|
||||
task_state::exit(InHTMLParser);
|
||||
|
||||
debug!("finished parsing");
|
||||
js_chan.send(JSTaskExit);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue