aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/parse
diff options
context:
space:
mode:
authorbors-servo <metajack+bors@gmail.com>2014-10-24 18:09:27 -0600
committerbors-servo <metajack+bors@gmail.com>2014-10-24 18:09:27 -0600
commit0c12f630e6352fc2aa00b638d014b2505f68af1f (patch)
tree763a529029964b132f4f70e7d3b60838ec257fc3 /components/script/parse
parent06f322a7dba52ab73a91dd5e9030723055d2ca63 (diff)
parentf508a82582843cb0fdacdcd88be2f73d59529203 (diff)
downloadservo-0c12f630e6352fc2aa00b638d014b2505f68af1f.tar.gz
servo-0c12f630e6352fc2aa00b638d014b2505f68af1f.zip
auto merge of #3797 : kmcallister/servo/domrefcell, r=jdm
r? @mbrubeck, @jdm Alternative to #3770 and #3716.
Diffstat (limited to 'components/script/parse')
-rw-r--r--components/script/parse/html.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/components/script/parse/html.rs b/components/script/parse/html.rs
index 933202e81f6..8eca823236a 100644
--- a/components/script/parse/html.rs
+++ b/components/script/parse/html.rs
@@ -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);