aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/htmlscriptelement.rs
diff options
context:
space:
mode:
authorJosh Matthews <josh@joshmatthews.net>2015-05-21 09:53:19 -0400
committerJosh Matthews <josh@joshmatthews.net>2015-05-21 09:53:19 -0400
commitef8a1271561b9ee7ea4be8ac2e0548d3c8669fb2 (patch)
tree498c33429b6df00300ef526d7271f95d60e59f23 /components/script/dom/htmlscriptelement.rs
parent8082df7d0da97f1951ae125956b962b92c98e69f (diff)
downloadservo-ef8a1271561b9ee7ea4be8ac2e0548d3c8669fb2.tar.gz
servo-ef8a1271561b9ee7ea4be8ac2e0548d3c8669fb2.zip
Update test expectations. Mark script loads as complete when the response is complete.
Diffstat (limited to 'components/script/dom/htmlscriptelement.rs')
-rw-r--r--components/script/dom/htmlscriptelement.rs10
1 files changed, 8 insertions, 2 deletions
diff --git a/components/script/dom/htmlscriptelement.rs b/components/script/dom/htmlscriptelement.rs
index 365d1a75e85..2011a31bf66 100644
--- a/components/script/dom/htmlscriptelement.rs
+++ b/components/script/dom/htmlscriptelement.rs
@@ -167,6 +167,8 @@ struct ScriptContext {
metadata: RefCell<Option<Metadata>>,
/// Whether the owning document's parser should resume once the response completes.
resume_on_completion: bool,
+ /// The initial URL requested.
+ url: Url,
}
impl AsyncResponseListener for ScriptContext {
@@ -175,7 +177,8 @@ impl AsyncResponseListener for ScriptContext {
}
fn data_available(&self, payload: Vec<u8>) {
- self.data.borrow_mut().extend(payload.into_iter());
+ let mut payload = payload;
+ self.data.borrow_mut().append(&mut payload);
}
fn response_complete(&self, status: Result<(), String>) {
@@ -188,8 +191,10 @@ impl AsyncResponseListener for ScriptContext {
elem.r().execute(ScriptOrigin::External(load));
+ let document = document_from_node(elem.r()).root();
+ document.r().finish_load(LoadType::Script(self.url.clone()));
+
if self.resume_on_completion {
- let document = document_from_node(elem.r()).root();
document.r().get_current_parser().unwrap().root().r().resume();
}
}
@@ -316,6 +321,7 @@ impl<'a> HTMLScriptElementHelpers for JSRef<'a, HTMLScriptElement> {
data: RefCell::new(vec!()),
metadata: RefCell::new(None),
resume_on_completion: self.parser_inserted.get(),
+ url: url.clone(),
}));
let listener = box NetworkListener {