Load bare images within an HTML document (#3108)

This commit is contained in:
Manish Goregaokar 2014-08-21 21:17:14 +05:30
parent 2ce5b46bba
commit 22ed3d620d

View file

@ -526,19 +526,24 @@ pub fn parse_html(page: &Page,
};
parser.set_tree_handler(&mut tree_handler);
debug!("set tree handler");
debug!("loaded page");
loop {
match load_response.progress_port.recv() {
Payload(data) => {
debug!("received data");
parser.parse_chunk(data.as_slice());
}
Done(Err(err)) => {
fail!("Failed to load page URL {:s}, error: {:s}", url.serialize(), err);
}
Done(..) => {
break;
match load_response.metadata.content_type {
Some((ref t, _)) if t.as_slice().eq_ignore_ascii_case("image") => {
let page = format!("<html><body><img src='{:s}' /></body></html>", base_url.serialize());
parser.parse_chunk(page.into_bytes().as_slice());
},
_ => loop {
match load_response.progress_port.recv() {
Payload(data) => {
debug!("received data");
parser.parse_chunk(data.as_slice());
}
Done(Err(err)) => {
fail!("Failed to load page URL {:s}, error: {:s}", url.serialize(), err);
}
Done(..) => {
break;
}
}
}
}