mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
Auto merge of #12195 - izgzhen:fix-url-blob, r=Manishearth
Fix Blob URL origin when scheme is file <!-- Please describe your changes on the following line: --> r? @Manishearth --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: --> - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors <!-- Either: --> - [x] These changes do not require tests because it needs future integration <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12195) <!-- Reviewable:end -->
This commit is contained in:
commit
b832f2b79f
1 changed files with 14 additions and 1 deletions
|
@ -117,7 +117,7 @@ impl URL {
|
|||
pub fn CreateObjectURL(global: GlobalRef, blob: &Blob) -> DOMString {
|
||||
/// XXX: Second field is an unicode-serialized Origin, it is a temporary workaround
|
||||
/// and should not be trusted. See issue https://github.com/servo/servo/issues/11722
|
||||
let origin = global.get_url().origin().unicode_serialization();
|
||||
let origin = URL::get_blob_origin(&global.get_url());
|
||||
|
||||
if blob.IsClosed() {
|
||||
// Generate a dummy id
|
||||
|
@ -196,6 +196,19 @@ impl URL {
|
|||
|
||||
result
|
||||
}
|
||||
|
||||
// XXX: change String to FileOrigin
|
||||
/* NOTE(izgzhen): WebKit will return things like blob:file:///XXX
|
||||
while Chrome will return blob:null/XXX
|
||||
This is not well-specified, and I prefer the WebKit way here
|
||||
*/
|
||||
fn get_blob_origin(url: &Url) -> String {
|
||||
if url.scheme() == "file" {
|
||||
"file://".to_string()
|
||||
} else {
|
||||
url.origin().unicode_serialization()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl URLMethods for URL {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue