diff options
author | ddh <dianehosfelt@gmail.com> | 2017-01-11 12:07:36 +0000 |
---|---|---|
committer | Anthony Ramine <n.oxyde@gmail.com> | 2017-03-31 16:32:21 +0200 |
commit | e527c9a991c00a3d01fcf262b9fee0b5c948436e (patch) | |
tree | 75a909ab4048eb74174454d65758efbb6c63934e /components/script/dom/document.rs | |
parent | f66cae3f96c1b9a835f2d33477593e083395f402 (diff) | |
download | servo-e527c9a991c00a3d01fcf262b9fee0b5c948436e.tar.gz servo-e527c9a991c00a3d01fcf262b9fee0b5c948436e.zip |
Update Hyper and OpenSSL
Diffstat (limited to 'components/script/dom/document.rs')
-rw-r--r-- | components/script/dom/document.rs | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/components/script/dom/document.rs b/components/script/dom/document.rs index 7a50fe5cf6c..fe1065104f4 100644 --- a/components/script/dom/document.rs +++ b/components/script/dom/document.rs @@ -2,6 +2,7 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +use cookie_rs; use core::nonzero::NonZero; use devtools_traits::ScriptToDevtoolsControlMsg; use document_loader::{DocumentLoader, LoadType}; @@ -3285,15 +3286,15 @@ impl DocumentMethods for Document { return Err(Error::Security); } - let header = Header::parse_header(&[cookie.into()]); - if let Ok(SetCookie(cookies)) = header { - let cookies = cookies.into_iter().map(Serde).collect(); + if let Ok(cookie_header) = SetCookie::parse_header(&vec![cookie.to_string().into_bytes()]) { + let cookies = cookie_header.0.into_iter().filter_map(|cookie| { + cookie_rs::Cookie::parse(cookie).ok().map(Serde) + }).collect(); let _ = self.window - .upcast::<GlobalScope>() - .resource_threads() - .send(SetCookiesForUrl(self.url(), cookies, NonHTTP)); + .upcast::<GlobalScope>() + .resource_threads() + .send(SetCookiesForUrl(self.url(), cookies, NonHTTP)); } - Ok(()) } |