aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGlenn Watson <gw@intuitionlibrary.com>2014-07-07 15:43:47 +1000
committerGlenn Watson <gw@intuitionlibrary.com>2014-07-07 15:43:47 +1000
commit422bda73792fc1ac5ef589367b69841f2a02ced1 (patch)
tree89e6a25f3c6a28e2a28197a5f0fe45de4d399df6
parente62637fee2f1c9627468dde81a68df1dd40b6bc9 (diff)
downloadservo-422bda73792fc1ac5ef589367b69841f2a02ced1.tar.gz
servo-422bda73792fc1ac5ef589367b69841f2a02ced1.zip
Warning police.
-rw-r--r--src/components/embedding/mem.rs2
-rw-r--r--src/components/layout/layout_task.rs2
-rw-r--r--src/components/main/servo.rs6
-rw-r--r--src/components/net/image_cache_task.rs107
-rw-r--r--src/components/net/local_image_cache.rs20
-rw-r--r--src/components/script/html/cssparse.rs2
-rw-r--r--src/components/style/stylesheets.rs6
-rw-r--r--src/components/util/opts.rs2
-rw-r--r--src/components/util/smallvec.rs2
-rw-r--r--src/test/harness/contenttest/contenttest.rs2
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 {