Skip to content
Permalink
Browse files

Use the correct origin in fetch

  • Loading branch information
KiChjang committed Nov 15, 2017
1 parent 5227df2 commit d5e7137b52dcb5ad56f932f76b74d7774dfafb32
Showing with 5 additions and 3 deletions.
  1. +5 −3 components/net/http_loader.rs
@@ -671,8 +671,10 @@ pub fn http_redirect_fetch(request: &mut Request,
request.redirect_count += 1;

// Step 7
// FIXME: Correctly use request's origin
let same_origin = location_url.origin() == request.current_url().origin();
let same_origin = match request.origin {
Origin::Origin(ref origin) => *origin == location_url.origin(),
Origin::Client => panic!("Request origin should not be client for {}", request.current_url()),
};
let has_credentials = has_credentials(&location_url);

if request.mode == RequestMode::CorsMode && !same_origin && has_credentials {
@@ -691,7 +693,7 @@ pub fn http_redirect_fetch(request: &mut Request,
}

// Step 10
if cors_flag && !same_origin {
if cors_flag && location_url.origin() != request.current_url().origin() {
request.origin = Origin::Origin(ImmutableOrigin::new_opaque());
}

0 comments on commit d5e7137

Please sign in to comment.
You can’t perform that action at this time.