"System JS : ERROR chrome://global/content/BrowserElementChildPreload.js:268 \n TypeError: content is null" on green debug test runs

RESOLVED FIXED in Firefox 24

Status

()

RESOLVED FIXED
5 years ago
5 years ago

People

(Reporter: vingtetun, Assigned: justin.lebar+bug)

Tracking

(Blocks: 2 bugs)

Trunk
mozilla25
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox24 fixed, firefox25 fixed)

Details

(Whiteboard: [qa-])

Attachments

(1 attachment, 1 obsolete attachment)

Seen while running Android tests. Not sure it affects anything else.

Justin, I don't know when it happens but from the code I read it seems like we could end up with zombie process if this exception happens during xpcom-shutdown and a prompt is currently opened (since the shuttingDown property will not be set).

Maybe this error happens at a very different moment. I'm not sure yet but I'm opening this bug just in case.
(Assignee)

Updated

5 years ago
Blocks: 693515
(Assignee)

Comment 1

5 years ago
> Seen while running Android tests.

Most of our browser-element tests don't work on Android.  I've never had the time and inclination to figure out why.

Comment 2

5 years ago
This is also occurring on other platforms, it's just been hidden in the midst of the other log content (occurs on green test runs).

However a soon to be deployed TBPL parser improvement will make these appear in the annotated summary, so this bug blocks the rollout of that patchset (since it spams the summary).

eg:

https://tbpl-dev.allizom.org/php/getParsedLog.php?id=25603893&tree=Mozilla-Central

Ubuntu VM 12.04 x64 mozilla-central debug test mochitest-1 on 2013-07-23 03:32:09 PDT for push fb4bf993a58a

slave: tst-linux64-ec2-012

{
03:39:50     INFO -  42297 INFO TEST-START | /tests/content/base/test/test_messagemanager_assertpermission.html
03:39:50     INFO -  ++DOMWINDOW == 32 (0x2ca5d78) [serial = 1462] [outer = 0x3293508]
03:39:50     INFO -  System JS : ERROR (null):0
03:39:50     INFO -                       uncaught exception: 2147746065
03:39:50     INFO -  [Child 2467] WARNING: NS_ENSURE_TRUE(mDocShell) failed: file ../../../../embedding/browser/webBrowser/nsWebBrowser.cpp, line 367
03:39:50     INFO -  [Child 2467] WARNING: NS_ENSURE_TRUE(domWindow) failed: file ../../../../embedding/browser/webBrowser/nsDocShellTreeOwner.cpp, line 87
03:39:50     INFO -  NOTE: child process received `Goodbye', closing down
03:39:50     INFO -  System JS : ERROR chrome://global/content/BrowserElementChildPreload.js:268
03:39:50     INFO -                       TypeError: content is null
}
...
{
03:55:01     INFO -  [Parent 2377] WARNING: OpenGL-accelerated layers are not supported on this system: file ../../../widget/xpwidgets/nsBaseWidget.cpp, line 893
03:55:01     INFO -  [Parent 2377] WARNING: Subdocument container has no frame: file ../../../layout/base/nsDocumentViewer.cpp, line 2374
03:55:01     INFO -  ++DOMWINDOW == 90 (0x89dbbc8) [serial = 3752] [outer = 0x5541da8]
03:55:01     INFO -  System JS : ERROR (null):0
03:55:01     INFO -                       uncaught exception: 2147746065
03:55:01     INFO -  [Parent 2377] WARNING: Subdocument container has no frame: file ../../../layout/base/nsDocumentViewer.cpp, line 2374
03:55:01     INFO -  ++DOMWINDOW == 91 (0x41fa318) [serial = 3753] [outer = 0x470f568]
03:55:01     INFO -  ++DOMWINDOW == 92 (0x887c678) [serial = 3754] [outer = 0x5852228]
03:55:01     INFO -  [Parent 2377] WARNING: NS_ENSURE_TRUE(mMutable) failed: file ../../../../netwerk/base/src/nsSimpleURI.cpp, line 266
03:55:01     INFO -  ++DOMWINDOW == 93 (0x880ff98) [serial = 3755] [outer = 0x5852228]
03:55:02     INFO -  [Parent 2377] WARNING: No permission to access camera: file ../../../dom/camera/DOMCameraManager.cpp, line 84
03:55:02     INFO -  System JS : ERROR chrome://global/content/BrowserElementChildPreload.js:268
03:55:02     INFO -                       TypeError: content is null
03:55:02     INFO -  System JS : ERROR (null):0
03:55:02     INFO -                       uncaught exception: 2147746065
}
...
{
03:55:03     INFO -  136945 INFO TEST-INFO | /tests/content/html/content/test/test_fullscreen-api.html | must wait for focus
03:55:03     INFO -  136946 INFO TEST-INFO | /tests/content/html/content/test/test_fullscreen-api.html | must wait for focus
03:55:03     INFO -  System JS : ERROR (null):0
03:55:03     INFO -                       uncaught exception: 2147746065
03:55:03     INFO -  System JS : ERROR chrome://global/content/BrowserElementChildPreload.js:268
03:55:03     INFO -                       TypeError: content is null
03:55:03     INFO -  136947 INFO TEST-KNOWN-FAIL | /tests/content/html/content/test/test_fullscreen-api.html | fullscreenchange before entering fullscreen complete!  window.fullScreen=true normal=(500,532) outerWidth=500 width=1600 outerHeight=532 height=1200
03:55:03     INFO -  136948 INFO TEST-PASS | /tests/content/html/content/test/test_fullscreen-api.html | [rollback] Body should be FSE
03:55:03     INFO -  136949 INFO TEST-PASS | /tests/content/html/content/test/test_fullscreen-api.html | [rollback] FSE should not change
03:55:03     INFO -  136950 INFO TEST-PASS | /tests/content/html/content/test/test_fullscreen-api.html | [rollback] Subdoc container should be FSE.
03:55:03     INFO -  136951 INFO TEST-PASS | /tests/content/html/content/test/test_fullscreen-api.html | [rollback] Subdoc body should be FSE in subdoc
03:55:03     INFO -  136952 INFO TEST-PASS | /tests/content/html/content/test/test_fullscreen-api.html | [rollback] Should only exit fullscreen on a fullscreen doc
03:55:03     INFO -  136953 INFO TEST-INFO | /tests/content/html/content/test/test_fullscreen-api.html | [rollback] Exited fullscreen
03:55:03     INFO -  136954 INFO TEST-PASS | /tests/content/html/content/test/test_fullscreen-api.html | [rollback] FSE should rollback to FSE.
03:55:03     INFO -  136955 INFO TEST-PASS | /tests/content/html/content/test/test_fullscreen-api.html | [rollback] Should only exit fullscreen on a fullscreen doc
03:55:03     INFO -  136956 INFO TEST-INFO | /tests/content/html/content/test/test_fullscreen-api.html | [rollback] Exited fullscreen
03:55:03     INFO -  136957 INFO TEST-PASS | /tests/content/html/content/test/test_fullscreen-api.html | [rollback] Should have left full-screen entirely
03:55:03     INFO -  System JS : ERROR chrome://global/content/BrowserElementChildPreload.js:268
03:55:03     INFO -                       TypeError: content is null
03:55:04     INFO -  System JS : ERROR (null):0
03:55:04     INFO -                       uncaught exception: 2147746065
}
...
Blocks: 892958
OS: Android → All

Comment 3

5 years ago
a) Should these fail the test / run?
b) We should either catch these or fix them.

Updated

5 years ago
Summary: content is null" {file: "chrome://global/content/BrowserElementChildPreload.js" line: 268} → "System JS : ERROR chrome://global/content/BrowserElementChildPreload.js:268 \n TypeError: content is null" on green debug test runs

Comment 4

5 years ago
http://mxr.mozilla.org/mozilla-central/source/dom/browser-element/BrowserElementChildPreload.js#268

266   observe: function(subject, topic, data) {
267     // Ignore notifications not about our document.
268     if (subject != content.document)
269       return;
270     switch (topic) {
271       case 'fullscreen-origin-change':
272         sendAsyncMsg('fullscreen-origin-change', { _payload_: data });
273         break;
274       case 'ask-parent-to-exit-fullscreen':
275         sendAsyncMsg('exit-fullscreen');
276         break;
277       case 'ask-parent-to-rollback-fullscreen':
278         sendAsyncMsg('rollback-fullscreen');
279         break;
280       case 'xpcom-shutdown':
281         this._shuttingDown = true;
282         break;
283     }
284   },
Probably just needs a null check.
Flags: needinfo?(justin.lebar+bug)
(Assignee)

Comment 6

5 years ago
Looks like it.
Flags: needinfo?(justin.lebar+bug)

Comment 7

5 years ago
Created attachment 779780 [details] [diff] [review]
Patch (v1)
Assignee: nobody → ehsan
Status: NEW → ASSIGNED
Attachment #779780 - Flags: review?(justin.lebar+bug)
(Assignee)

Comment 8

5 years ago
Created attachment 779781 [details] [diff] [review]
Patch, v1
Attachment #779781 - Flags: review?(khuey)
(Assignee)

Comment 9

5 years ago
lol.  I'll land the one with the comment.
Thank you :-)
(Assignee)

Updated

5 years ago
Attachment #779780 - Attachment is obsolete: true
Attachment #779780 - Flags: review?(justin.lebar+bug)

Updated

5 years ago
Assignee: ehsan → justin.lebar+bug
https://hg.mozilla.org/mozilla-central/rev/87550fa81e0a
Status: ASSIGNED → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla25
https://hg.mozilla.org/releases/mozilla-aurora/rev/4574bf8e1e86
status-firefox24: --- → fixed
status-firefox25: --- → fixed

Updated

5 years ago
No longer blocks: 892958

Updated

5 years ago
Blocks: 910614
Assuming no QA needed here. Please remove [qa-] from the whiteboard and add the verifyme keyword if this needs QA.
Whiteboard: [qa-]

Updated

5 years ago
Blocks: 920191

Updated

5 years ago
No longer blocks: 910614
You need to log in before you can comment on or make changes to this bug.