diff --git a/src/components/main/constellation.rs b/src/components/main/constellation.rs index 761abfb6164..1ec2a56e554 100644 --- a/src/components/main/constellation.rs +++ b/src/components/main/constellation.rs @@ -274,7 +274,7 @@ impl Constellation { pending_frames: ~[], pending_sizes: HashMap::new(), profiler_chan: profiler_chan, - window_size: Size2D(500u, 500u), + window_size: Size2D(800u, 600u), opts: opts_clone, }; constellation.run(); diff --git a/src/components/main/servo.rc b/src/components/main/servo.rc index b92f29893fc..8b717f181f9 100755 --- a/src/components/main/servo.rc +++ b/src/components/main/servo.rc @@ -50,7 +50,7 @@ use servo_msg::constellation_msg::InitLoadUrlMsg; use gfx::opts; #[cfg(not(test))] -use servo_net::image_cache_task::ImageCacheTask; +use servo_net::image_cache_task::{ImageCacheTask, SyncImageCacheTask}; #[cfg(not(test))] use servo_net::resource_task::ResourceTask; #[cfg(not(test))] @@ -149,7 +149,14 @@ fn run(opts: Opts) { let opts = &opts_clone; // Create a Servo instance. let resource_task = ResourceTask(); - let image_cache_task = ImageCacheTask(resource_task.clone()); + // If we are emitting an output file, then we need to block on + // 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()) + } else { + ImageCacheTask(resource_task.clone()) + }; let constellation_chan = Constellation::start(compositor_chan, opts, resource_task, diff --git a/src/support/png/rust-png b/src/support/png/rust-png index 7a53b3042df..179900c871c 160000 --- a/src/support/png/rust-png +++ b/src/support/png/rust-png @@ -1 +1 @@ -Subproject commit 7a53b3042df5f483967b8bba283806d5f620954a +Subproject commit 179900c871c2416824438cfce7fda737e9cba034