diff --git a/components/servo/lib.rs b/components/servo/lib.rs index 051e6190922..97f4021898a 100644 --- a/components/servo/lib.rs +++ b/components/servo/lib.rs @@ -114,23 +114,20 @@ impl Browser { // Send the URL command to the constellation. let cwd = env::current_dir().unwrap(); - for url in opts.urls.iter() { - let url = match url::Url::parse(&*url) { - Ok(url) => url, - Err(url::ParseError::RelativeUrlWithoutBase) - => url::Url::from_file_path(&*cwd.join(&*url)).unwrap(), - Err(_) => panic!("URL parsing failed"), - }; + let url = match url::Url::parse(&opts.url) { + Ok(url) => url, + Err(url::ParseError::RelativeUrlWithoutBase) + => url::Url::from_file_path(&*cwd.join(&opts.url)).unwrap(), + Err(_) => panic!("URL parsing failed"), + }; - let ConstellationChan(ref chan) = constellation_chan; - chan.send(ConstellationMsg::InitLoadUrl(url)).unwrap(); - } + let ConstellationChan(ref chan) = constellation_chan; + chan.send(ConstellationMsg::InitLoadUrl(url)).unwrap(); - debug!("preparing to enter main loop"); let compositor = CompositorTask::create(window, compositor_proxy, compositor_receiver, - constellation_chan, + constellation_chan.clone(), time_profiler_chan, mem_profiler_chan); @@ -159,4 +156,3 @@ impl Browser { self.compositor.shutdown(); } } - diff --git a/components/util/opts.rs b/components/util/opts.rs index f445359407e..c6479a35a0e 100644 --- a/components/util/opts.rs +++ b/components/util/opts.rs @@ -22,8 +22,8 @@ use std::rt; /// Global flags for Servo, currently set on the command line. #[derive(Clone)] pub struct Opts { - /// The initial URLs to load. - pub urls: Vec, + /// The initial URL to load. + pub url: String, /// How many threads to use for CPU painting (`-t`). /// @@ -176,7 +176,7 @@ static FORCE_CPU_PAINTING: bool = false; pub fn default_opts() -> Opts { Opts { - urls: vec!(), + url: String::new(), paint_threads: 1, gpu_painting: false, tile_size: 512, @@ -266,12 +266,12 @@ pub fn from_cmdline_args(args: &[String]) -> bool { return false; } - let urls = if opt_match.free.is_empty() { + let url = if opt_match.free.is_empty() { print_usage(app_name.as_slice(), opts.as_slice()); - args_fail("servo asks that you provide 1 or more URLs"); + args_fail("servo asks that you provide a URL"); return false; } else { - opt_match.free.clone() + opt_match.free[0].clone() }; let tile_size: usize = match opt_match.opt_str("s") { @@ -329,7 +329,7 @@ pub fn from_cmdline_args(args: &[String]) -> bool { }; let opts = Opts { - urls: urls, + url: url, paint_threads: paint_threads, gpu_painting: gpu_painting, tile_size: tile_size, diff --git a/ports/cef/browser.rs b/ports/cef/browser.rs index 7121c89e637..a654cce9e73 100644 --- a/ports/cef/browser.rs +++ b/ports/cef/browser.rs @@ -204,10 +204,9 @@ fn browser_host_create(window_info: &cef_window_info_t, client: CefClient, callback_executed: bool) -> CefBrowser { - let mut urls = Vec::new(); - urls.push("http://s27.postimg.org/vqbtrolyr/servo.jpg".to_owned()); + let url = "http://s27.postimg.org/vqbtrolyr/servo.jpg".to_owned(); let mut opts = opts::default_opts(); - opts.urls = urls; + opts.url = url; let browser = ServoCefBrowser::new(window_info, client).as_cef_interface(); browser.init(window_info); if callback_executed { @@ -246,4 +245,3 @@ cef_static_method_impls! { browser_host_create(window_info, client, true) }} } - diff --git a/ports/cef/core.rs b/ports/cef/core.rs index 25563526a8c..9a6b320c638 100644 --- a/ports/cef/core.rs +++ b/ports/cef/core.rs @@ -70,7 +70,7 @@ pub extern "C" fn cef_initialize(args: *const cef_main_args_t, }; let mut temp_opts = opts::default_opts(); - temp_opts.urls = vec![HOME_URL.to_owned()]; + temp_opts.url = HOME_URL.to_owned(); temp_opts.paint_threads = rendering_threads; temp_opts.layout_threads = rendering_threads; temp_opts.headless = false; @@ -137,4 +137,3 @@ pub extern "C" fn cef_log(_file: *const c_char, pub extern "C" fn cef_get_min_log_level() -> c_int { 0 } - diff --git a/ports/gonk/src/lib.rs b/ports/gonk/src/lib.rs index 0cf0694a8c8..3c258a991b7 100644 --- a/ports/gonk/src/lib.rs +++ b/ports/gonk/src/lib.rs @@ -113,23 +113,20 @@ impl Browser { // Send the URL command to the constellation. let cwd = env::current_dir().unwrap(); - for url in opts.urls.iter() { - let url = match url::Url::parse(&*url) { - Ok(url) => url, - Err(url::ParseError::RelativeUrlWithoutBase) - => url::Url::from_file_path(&*cwd.join(&*url)).unwrap(), - Err(_) => panic!("URL parsing failed"), - }; + let url = match url::Url::parse(&opts.url) { + Ok(url) => url, + Err(url::ParseError::RelativeUrlWithoutBase) + => url::Url::from_file_path(&*cwd.join(&opts.url)).unwrap(), + Err(_) => panic!("URL parsing failed"), + }; - let ConstellationChan(ref chan) = constellation_chan; - chan.send(ConstellationMsg::InitLoadUrl(url)).unwrap(); - } + let ConstellationChan(ref chan) = constellation_chan; + chan.send(ConstellationMsg::InitLoadUrl(url)).unwrap(); - debug!("preparing to enter main loop"); let compositor = CompositorTask::create(window, compositor_proxy, compositor_receiver, - constellation_chan, + constellation_chan.clone(), time_profiler_chan, mem_profiler_chan);