فهرست منبع

Fixed compiler errors

Keith Yeung 11 سال پیش
والد
کامیت
f056ebf98e
1فایلهای تغییر یافته به همراه4 افزوده شده و 4 حذف شده
  1. 4 4
      src/lib.rs

+ 4 - 4
src/lib.rs

@@ -569,17 +569,17 @@ impl Url {
 
 
     // Return the origin of this URL (https://url.spec.whatwg.org/#origin)
     // Return the origin of this URL (https://url.spec.whatwg.org/#origin)
     pub fn origin(&self) -> Origin {
     pub fn origin(&self) -> Origin {
-        match self.scheme {
+        match &*self.scheme {
             "blob" => {
             "blob" => {
-                let result = self.parse(self.scheme_data);
+                let result = Url::parse(self.non_relative_scheme_data().unwrap());
                 match result {
                 match result {
-                    Ok(url) => url.origin(),
+                    Ok(ref url) => url.origin(),
                     // FIXME: Generate a globally unique identifier
                     // FIXME: Generate a globally unique identifier
                     Err(_)  => Origin::UID(0)
                     Err(_)  => Origin::UID(0)
                 }
                 }
             },
             },
             "ftp" | "gopher" | "http" | "https" | "ws" | "wss" => {
             "ftp" | "gopher" | "http" | "https" | "ws" | "wss" => {
-                Origin::Tuple(self.scheme, self.host, self.port)
+                Origin::Tuple(self.scheme.clone(), self.host().unwrap().clone(), self.port().unwrap())
             },
             },
             // TODO: Figure out what to do if the scheme is a file
             // TODO: Figure out what to do if the scheme is a file
             "file" => Origin::UID(0),
             "file" => Origin::UID(0),