Closed Bug 1264655 Opened 9 years ago Closed 8 years ago

Assertion while focusing keyboard in text field on webpage: MOZ_Assert: Assertion failure: NS_LoadGroupMatchesPrincipal(loadInfo.mLoadGroup, loadInfo.mPrincipal)

Categories

(Firefox OS Graveyard :: General, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: gerard-majax, Unassigned)

References

Details

(Whiteboard: fixed-in-pine)

Attachments

(2 files)

Reproduced with current pine/kanikani, on a B2G_DEBUG=1 build for Z3c. STR: 0. load google.com 1. focus in text field We see keyboard appearching then replaced by black area and a notification of a crash. Logcat shows: 04-14 15:15:23.149 5719 5719 F MOZ_Assert: Assertion failure: NS_LoadGroupMatchesPrincipal(loadInfo.mLoadGroup, loadInfo.mPrincipal), at /home/alex/codaz/Mozilla/gecko-cinnabar/dom/workers/WorkerPrivate.cpp:4367 04-14 15:15:23.389 2822 2822 I Gecko : 04-14 15:15:23.389 2822 2822 I Gecko : ###!!! [Parent][MessageChannel] Error: (msgtype=0x2C0074,name=PBrowser::Msg_Destroy) Channel error: cannot send/recv 04-14 15:15:23.389 2822 2822 I Gecko : 04-14 15:15:23.399 2822 2843 I Gecko : [Parent 2822] WARNING: pipe error (235): Connection reset by peer: file /home/alex/codaz/Mozilla/gecko-cinnabar/ipc/chromium/src/chrome/common/ipc_channel_posix.cc, line 313 04-14 15:15:23.399 2822 2843 I Gecko : [Parent 2822] WARNING: pipe error (130): Connection reset by peer: file /home/alex/codaz/Mozilla/gecko-cinnabar/ipc/chromium/src/chrome/common/ipc_channel_posix.cc, line 313 04-14 15:15:23.429 2822 2843 I Gecko : [Parent 2822] WARNING: Unable to printf the requested string due to error.: file /home/alex/codaz/Mozilla/gecko-cinnabar/ipc/chromium/src/base/string_util.cc, line 427 04-14 15:15:23.439 2822 2822 I Gecko : [Parent 2822] WARNING: Unable to printf the requested string due to error.: file /home/alex/codaz/Mozilla/gecko-cinnabar/ipc/chromium/src/base/string_util.cc, line 427 04-14 15:15:23.439 2822 2822 I Gecko : [Parent 2822] WARNING: Unable to printf the requested string due to error.: file /home/alex/codaz/Mozilla/gecko-cinnabar/ipc/chromium/src/base/string_util.cc, line 427 04-14 15:15:23.439 2822 2822 I Gecko : [Parent 2822] WARNING: Unable to printf the requested string due to error.: file /home/alex/codaz/Mozilla/gecko-cinnabar/ipc/chromium/src/base/string_util.cc, line 427 04-14 15:15:23.449 2822 2822 I Gecko : [Parent 2822] WARNING: Unable to printf the requested string due to error.: file /home/alex/codaz/Mozilla/gecko-cinnabar/ipc/chromium/src/base/string_util.cc, line 427 04-14 15:15:23.489 2822 2822 I Gecko : [Parent 2822] WARNING: NS_ENSURE_TRUE(mOwnerContent) failed: file /home/alex/codaz/Mozilla/gecko-cinnabar/dom/base/nsFrameLoader.cpp, line 2690 04-14 15:15:23.509 2822 2822 I GeckoDump: Crash reporter : Submitting crash: 542ea7d0-2e40-1ea2-15d588b8-4cbb4bd9 bp-542ea7d0-2e40-1ea2-15d588b8-4cbb4bd9
This also gets reproduced on Mulet (debug build) when enabling OOP.
This assert is hit at: https://hg.mozilla.org/projects/pine/file/58921658aef9/dom/workers/WorkerPrivate.cpp#l4366 because the condition at https://hg.mozilla.org/projects/pine/file/58921658aef9/netwerk/base/nsNetUtil.cpp#l586 is false. The false comes from: contextInIsolatedBrowser=1 while we have principalInIsolatedBrowser=0
This means mOriginAttributes.mInIsolatedMozBrowser in caps/BasePrincipal.h is false. Does it makes sense ?
Flags: needinfo?(fbraun)
Hmm, I don't know this code at all :-/ It does look weird, but I'm afraid I don't really understand what's going on. Maybe ckerschb can help out?
Flags: needinfo?(fbraun) → needinfo?(ckerschb)
My understanding is that when checking the appId and browserElement, the browser flag doesn't match what's expected because it's not an app/process supposed to be in the browser. Since it's appearing when you focus on the keyboard, couldn't it mean that the keyboard is set to be "not" in the browser (which could sound legit)? I don't know if that should be the case or not, I will look more thoroughly in the code.
(In reply to Stephanie Ouillon [:arroway] from comment #5) > My understanding is that when checking the appId and browserElement, the > browser flag doesn't match what's expected because it's not an app/process > supposed to be in the browser. Since it's appearing when you focus on the > keyboard, couldn't it mean that the keyboard is set to be "not" in the > browser (which could sound legit)? I don't know if that should be the case > or not, I will look more thoroughly in the code. I cannot tell if that helps, but at least we have Keyboard running within its own process. And here is the logcat startup on device with debug build: 04-15 08:23:39.749 1241 1241 I Gecko : [1241] WARNING: XPCOM objects created/destroyed from static ctor/dtor: file /home/alex/codaz/Mozilla/gecko-cinnabar/xpcom/base/nsTraceRefcnt.cpp, line 174 04-15 08:23:39.749 1241 1241 I Gecko : [1241] WARNING: XPCOM objects created/destroyed from static ctor/dtor: file /home/alex/codaz/Mozilla/gecko-cinnabar/xpcom/base/nsTraceRefcnt.cpp, line 174 04-15 08:23:39.749 1241 1241 I Gecko : [1241] WARNING: XPCOM objects created/destroyed from static ctor/dtor: file /home/alex/codaz/Mozilla/gecko-cinnabar/xpcom/base/nsTraceRefcnt.cpp, line 174 04-15 08:23:39.749 1241 1241 I Gecko : [1241] WARNING: XPCOM objects created/destroyed from static ctor/dtor: file /home/alex/codaz/Mozilla/gecko-cinnabar/xpcom/base/nsTraceRefcnt.cpp, line 174 04-15 08:23:39.749 1241 1241 I Gecko : [1241] WARNING: XPCOM objects created/destroyed from static ctor/dtor: file /home/alex/codaz/Mozilla/gecko-cinnabar/xpcom/base/nsTraceRefcnt.cpp, line 174 04-15 08:23:39.749 1241 1241 I Gecko : [1241] WARNING: XPCOM objects created/destroyed from static ctor/dtor: file /home/alex/codaz/Mozilla/gecko-cinnabar/xpcom/base/nsTraceRefcnt.cpp, line 174 04-15 08:23:39.749 1241 1241 I Gecko : [1241] WARNING: XPCOM objects created/destroyed from static ctor/dtor: file /home/alex/codaz/Mozilla/gecko-cinnabar/xpcom/base/nsTraceRefcnt.cpp, line 174 04-15 08:23:39.749 1241 1241 I Gecko : [1241] WARNING: XPCOM objects created/destroyed from static ctor/dtor: file /home/alex/codaz/Mozilla/gecko-cinnabar/xpcom/base/nsTraceRefcnt.cpp, line 174 04-15 08:23:39.799 1241 1241 I Gecko : [Child 1241] WARNING: No CID found when attempting to map contract ID: file ../../../../../../../gecko-cinnabar/xpcom/components/nsComponentManager.cpp, line 578 04-15 08:23:39.799 1241 1241 I Browser : Could not map contract ID '@mozilla.org/network/protocol;1?name=app' to CID {b6ed3030-9999-11d3-a178-0050041caf44} because no implementation of the CID is registered. 04-15 08:23:39.809 1241 1241 I Browser : Could not read chrome manifest 'file:///system/b2g/chrome.manifest'. 04-15 08:23:40.299 1241 1241 I Gecko : [Child 1241] WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80004005: file /home/alex/codaz/Mozilla/gecko-cinnabar/toolkit/xre/nsXREDirProvider.cpp, line 1476 04-15 08:23:40.589 1241 1241 I Gecko : [Child 1241] WARNING: Unable to printf the requested string due to error.: file /home/alex/codaz/Mozilla/gecko-cinnabar/ipc/chromium/src/base/string_util.cc, line 427 04-15 08:23:43.499 1241 1241 I Gecko : [Child 1241] WARNING: NS_ENSURE_TRUE(mTriggerFd != -1) failed: file ../../../../../../../gecko-cinnabar/widget/gonk/GonkMemoryPressureMonitoring.cpp, line 254 04-15 08:23:43.499 1241 1241 I Gecko : [Child 1241] WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x8000FFFF: file ../../../../../../../gecko-cinnabar/widget/gonk/GonkMemoryPressureMonitoring.cpp, line 96 04-15 08:23:43.499 1241 1241 I Gecko : [Child 1241] WARNING: NS_ENSURE_SUCCESS_VOID(memoryPressureWatcher->Init()) failed with result 0x8000FFFF: file ../../../../../../../gecko-cinnabar/widget/gonk/GonkMemoryPressureMonitoring.cpp, line 362 04-15 08:23:46.059 1241 1241 I Gecko : ++DOCSHELL 0xaf91f000 == 1 [pid = 1241] [id = 1] 04-15 08:23:46.109 1241 1241 I Gecko : ++DOMWINDOW == 1 (0xaf91f400) [pid = 1241] [serial = 1] [outer = 0x0] 04-15 08:23:46.479 1241 1241 I Gecko : ###################################### forms.js loaded 04-15 08:23:46.489 1241 1241 I Gecko : ############################### browserElementPanning.js loaded 04-15 08:23:46.499 1241 1241 I Gecko : ###################################### BrowserElementCopyPaste.js loaded 04-15 08:23:46.589 1241 1241 I Gecko : ######################## BrowserElementChildPreload.js loaded 04-15 08:23:46.999 1241 1241 I Gecko : [Child 1241] WARNING: No inner window available!: file ../../../../../../../gecko-cinnabar/dom/base/nsGlobalWindow.cpp, line 9767 04-15 08:23:46.999 1241 1241 I Gecko : ++DOMWINDOW == 2 (0xaf0d3c00) [pid = 1241] [serial = 2] [outer = 0xaf91f400] 04-15 08:23:47.059 1241 1241 I Gecko : [Child 1241] WARNING: NS_ENSURE_TRUE(startupCache) failed: file /home/alex/codaz/Mozilla/gecko-cinnabar/dom/xbl/nsXBLDocumentInfo.cpp, line 198 04-15 08:23:47.069 1241 1241 I Gecko : [Child 1241] WARNING: NS_ENSURE_TRUE(startupCache) failed: file /home/alex/codaz/Mozilla/gecko-cinnabar/dom/xbl/nsXBLDocumentInfo.cpp, line 265 04-15 08:23:47.109 1241 1241 I Gecko : ++DOCSHELL 0xb16b7800 == 2 [pid = 1241] [id = 2] 04-15 08:23:47.109 1241 1241 I Gecko : ++DOMWINDOW == 3 (0xb16ba000) [pid = 1241] [serial = 3] [outer = 0x0] 04-15 08:23:47.109 1241 1241 I Gecko : [Child 1241] WARNING: Failed to set UseGlobalHistory on TabChild docShell: file /home/alex/codaz/Mozilla/gecko-cinnabar/dom/ipc/TabChild.cpp, line 2361 04-15 08:23:47.109 1241 1241 I Gecko : [Child 1241] WARNING: No inner window available!: file ../../../../../../../gecko-cinnabar/dom/base/nsGlobalWindow.cpp, line 9767 04-15 08:23:47.109 1241 1241 I Gecko : ++DOMWINDOW == 4 (0xb16ba800) [pid = 1241] [serial = 4] [outer = 0xb16ba000] 04-15 08:23:47.169 1241 1241 I Gecko : ###################################### forms.js loaded 04-15 08:23:47.179 1241 1241 I Gecko : ###################################### BrowserElementCopyPaste.js loaded 04-15 08:23:47.179 1241 1241 I Gecko : ############################### browserElementPanning.js loaded 04-15 08:23:47.219 1241 1241 I Gecko : ######################## BrowserElementChildPreload.js loaded 04-15 08:23:47.259 1241 1241 I Gecko : ######################## extensions.js loaded 04-15 08:23:47.309 1241 1241 I Gecko : ++DOMWINDOW == 5 (0xaff0c800) [pid = 1241] [serial = 5] [outer = 0xb16ba000] 04-15 08:23:47.559 1241 1305 I Browser : PAC file installed from data: URI 04-15 08:23:47.859 1241 1241 I Gecko : MozKeyboard.jsm expecting chrome://gaia/content/system/index.html 04-15 08:23:58.519 1241 1241 I Gecko : --DOMWINDOW == 4 (0xb16ba800) [pid = 1241] [serial = 4] [outer = 0x0] [url = about:blank]
Disabling keyboard autocorrection and prediction works around the issue.
Attached file gaia kanikani workaround (deleted) —
Attached file gdb backtrace (deleted) —
(In reply to Frederik Braun [:freddyb] from comment #4) > Maybe ckerschb can help out? Sorry, I am not an expert within worker code. Probably Kyle knows why you hit the assertion within workers/WorkerPrivate.cpp#l4366.
Flags: needinfo?(ckerschb) → needinfo?(khuey)
You need to figure out why the principal and the load context don't match, and where they're coming from. I don't have any more insight than that, and I don't have any time to spend on unsupported products, sorry.
Flags: needinfo?(khuey)
Marking as fixed-in-pine thanks to workaround in bug 1266064
Whiteboard: fixed-in-pine
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: