Decode UTF-8 code points across network packets

This commit is contained in:
Simon Sapin 2017-05-21 22:40:58 +02:00
parent 6706c81837
commit 4e4b5ab5c8
13 changed files with 92 additions and 64 deletions

View file

@ -44,13 +44,13 @@ impl Tokenizer {
if !input.is_empty() {
while let Some(chunk) = input.pop_front() {
self.inner.feed(chunk);
if let Some(script) = self.inner.sink().sink().script.take() {
if let Some(script) = self.inner.sink.sink.script.take() {
return Err(script);
}
}
} else {
self.inner.run();
if let Some(script) = self.inner.sink().sink().script.take() {
if let Some(script) = self.inner.sink.sink.script.take() {
return Err(script);
}
}
@ -62,7 +62,7 @@ impl Tokenizer {
}
pub fn url(&self) -> &ServoUrl {
&self.inner.sink().sink().base_url
&self.inner.sink.sink.base_url
}
}
@ -80,8 +80,8 @@ unsafe impl JSTraceable for XmlTokenizer<XmlTreeBuilder<JS<Node>, Sink>> {
}
}
let tree_builder = self.sink();
let tree_builder = &self.sink;
tree_builder.trace_handles(&tracer);
tree_builder.sink().trace(trc);
tree_builder.sink.trace(trc);
}
}