File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -355,13 +355,29 @@ var RequestGuard = (() => {
355355 return redirected ;
356356 }
357357
358- let normalizeRequest = UA . isMozilla ? ( ) => { } : request => {
358+ let normalizeRequest = request => {
359359 if ( "initiator" in request && ! ( "originUrl" in request ) ) {
360+ if ( request . frameId > 0 && request . initiator === "null" ) {
361+ // Chromium sandboxed frame?
362+ try {
363+ request . initiator = request . originUrl = request . documentUrl = TabCache . get ( request . tabId ) . url ;
364+ } catch ( e ) { }
365+ }
360366 request . originUrl = request . initiator ;
361367 if ( request . type !== "main_frame" && ! ( "documentUrl" in request ) ) {
362368 request . documentUrl = request . initiator ;
363369 }
364370 }
371+ if ( "frameAncestors" in request && ( ! request . originUrl || request . documentUrl ) && request . frameAncestors . length > 0 ) {
372+ // Gecko sandboxed frame?
373+ for ( let f of request . frameAncestors ) {
374+ if ( f . url !== "null" && ! f . url . startsWith ( "moz-nullprincipal:" ) ) {
375+ request . originUrl = request . documentUrl = f . url ;
376+ break ;
377+ }
378+ }
379+
380+ }
365381 } ;
366382
367383 function intersectCapabilities ( perms , request ) {
You can’t perform that action at this time.
0 commit comments