Closed Bug 1670530 Opened 4 years ago Closed 3 years ago

Crash when navigating from about:* to view-source:http(s):* on debug build

Categories

(Core :: DOM: Navigation, defect, P3)

defect

Tracking

()

RESOLVED FIXED
85 Branch
Tracking Status
firefox85 --- fixed

People

(Reporter: daisuke, Assigned: nika)

References

Details

Crash Data

Attachments

(2 files, 1 obsolete file)

STRs:

  1. Open a debug build built by current m-c on OSX
    (I could confirm at changeset: 552614)
  2. Open about:config
  3. Navigate to view-source:http://example.com/

ER: Show the source of the page.
AR: Crash with following messages.

Assertion failure: !mPromise.IsEmpty(), at /builds/worker/checkouts/gecko/netwerk/protocol/http/HttpChannelParent.cpp:971
#01: nsXPTCStubBase::Stub249()[/Users/daisuke/Projects/Firefox/2nd/obj-x86_64-apple-darwin18.7.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x72e34d]
#02: nsXPTCStubBase::Stub249()[/Users/daisuke/Projects/Firefox/2nd/obj-x86_64-apple-darwin18.7.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x885fef]
#03: nsXPTCStubBase::Stub249()[/Users/daisuke/Projects/Firefox/2nd/obj-x86_64-apple-darwin18.7.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x8ab2b4]
[25283, MainThread] WARNING: XPCOM objects created/destroyed from static ctor/dtor: file /builds/worker/checkouts/gecko/xpcom/base/nsTraceRefcnt.cpp:202
[25283, MainThread] WARNING: XPCOM objects created/destroyed from static ctor/dtor: file /builds/worker/checkouts/gecko/xpcom/bas#04: nsXPTCStubBase::Stub249()[/Users/daisuke/Projects/Firefox/2nd/obj-x86_64-apple-darwin18.7.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x8a2a57]
e/nsTraceRefcnt.cpp:202
#05: NS_NewLocalFileWithCFURL[/Users/daisuke/Projects/Firefox/2nd/obj-x86_64-apple-darwin18.7.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x18b28d]
#06: NS_NewLocalFileWithCFURL[/Users/daisuke/Projects/Firefox/2nd/obj-x86_64-apple-darwin18.7.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x19b191]
#07: NS_NewLocalFileWithCFURL[/Users/daisuke/Projects/Firefox/2nd/obj-x86_64-apple-darwin18.7.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x199cbc]
#08: NS_NewLocalFileWithCFURL[/Users/daisuke/Projects/Firefox/2nd/obj-x86_64-apple-darwin18.7.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x196c36]
#09: mac_plugin_interposing_child_OnShowCursor[/Users/daisuke/Projects/Firefox/2nd/obj-x86_64-apple-darwin18.7.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x41c46d1]
#10: mac_plugin_interposing_child_OnShowCursor[/Users/daisuke/Projects/Firefox/2nd/obj-x86_64-apple-darwin18.7.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x424879a]
#11: __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__[/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation +0x57d13]
#12: __CFRunLoopDoSource0[/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation +0x57cb9]
#13: __CFRunLoopDoSources0[/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation +0x3b67f]
#14: __CFRunLoopRun[/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation +0x3ac49]
#15: CFRunLoopRunSpecific[/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation +0x3a552]
#16: RunCurrentEventLoopInMode[/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox +0xb1ab]
#17: ReceiveNextEventCommon[/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox +0xaee5]
#18: _BlockUntilNextEventMatchingListInModeWithFilter[/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox +0xac76]
Couldn't convert chrome URL: chrome://branding/locale/brand.properties
[Child 25283, Main Thread] WARNING: Could not get the program name for a cubeb stream.: 'NS_SUCCEEDED(rv)', file /builds/worker/checkouts/gecko/dom/media/CubebUtils.cpp:378
#19: _DPSNextEvent[/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit +0x1a77d]
#20: -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:][/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit +0x1946b]
#21: mac_plugin_interposing_child_OnShowCursor[/Users/daisuke/Projects/Firefox/2nd/obj-x86_64-apple-darwin18.7.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x4247cef]
#22: -[NSApplication run][/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit +0x13588]
#23: mac_plugin_interposing_child_OnShowCursor[/Users/daisuke/Projects/Firefox/2nd/obj-x86_64-apple-darwin18.7.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x4248fd4]
#24: workerlz4_maxCompressedSize[/Users/daisuke/Projects/Firefox/2nd/obj-x86_64-apple-darwin18.7.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x59afb57]
#25: catch_exception_raise[/Users/daisuke/Projects/Firefox/2nd/obj-x86_64-apple-darwin18.7.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x5ada1a5]
#26: catch_exception_raise[/Users/daisuke/Projects/Firefox/2nd/obj-x86_64-apple-darwin18.7.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x5adb446]
#27: catch_exception_raise[/Users/daisuke/Projects/Firefox/2nd/obj-x86_64-apple-darwin18.7.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x5adbd32]
#28: ???[/Users/daisuke/Projects/Firefox/2nd/obj-x86_64-apple-darwin18.7.0/dist/NightlyDebug.app/Contents/MacOS/firefox +0xfe6]
Crash Annotation GraphicsCriticalError: |[C0][GFX1-]: Receive IPC close with reason=AbnormalShutdown (t=19.2392) [GFX1-]: Receive IPC close with reason=AbnormalShutdown
Exiting due to channel error.
Crash Annotation GraphicsCriticalError: |[C0][GFX1-]: Receive IPC close with reason=AbnormalShutdown (t=19.8354) [Socket 25278, Main Thread] WARNING: Shutting down Socket process early due to a crash!: file /builds/worker/checkouts/gecko/netwerk/ipc/SocketProcessChild.cpp:158
Crash Annotation GraphicsCriticalError: |[C0][GFX1-]: Receive IPC close with reason=AbnormalShutdown (t=20.5507) Exiting due to channel error.

