mirror of
https://github.com/servo/servo.git
synced 2025-08-06 14:10:11 +01:00
Don't lose information in Fetch API
Also update test expectations.
This commit is contained in:
parent
f838944332
commit
0f1eb13e33
23 changed files with 45 additions and 259 deletions
|
@ -270,17 +270,32 @@ impl Response {
|
|||
Some(ref url) => {
|
||||
let unsafe_metadata = init_metadata(response, url);
|
||||
|
||||
Ok(FetchMetadata::Filtered {
|
||||
filtered: match metadata {
|
||||
Some(m) => FilteredMetadata::Transparent(m),
|
||||
None => FilteredMetadata::Opaque,
|
||||
},
|
||||
unsafe_: unsafe_metadata,
|
||||
})
|
||||
match self.response_type {
|
||||
ResponseType::Basic => Ok(FetchMetadata::Filtered {
|
||||
filtered: FilteredMetadata::Basic(metadata.unwrap()),
|
||||
unsafe_: unsafe_metadata
|
||||
}),
|
||||
ResponseType::Cors => Ok(FetchMetadata::Filtered {
|
||||
filtered: FilteredMetadata::Cors(metadata.unwrap()),
|
||||
unsafe_: unsafe_metadata
|
||||
}),
|
||||
ResponseType::Default => unreachable!(),
|
||||
ResponseType::Error(ref network_err) =>
|
||||
Err(network_err.clone()),
|
||||
ResponseType::Opaque => Ok(FetchMetadata::Filtered {
|
||||
filtered: FilteredMetadata::Opaque,
|
||||
unsafe_: unsafe_metadata
|
||||
}),
|
||||
ResponseType::OpaqueRedirect => Ok(FetchMetadata::Filtered {
|
||||
filtered: FilteredMetadata::OpaqueRedirect,
|
||||
unsafe_: unsafe_metadata
|
||||
})
|
||||
}
|
||||
},
|
||||
None => Err(NetworkError::Internal("No url found in unsafe response".to_owned())),
|
||||
None => Err(NetworkError::Internal("No url found in unsafe response".to_owned()))
|
||||
}
|
||||
} else {
|
||||
assert_eq!(self.response_type, ResponseType::Default);
|
||||
Ok(FetchMetadata::Unfiltered(metadata.unwrap()))
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue