diff options
author | Glenn Watson <gw@intuitionlibrary.com> | 2014-07-07 15:43:47 +1000 |
---|---|---|
committer | Glenn Watson <gw@intuitionlibrary.com> | 2014-07-07 15:43:47 +1000 |
commit | 422bda73792fc1ac5ef589367b69841f2a02ced1 (patch) | |
tree | 89e6a25f3c6a28e2a28197a5f0fe45de4d399df6 | |
parent | e62637fee2f1c9627468dde81a68df1dd40b6bc9 (diff) | |
download | servo-422bda73792fc1ac5ef589367b69841f2a02ced1.tar.gz servo-422bda73792fc1ac5ef589367b69841f2a02ced1.zip |
Warning police.
-rw-r--r-- | src/components/embedding/mem.rs | 2 | ||||
-rw-r--r-- | src/components/layout/layout_task.rs | 2 | ||||
-rw-r--r-- | src/components/main/servo.rs | 6 | ||||
-rw-r--r-- | src/components/net/image_cache_task.rs | 107 | ||||
-rw-r--r-- | src/components/net/local_image_cache.rs | 20 | ||||
-rw-r--r-- | src/components/script/html/cssparse.rs | 2 | ||||
-rw-r--r-- | src/components/style/stylesheets.rs | 6 | ||||
-rw-r--r-- | src/components/util/opts.rs | 2 | ||||
-rw-r--r-- | src/components/util/smallvec.rs | 2 | ||||
-rw-r--r-- | src/test/harness/contenttest/contenttest.rs | 2 |
10 files changed, 78 insertions, 73 deletions
diff --git a/src/components/embedding/mem.rs b/src/components/embedding/mem.rs index 032d13783d5..7b3472aadd0 100644 --- a/src/components/embedding/mem.rs +++ b/src/components/embedding/mem.rs @@ -13,6 +13,7 @@ extern "C" { fn tc_deletearray(mem: *mut c_void); } +#[allow(experimental)] pub fn newarray0<T>(nmem: size_t) -> *mut T { let mem = newarray::<T>(nmem) as *mut T; unsafe { @@ -27,6 +28,7 @@ pub fn newarray<T>(nmem: size_t) -> *mut T { } } +#[allow(experimental)] pub fn new0<T>(nmem: size_t) -> *mut T { let mem = new(nmem * mem::size_of::<T>() as u64) as *mut T; unsafe { diff --git a/src/components/layout/layout_task.rs b/src/components/layout/layout_task.rs index f7fd408fd6e..df1ca581efc 100644 --- a/src/components/layout/layout_task.rs +++ b/src/components/layout/layout_task.rs @@ -312,7 +312,7 @@ impl LayoutTask { opts: &Opts, time_profiler_chan: TimeProfilerChan) -> LayoutTask { - let local_image_cache = Arc::new(Mutex::new(LocalImageCache(image_cache_task.clone()))); + let local_image_cache = Arc::new(Mutex::new(LocalImageCache::new(image_cache_task.clone()))); let screen_size = Size2D(Au(0), Au(0)); let parallel_traversal = if opts.layout_threads != 1 { Some(WorkQueue::new("LayoutWorker", opts.layout_threads, ptr::mut_null())) diff --git a/src/components/main/servo.rs b/src/components/main/servo.rs index 49f68a2bf1b..929bfea6491 100644 --- a/src/components/main/servo.rs +++ b/src/components/main/servo.rs @@ -31,7 +31,7 @@ use compositing::{CompositorChan, CompositorTask, Constellation}; use servo_msg::constellation_msg::{ConstellationChan, InitLoadUrlMsg}; #[cfg(not(test))] -use servo_net::image_cache_task::{ImageCacheTask, SyncImageCacheTask}; +use servo_net::image_cache_task::ImageCacheTask; #[cfg(not(test))] use servo_net::resource_task::ResourceTask; #[cfg(not(test))] @@ -111,9 +111,9 @@ pub fn run(opts: opts::Opts) { // image load or we risk emitting an output file missing the // image. let image_cache_task = if opts.output_file.is_some() { - SyncImageCacheTask(resource_task.clone()) + ImageCacheTask::new_sync(resource_task.clone()) } else { - ImageCacheTask(resource_task.clone()) + ImageCacheTask::new(resource_task.clone()) }; let constellation_chan = Constellation::start(compositor_chan, opts, diff --git a/src/components/net/image_cache_task.rs b/src/components/net/image_cache_task.rs index f4c067ada18..c6cba21ac64 100644 --- a/src/components/net/image_cache_task.rs +++ b/src/components/net/image_cache_task.rs @@ -80,52 +80,53 @@ impl<E, S: Encoder<E>> Encodable<S, E> for ImageCacheTask { type DecoderFactory = fn() -> proc(&[u8]) -> Option<Image>; -pub fn ImageCacheTask(resource_task: ResourceTask) -> ImageCacheTask { - let (chan, port) = channel(); - let chan_clone = chan.clone(); - - spawn(proc() { - let mut cache = ImageCache { - resource_task: resource_task.clone(), - port: port, - chan: chan_clone, - state_map: url_map(), - wait_map: url_map(), - need_exit: None - }; - cache.run(); - }); +impl ImageCacheTask { + pub fn new(resource_task: ResourceTask) -> ImageCacheTask { + let (chan, port) = channel(); + let chan_clone = chan.clone(); + + spawn(proc() { + let mut cache = ImageCache { + resource_task: resource_task.clone(), + port: port, + chan: chan_clone, + state_map: url_map(), + wait_map: url_map(), + need_exit: None + }; + cache.run(); + }); - ImageCacheTask { - chan: chan, + ImageCacheTask { + chan: chan, + } } -} -// FIXME: make this priv after visibility rules change -pub fn SyncImageCacheTask(resource_task: ResourceTask) -> ImageCacheTask { - let (chan, port) = channel(); + pub fn new_sync(resource_task: ResourceTask) -> ImageCacheTask { + let (chan, port) = channel(); - spawn(proc() { - let inner_cache = ImageCacheTask(resource_task.clone()); + spawn(proc() { + let inner_cache = ImageCacheTask::new(resource_task.clone()); - loop { - let msg: Msg = port.recv(); + loop { + let msg: Msg = port.recv(); - match msg { - GetImage(url, response) => { - inner_cache.send(WaitForImage(url, response)); - } - Exit(response) => { - inner_cache.send(Exit(response)); - break; + match msg { + GetImage(url, response) => { + inner_cache.send(WaitForImage(url, response)); + } + Exit(response) => { + inner_cache.send(Exit(response)); + break; + } + msg => inner_cache.send(msg) } - msg => inner_cache.send(msg) } - } - }); + }); - ImageCacheTask { - chan: chan, + ImageCacheTask { + chan: chan, + } } } @@ -581,7 +582,7 @@ mod tests { fn should_exit_on_request() { let mock_resource_task = mock_resource_task(box DoesNothing); - let image_cache_task = ImageCacheTask(mock_resource_task.clone()); + let image_cache_task = ImageCacheTask::new(mock_resource_task.clone()); let _url = parse_url("file", None); image_cache_task.exit(); @@ -593,7 +594,7 @@ mod tests { fn should_fail_if_unprefetched_image_is_requested() { let mock_resource_task = mock_resource_task(box DoesNothing); - let image_cache_task = ImageCacheTask(mock_resource_task.clone()); + let image_cache_task = ImageCacheTask::new(mock_resource_task.clone()); let url = parse_url("file", None); let (chan, port) = channel(); @@ -607,7 +608,7 @@ mod tests { let mock_resource_task = mock_resource_task(box JustSendOK { url_requested_chan: url_requested_chan}); - let image_cache_task = ImageCacheTask(mock_resource_task.clone()); + let image_cache_task = ImageCacheTask::new(mock_resource_task.clone()); let url = parse_url("file", None); image_cache_task.send(Prefetch(url)); @@ -622,7 +623,7 @@ mod tests { let mock_resource_task = mock_resource_task(box JustSendOK { url_requested_chan: url_requested_chan}); - let image_cache_task = ImageCacheTask(mock_resource_task.clone()); + let image_cache_task = ImageCacheTask::new(mock_resource_task.clone()); let url = parse_url("file", None); image_cache_task.send(Prefetch(url.clone())); @@ -642,7 +643,7 @@ mod tests { let mock_resource_task = mock_resource_task(box WaitSendTestImage{wait_port: wait_port}); - let image_cache_task = ImageCacheTask(mock_resource_task.clone()); + let image_cache_task = ImageCacheTask::new(mock_resource_task.clone()); let url = parse_url("file", None); image_cache_task.send(Prefetch(url.clone())); @@ -659,7 +660,7 @@ mod tests { fn should_return_decoded_image_data_if_data_has_arrived() { let mock_resource_task = mock_resource_task(box SendTestImage); - let image_cache_task = ImageCacheTask(mock_resource_task.clone()); + let image_cache_task = ImageCacheTask::new(mock_resource_task.clone()); let url = parse_url("file", None); let join_port = image_cache_task.wait_for_store(); @@ -685,7 +686,7 @@ mod tests { fn should_return_decoded_image_data_for_multiple_requests() { let mock_resource_task = mock_resource_task(box SendTestImage); - let image_cache_task = ImageCacheTask(mock_resource_task.clone()); + let image_cache_task = ImageCacheTask::new(mock_resource_task.clone()); let url = parse_url("file", None); let join_port = image_cache_task.wait_for_store(); @@ -732,7 +733,7 @@ mod tests { } }); - let image_cache_task = ImageCacheTask(mock_resource_task.clone()); + let image_cache_task = ImageCacheTask::new(mock_resource_task.clone()); let url = parse_url("file", None); image_cache_task.send(Prefetch(url.clone())); @@ -778,7 +779,7 @@ mod tests { } }); - let image_cache_task = ImageCacheTask(mock_resource_task.clone()); + let image_cache_task = ImageCacheTask::new(mock_resource_task.clone()); let url = parse_url("file", None); image_cache_task.send(Prefetch(url.clone())); @@ -807,7 +808,7 @@ mod tests { fn should_return_failed_if_image_bin_cannot_be_fetched() { let mock_resource_task = mock_resource_task(box SendTestImageErr); - let image_cache_task = ImageCacheTask(mock_resource_task.clone()); + let image_cache_task = ImageCacheTask::new(mock_resource_task.clone()); let url = parse_url("file", None); let join_port = image_cache_task.wait_for_store_prefetched(); @@ -833,7 +834,7 @@ mod tests { fn should_return_failed_for_multiple_get_image_requests_if_image_bin_cannot_be_fetched() { let mock_resource_task = mock_resource_task(box SendTestImageErr); - let image_cache_task = ImageCacheTask(mock_resource_task.clone()); + let image_cache_task = ImageCacheTask::new(mock_resource_task.clone()); let url = parse_url("file", None); let join_port = image_cache_task.wait_for_store_prefetched(); @@ -867,7 +868,7 @@ mod tests { fn should_return_failed_if_image_decode_fails() { let mock_resource_task = mock_resource_task(box SendBogusImage); - let image_cache_task = ImageCacheTask(mock_resource_task.clone()); + let image_cache_task = ImageCacheTask::new(mock_resource_task.clone()); let url = parse_url("file", None); let join_port = image_cache_task.wait_for_store(); @@ -895,7 +896,7 @@ mod tests { fn should_return_image_on_wait_if_image_is_already_loaded() { let mock_resource_task = mock_resource_task(box SendTestImage); - let image_cache_task = ImageCacheTask(mock_resource_task.clone()); + let image_cache_task = ImageCacheTask::new(mock_resource_task.clone()); let url = parse_url("file", None); let join_port = image_cache_task.wait_for_store(); @@ -923,7 +924,7 @@ mod tests { let mock_resource_task = mock_resource_task(box WaitSendTestImage {wait_port: wait_port}); - let image_cache_task = ImageCacheTask(mock_resource_task.clone()); + let image_cache_task = ImageCacheTask::new(mock_resource_task.clone()); let url = parse_url("file", None); image_cache_task.send(Prefetch(url.clone())); @@ -949,7 +950,7 @@ mod tests { let mock_resource_task = mock_resource_task(box WaitSendTestImageErr{wait_port: wait_port}); - let image_cache_task = ImageCacheTask(mock_resource_task.clone()); + let image_cache_task = ImageCacheTask::new(mock_resource_task.clone()); let url = parse_url("file", None); image_cache_task.send(Prefetch(url.clone())); @@ -973,7 +974,7 @@ mod tests { fn sync_cache_should_wait_for_images() { let mock_resource_task = mock_resource_task(box SendTestImage); - let image_cache_task = SyncImageCacheTask(mock_resource_task.clone()); + let image_cache_task = ImageCacheTask::new_sync(mock_resource_task.clone()); let url = parse_url("file", None); image_cache_task.send(Prefetch(url.clone())); diff --git a/src/components/net/local_image_cache.rs b/src/components/net/local_image_cache.rs index 546a3d1dc6c..7f35ebd2683 100644 --- a/src/components/net/local_image_cache.rs +++ b/src/components/net/local_image_cache.rs @@ -20,15 +20,6 @@ pub trait ImageResponder { fn respond(&self) -> proc(ImageResponseMsg):Send; } -pub fn LocalImageCache(image_cache_task: ImageCacheTask) -> LocalImageCache { - LocalImageCache { - image_cache_task: image_cache_task, - round_number: 1, - on_image_available: None, - state_map: url_map() - } -} - pub struct LocalImageCache { image_cache_task: ImageCacheTask, round_number: uint, @@ -36,6 +27,17 @@ pub struct LocalImageCache { state_map: UrlMap<ImageState> } +impl LocalImageCache { + pub fn new(image_cache_task: ImageCacheTask) -> LocalImageCache { + LocalImageCache { + image_cache_task: image_cache_task, + round_number: 1, + on_image_available: None, + state_map: url_map() + } + } +} + #[deriving(Clone)] struct ImageState { prefetched: bool, diff --git a/src/components/script/html/cssparse.rs b/src/components/script/html/cssparse.rs index cb54e9dd198..2f96822770e 100644 --- a/src/components/script/html/cssparse.rs +++ b/src/components/script/html/cssparse.rs @@ -43,7 +43,7 @@ fn parse_css(provenance: StylesheetProvenance) -> Stylesheet { } InlineProvenance(base_url, data) => { debug!("cssparse: loading inline stylesheet {:s}", data); - Stylesheet::from_str(data.as_slice(), base_url, environment_encoding) + Stylesheet::from_str(data.as_slice(), base_url) } } } diff --git a/src/components/style/stylesheets.rs b/src/components/style/stylesheets.rs index 801fa70d095..8992477de00 100644 --- a/src/components/style/stylesheets.rs +++ b/src/components/style/stylesheets.rs @@ -53,12 +53,12 @@ impl Stylesheet { bytes: &[u8], base_url: Url, protocol_encoding_label: Option<&str>, environment_encoding: Option<EncodingRef>) -> Stylesheet { // TODO: bytes.as_slice could be bytes.container_as_bytes() - let (string, used_encoding) = decode_stylesheet_bytes( + let (string, _) = decode_stylesheet_bytes( bytes.as_slice(), protocol_encoding_label, environment_encoding); - Stylesheet::from_str(string.as_slice(), base_url, used_encoding) + Stylesheet::from_str(string.as_slice(), base_url) } - pub fn from_str(css: &str, base_url: Url, encoding: EncodingRef) -> Stylesheet { + pub fn from_str(css: &str, base_url: Url) -> Stylesheet { static STATE_CHARSET: uint = 1; static STATE_IMPORTS: uint = 2; static STATE_NAMESPACES: uint = 3; diff --git a/src/components/util/opts.rs b/src/components/util/opts.rs index 4691c68c1c5..0fa3a79ed7c 100644 --- a/src/components/util/opts.rs +++ b/src/components/util/opts.rs @@ -101,7 +101,7 @@ pub fn from_cmdline_args(args: &[String]) -> Option<Opts> { let opt_match = match getopts::getopts(args, opts.as_slice()) { Ok(m) => m, Err(f) => { - args_fail(f.to_err_msg().as_slice()); + args_fail(format!("{}", f).as_slice()); return None; } }; diff --git a/src/components/util/smallvec.rs b/src/components/util/smallvec.rs index 904dfaa41a3..8a3c96aa903 100644 --- a/src/components/util/smallvec.rs +++ b/src/components/util/smallvec.rs @@ -128,7 +128,7 @@ pub trait SmallVec<T> : SmallVecPrivate<T> { } unsafe { let end: &mut T = mem::transmute(self.end()); - mem::overwrite(end, value); + ptr::write(end, value); let len = self.len(); self.set_len(len + 1) } diff --git a/src/test/harness/contenttest/contenttest.rs b/src/test/harness/contenttest/contenttest.rs index 037c751c578..d35a0c9dd2d 100644 --- a/src/test/harness/contenttest/contenttest.rs +++ b/src/test/harness/contenttest/contenttest.rs @@ -43,7 +43,7 @@ fn parse_config(args: Vec<String>) -> Config { let opts = vec!(reqopt("s", "source-dir", "source-dir", "source-dir")); let matches = match getopts(args, opts.as_slice()) { Ok(m) => m, - Err(f) => fail!(f.to_err_msg()) + Err(f) => fail!(format!("{}", f)) }; Config { |