I found this issue while fixing bug 1577539. And the according to a try, it seems this crash can be reproduced at linux as well.
https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=318245342&repo=try&lineNumber=5653

The view-source uri also fails in non-debug builds. This seems to work fine from about:blank or about:newtab -> view-source. But fails to load from about:config or about:addons

Component: General → DOM: Navigation
Product: Firefox → Core
Assignee: nobody → nika

Previously these requests would replace the nsIRequest argument to stream
listeners based on the initial process, rather than based on the final process.
This caused issues when the initial process was non-remote, but the final
process was remote, as the parameter would be replaced when it shouldn't be.

This patch now disables request-argument replacement for all loads, and
selectively re-enables it during OnStartRequest for loads which will terminate
in the parent process.

Severity: -- → S2
Status: NEW → ASSIGNED
Priority: -- → P1
Pushed by nlayzell@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/af04d36c832d
Fix view-source loads redirecting from parent to content, r=mattwoodrow,necko-reviewers

Clearing the needinfo for now. After some more thought on this, I think we may want to take a slightly different solution for dealing with multipart and DocumentChannel.

Flags: needinfo?(nika)
Severity: S2 → S3
Priority: P1 → P3

Before switching to using DocumentChannel to process multipart requests,
multipart documents loaded as a view-source load would be displayed their
plain-text data, as the multipart processing would be after the view-source
channel had wrapped the channel, and replaced the content type with
"application/x-view-source".

This change restores that behaviour, by preventing parent process multipart
processing for wrapped channels like view-source loads. This also allowed
removing the replaceRequest option on nsViewSourceChannel, as it was no longer
necessary, and required introducing a mechanism to get the inner http channel
for process switching.

The crash in Bug 1670530 was caused by a bad interaction between the view-source
replaceChannel logic, and the parent/content process switching logic, which
could lead to the load in the content process being initialized in a broken
state after a process switch, due to accidentally acting on a wrapped
view-source channel when an unwrapped one was expected. This patch also fixes
that issue, by removing the replaceRequest logic which caused it in the first
place.

Attachment #9183841 - Attachment is obsolete: true
Crash Signature: [@ mozilla::net::DocumentLoadListener::OnStartRequest]
Pushed by nlayzell@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/a1e436deb5fe
Don't process multipart content when doing a view-source load, r=mattwoodrow,necko-reviewers,valentin

Backed out changeset a1e436deb5fe (bug 1670530) for viewsource related crashes.

Push with failure: https://treeherder.mozilla.org/jobs?repo=autoland&group_state=expanded&selectedTaskRun=LUrMITq9R9Oax7hwjiV-Aw.0&fromchange=82501abf6f2e777af0787c69261aa229f7e6e1af&searchStr=os%2Cx%2C10.14%2Cwebrender%2Copt%2Cmochitests%2Ctest-macosx1014-64-qr%2Fopt-mochitest-devtools-chrome-e10s%2Cdt4&tochange=2c61fdd0277b7ebb43c25258b92397308bbfdcca

Backout link: https://hg.mozilla.org/integration/autoland/rev/7b6a492bde9cf3d1726f4131c092c5eae58b8b68

Failure log: https://treeherder.mozilla.org/logviewer?job_id=323390637&repo=autoland&lineNumber=2447

[task 2020-12-03T02:02:30.764Z] 02:02:30     INFO - TEST-START | devtools/client/application/test/browser/browser_application_panel_viewsource-service-worker.js
[task 2020-12-03T02:02:32.094Z] 02:02:32     INFO - GECKO(1433) | [GFX1-]: Receive IPC close with reason=AbnormalShutdown
[task 2020-12-03T02:02:32.095Z] 02:02:32     INFO - GECKO(1433) | Exiting due to channel error.
[task 2020-12-03T02:02:32.095Z] 02:02:32     INFO - GECKO(1433) | Exiting due to channel error.
[task 2020-12-03T02:02:32.096Z] 02:02:32     INFO - GECKO(1433) | Exiting due to channel error.
[task 2020-12-03T02:02:32.103Z] 02:02:32     INFO - TEST-INFO | Main app process: exit 1
[task 2020-12-03T02:02:32.103Z] 02:02:32     INFO - Buffered messages logged at 02:02:30
[task 2020-12-03T02:02:32.104Z] 02:02:32     INFO - Entering test bound 
[task 2020-12-03T02:02:32.104Z] 02:02:32     INFO - Adding a new tab with URL: http://example.com/browser/devtools/client/application/test/browser/resources/service-workers/debug.html
[task 2020-12-03T02:02:32.104Z] 02:02:32     INFO - Buffered messages logged at 02:02:31
[task 2020-12-03T02:02:32.104Z] 02:02:32     INFO - Tab added and finished loading
[task 2020-12-03T02:02:32.104Z] 02:02:32     INFO - Selecting application page: service-workers
[task 2020-12-03T02:02:32.104Z] 02:02:32     INFO - Wait until the service worker appears in the application panel
[task 2020-12-03T02:02:32.104Z] 02:02:32     INFO - Wait until the inspect link is displayed
[task 2020-12-03T02:02:32.105Z] 02:02:32     INFO - Click on the inspect link and wait for a new view-source: tab open
[task 2020-12-03T02:02:32.105Z] 02:02:32     INFO - Buffered messages finished
[task 2020-12-03T02:02:32.105Z] 02:02:32    ERROR - TEST-UNEXPECTED-FAIL | devtools/client/application/test/browser/browser_application_panel_viewsource-service-worker.js | application terminated with exit code 1
[task 2020-12-03T02:02:32.105Z] 02:02:32     INFO - runtests.py | Application ran for: 0:00:34.166166
[task 2020-12-03T02:02:32.105Z] 02:02:32     INFO - zombiecheck | Reading PID log: /var/folders/1n/90df647d52l_j1z5qh6t207m000017/T/tmpmDKMCbpidlog
[task 2020-12-03T02:02:32.105Z] 02:02:32     INFO - ==> process 1433 launched child process 1434
...
[task 2020-12-03T02:02:32.111Z] 02:02:32     INFO - zombiecheck | Checking for orphan process with PID: 1462
[task 2020-12-03T02:02:32.111Z] 02:02:32     INFO - mozcrash Downloading symbols from: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/U1EfbACeTpeCliJcCNqi7Q/artifacts/public/build/target.crashreporter-symbols.zip
[task 2020-12-03T02:02:40.364Z] 02:02:40     INFO - mozcrash Copy/paste: /Users/cltbld/tasks/task_1606960283/fetches/minidump_stackwalk/minidump_stackwalk /var/folders/1n/90df647d52l_j1z5qh6t207m000017/T/tmpYTg7lS.mozrunner/minidumps/5961AC58-47F7-49E2-8A80-21E044B3913C.dmp /var/folders/1n/90df647d52l_j1z5qh6t207m000017/T/tmp4ZA0ZV
[task 2020-12-03T02:02:45.886Z] 02:02:45     INFO - mozcrash Saved minidump as /Users/cltbld/tasks/task_1606960283/build/blobber_upload_dir/5961AC58-47F7-49E2-8A80-21E044B3913C.dmp
[task 2020-12-03T02:02:45.886Z] 02:02:45     INFO - mozcrash Saved app info as /Users/cltbld/tasks/task_1606960283/build/blobber_upload_dir/5961AC58-47F7-49E2-8A80-21E044B3913C.extra
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO - PROCESS-CRASH | devtools/client/application/test/browser/browser_application_panel_viewsource-service-worker.js | application crashed [@ mozilla::net::DocumentLoadListener::MaybeTriggerProcessSwitch(bool*)]
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO - Mozilla crash reason: MOZ_DIAGNOSTIC_ASSERT(false) (NS_SUCCEEDED(httpChannel->GetCrossOriginOpenerPolicy(&coop)))
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO - Crash dump filename: /var/folders/1n/90df647d52l_j1z5qh6t207m000017/T/tmpYTg7lS.mozrunner/minidumps/5961AC58-47F7-49E2-8A80-21E044B3913C.dmp
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO - Operating system: Mac OS X
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO -                   10.14.5 18F132
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO - CPU: amd64
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO -      family 6 model 69 stepping 1
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO -      4 CPUs
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO - 
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO - GPU: UNKNOWN
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO - 
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO - Crash reason:  EXC_BAD_ACCESS / KERN_INVALID_ADDRESS
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO - Crash address: 0x0
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO - Process uptime: 34 seconds
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO - 
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO - Thread 0 (crashed)
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO -  0  XUL!mozilla::net::DocumentLoadListener::MaybeTriggerProcessSwitch(bool*) [DocumentLoadListener.cpp:a1e436deb5fe742506180253c8f2d513737dc162 : 1526 + 0x11]
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO -     rax = 0x00000001136925a5   rdx = 0x00007ffeeac43270
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO -     rcx = 0x000000010504b390   rbx = 0x000000012a84b9a0
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO -     rsi = 0x00007ffeeac432f8   rdi = 0x000000011aae3048
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO -     rbp = 0x00007ffeeac434d0   rsp = 0x00007ffeeac432a0
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO -      r8 = 0x0000000129c46160    r9 = 0x0000000000000008
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO -     r10 = 0x00000001079ac510   r11 = 0x000000000000001d
[task 2020-12-03T02:02:46.097Z] 02:02:46     INFO -     r12 = 0x00007ffeeac43503   r13 = 0x000000012bff8660
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     r14 = 0x0000000161ad0000   r15 = 0x0000000000000000
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     rip = 0x000000010cc0eec3
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     Found by: given as instruction pointer in context
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -  1  XUL!mozilla::net::DocumentLoadListener::OnStartRequest(nsIRequest*) [DocumentLoadListener.cpp:a1e436deb5fe742506180253c8f2d513737dc162 : 2140 + 0x8]
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     rbp = 0x00007ffeeac43590   rsp = 0x00007ffeeac434e0
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     rip = 0x000000010cc111ae
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     Found by: previous frame's frame pointer
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -  2  XUL!mozilla::net::ParentChannelListener::OnStartRequest(nsIRequest*) [ParentChannelListener.cpp:a1e436deb5fe742506180253c8f2d513737dc162 : 91 + 0xd]
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     rbp = 0x00007ffeeac435d0   rsp = 0x00007ffeeac435a0
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     rip = 0x000000010cb4e615
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     Found by: previous frame's frame pointer
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -  3  XUL!nsDocumentOpenInfo::OnStartRequest(nsIRequest*) [nsURILoader.cpp:a1e436deb5fe742506180253c8f2d513737dc162 : 166 + 0x9]
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     rbp = 0x00007ffeeac43620   rsp = 0x00007ffeeac435e0
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     rip = 0x000000010d196016
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     Found by: previous frame's frame pointer
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -  4  XUL!mozilla::net::ParentProcessDocumentOpenInfo::OnDocumentStartRequest(nsIRequest*) [DocumentLoadListener.cpp:a1e436deb5fe742506180253c8f2d513737dc162 : 272 + 0xb]
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     rbp = 0x00007ffeeac43680   rsp = 0x00007ffeeac43630
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     rip = 0x000000010cc1e0ef
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     Found by: previous frame's frame pointer
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -  5  XUL!mozilla::net::InterceptedHttpChannel::OnStartRequest(nsIRequest*) [InterceptedHttpChannel.cpp:a1e436deb5fe742506180253c8f2d513737dc162 : 1047 + 0xd]
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     rbp = 0x00007ffeeac436c0   rsp = 0x00007ffeeac43690
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     rip = 0x000000010cb49658
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     Found by: previous frame's frame pointer
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -  6  XUL!nsInputStreamPump::OnStateStart() [nsInputStreamPump.cpp:a1e436deb5fe742506180253c8f2d513737dc162 : 481 + 0xd]
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     rbp = 0x00007ffeeac43700   rsp = 0x00007ffeeac436d0
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     rip = 0x000000010c7e6203
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -     Found by: previous frame's frame pointer
[task 2020-12-03T02:02:46.098Z] 02:02:46     INFO -  7  XUL!nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream*) [nsInputStreamPump.cpp:a1e436deb5fe742506180253c8f2d513737dc162 : 390 + 0x8]
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO -     rbp = 0x00007ffeeac43750   rsp = 0x00007ffeeac43710
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO -     rip = 0x000000010c7e5fb0
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO -     Found by: previous frame's frame pointer
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO -  8  XUL!nsInputStreamReadyEvent::Run() [nsStreamUtils.cpp:a1e436deb5fe742506180253c8f2d513737dc162 : 94 + 0x6]
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO -     rbp = 0x00007ffeeac43770   rsp = 0x00007ffeeac43760
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO -     rip = 0x000000010c6cfbb1
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO -     Found by: previous frame's frame pointer
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO -  9  XUL!mozilla::RunnableTask::Run() [TaskController.cpp:a1e436deb5fe742506180253c8f2d513737dc162 : 452 + 0xa]
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO -     rbp = 0x00007ffeeac43be0   rsp = 0x00007ffeeac43780
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO -     rip = 0x000000010c6f19cf
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO -     Found by: previous frame's frame pointer
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO - 10  XUL!mozilla::TaskController::DoExecuteNextTaskOnlyMainThreadInternal(mozilla::detail::BaseAutoLock<mozilla::Mutex&> const&) [TaskController.cpp:a1e436deb5fe742506180253c8f2d513737dc162 : 722 + 0x9]
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO -     rbp = 0x00007ffeeac43c70   rsp = 0x00007ffeeac43bf0
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO -     rip = 0x000000010c6f06f9
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO -     Found by: previous frame's frame pointer
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO - 11  XUL!mozilla::TaskController::ExecuteNextTaskOnlyMainThreadInternal(mozilla::detail::BaseAutoLock<mozilla::Mutex&> const&) [TaskController.cpp:a1e436deb5fe742506180253c8f2d513737dc162 : 581 + 0x5]
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO -     rbp = 0x00007ffeeac43cb0   rsp = 0x00007ffeeac43c80
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO -     rip = 0x000000010c6ef986
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO -     Found by: previous frame's frame pointer
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO - 12  XUL!mozilla::detail::RunnableFunction<mozilla::TaskController::InitializeInternal()::$_4>::Run() [nsThreadUtils.h:a1e436deb5fe742506180253c8f2d513737dc162 : 485 + 0x1f]
[task 2020-12-03T02:02:46.099Z] 02:02:46     INFO -     rbp = 0x00007ffeeac43ce0   rsp = 0x00007ffeeac43cc0
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO -     rip = 0x000000010c6f37a6
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO -     Found by: previous frame's frame pointer
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO - 13  XUL!nsThread::ProcessNextEvent(bool, bool*) [nsThread.cpp:a1e436deb5fe742506180253c8f2d513737dc162 : 1196 + 0xd]
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO -     rbp = 0x00007ffeeac43dd0   rsp = 0x00007ffeeac43cf0
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO -     rip = 0x000000010c6fea1c
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO -     Found by: previous frame's frame pointer
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO - 14  XUL!NS_ProcessPendingEvents(nsIThread*, unsigned int) [nsThreadUtils.cpp:a1e436deb5fe742506180253c8f2d513737dc162 : 461 + 0xe]
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO -     rbp = 0x00007ffeeac43e20   rsp = 0x00007ffeeac43de0
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO -     rip = 0x000000010c6fcca2
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO -     Found by: previous frame's frame pointer
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO - 15  XUL!nsBaseAppShell::NativeEventCallback() [nsBaseAppShell.cpp:a1e436deb5fe742506180253c8f2d513737dc162 : 87 + 0x14]
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO -     rbp = 0x00007ffeeac43e50   rsp = 0x00007ffeeac43e30
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO -     rip = 0x000000010f151b71
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO -     Found by: previous frame's frame pointer
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO - 16  XUL!nsAppShell::ProcessGeckoEvents(void*) [nsAppShell.mm:a1e436deb5fe742506180253c8f2d513737dc162 : 429 + 0x8]
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO -     rbp = 0x00007ffeeac43ea0   rsp = 0x00007ffeeac43e60
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO -     rip = 0x000000010f1bd3b5
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO -     Found by: previous frame's frame pointer
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO - 17  CoreFoundation + 0x58083
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO -     rbp = 0x00007ffeeac43eb0   rsp = 0x00007ffeeac43eb0
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO -     rip = 0x00007fff43213083
[task 2020-12-03T02:02:46.100Z] 02:02:46     INFO -     Found by: previous frame's frame pointer
...
...
...
Flags: needinfo?(nika)
Attachment #9190334 - Attachment description: Bug 1670530 - Don't process multipart content when doing a view-source load, → Bug 1670530 - Part 1: Don't process multipart content when doing a view-source load,

Previously, the updates in OnStartRequest were not updating some of the
interface fields, including nsIHttpChannelInternal, which caused the wrong
channel object to be queried for Cross-Origin-Opener-Policy status during
process switches after a redirect, and crashes.

In the browser_application_panel_viewsource-service-worker.js test case, the
http channel was being intercepted by a service worker, but the non-intercepted
channel was being queried. As the non-intercepted channel had not observed
OnStartRequest, the query failed.

Flags: needinfo?(nika)
Pushed by nlayzell@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/51e88e67cb6e
Part 1: Don't process multipart content when doing a view-source load, r=mattwoodrow,necko-reviewers,valentin
https://hg.mozilla.org/integration/autoland/rev/a7127e3bc3db
Part 2: Consistently update supported interfaces in nsViewSourceChannel, r=necko-reviewers,valentin
Status: ASSIGNED → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 85 Branch
Blocks: 1673427
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: