Closed
Bug 1648877
Opened 4 years ago
Closed 4 years ago
Assertion failure: removedElement == this, at /builds/worker/checkouts/gecko/dom/html/HTMLDialogElement.cpp:73
Categories
(Core :: DOM: Core & HTML, defect)
Core
DOM: Core & HTML
Tracking
()
RESOLVED
FIXED
mozilla80
People
(Reporter: tsmith, Assigned: sefeng)
References
(Blocks 1 open bug)
Details
(Keywords: assertion, testcase)
Attachments
(2 files)
Assertion failure: removedElement == this, at /builds/worker/checkouts/gecko/dom/html/HTMLDialogElement.cpp:73
0|0|libxul.so|mozilla::dom::HTMLDialogElement::RemoveFromTopLayerIfNeeded()|hg:hg.mozilla.org/mozilla-central:dom/html/HTMLDialogElement.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|73|0x29
0|1|libxul.so|mozilla::dom::HTMLDialogElement::UnbindFromTree(bool)|hg:hg.mozilla.org/mozilla-central:dom/html/HTMLDialogElement.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|78|0x5
0|2|libxul.so|mozilla::dom::Element::UnbindFromTree(bool)|hg:hg.mozilla.org/mozilla-central:dom/base/Element.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|1828|0xe
0|3|libxul.so|nsGenericHTMLElement::UnbindFromTree(bool)|hg:hg.mozilla.org/mozilla-central:dom/html/nsGenericHTMLElement.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|474|0xc
0|4|libxul.so|nsGenericHTMLFormElement::UnbindFromTree(bool)|hg:hg.mozilla.org/mozilla-central:dom/html/nsGenericHTMLElement.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|1741|0xc
0|5|libxul.so|mozilla::dom::HTMLTextAreaElement::UnbindFromTree(bool)|hg:hg.mozilla.org/mozilla-central:dom/html/HTMLTextAreaElement.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|844|0x5
0|6|libxul.so|mozilla::dom::Element::UnbindFromTree(bool)|hg:hg.mozilla.org/mozilla-central:dom/base/Element.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|1828|0xe
0|7|libxul.so|nsGenericHTMLElement::UnbindFromTree(bool)|hg:hg.mozilla.org/mozilla-central:dom/html/nsGenericHTMLElement.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|474|0xc
0|8|libxul.so|mozilla::dom::Element::UnbindFromTree(bool)|hg:hg.mozilla.org/mozilla-central:dom/base/Element.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|1828|0xe
0|9|libxul.so|nsGenericHTMLElement::UnbindFromTree(bool)|hg:hg.mozilla.org/mozilla-central:dom/html/nsGenericHTMLElement.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|474|0xc
0|10|libxul.so|mozilla::dom::Element::UnbindFromTree(bool)|hg:hg.mozilla.org/mozilla-central:dom/base/Element.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|1828|0xe
0|11|libxul.so|nsGenericHTMLElement::UnbindFromTree(bool)|hg:hg.mozilla.org/mozilla-central:dom/html/nsGenericHTMLElement.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|474|0xc
0|12|libxul.so|mozilla::dom::HTMLSharedElement::UnbindFromTree(bool)|hg:hg.mozilla.org/mozilla-central:dom/html/HTMLSharedElement.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|250|0xb
0|13|libxul.so|mozilla::dom::Element::UnbindFromTree(bool)|hg:hg.mozilla.org/mozilla-central:dom/base/Element.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|1828|0xe
0|14|libxul.so|nsGenericHTMLElement::UnbindFromTree(bool)|hg:hg.mozilla.org/mozilla-central:dom/html/nsGenericHTMLElement.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|474|0xc
0|15|libxul.so|mozilla::dom::HTMLSharedElement::UnbindFromTree(bool)|hg:hg.mozilla.org/mozilla-central:dom/html/HTMLSharedElement.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|250|0xb
0|16|libxul.so|mozilla::dom::Document::cycleCollection::Unlink(void*)|hg:hg.mozilla.org/mozilla-central:dom/base/Document.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|2222|0x19
0|17|libxul.so|nsCycleCollector::CollectWhite()|hg:hg.mozilla.org/mozilla-central:xpcom/base/nsCycleCollector.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|3083|0x9
0|18|libxul.so|nsCycleCollector::Collect(ccType, js::SliceBudget&, nsICycleCollectorListener*, bool)|hg:hg.mozilla.org/mozilla-central:xpcom/base/nsCycleCollector.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|3432|0x8
0|19|libxul.so|nsCycleCollector::ShutdownCollect()|hg:hg.mozilla.org/mozilla-central:xpcom/base/nsCycleCollector.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|3352|0x15
0|20|libxul.so|nsCycleCollector::Shutdown(bool)|hg:hg.mozilla.org/mozilla-central:xpcom/base/nsCycleCollector.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|3641|0x8
0|21|libxul.so|nsCycleCollector_shutdown(bool)|hg:hg.mozilla.org/mozilla-central:xpcom/base/nsCycleCollector.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|3956|0x11
0|22|libxul.so|mozilla::ShutdownXPCOM(nsIServiceManager*)|hg:hg.mozilla.org/mozilla-central:xpcom/build/XPCOMInit.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|721|0xa
0|23|libxul.so|XRE_TermEmbedding()|hg:hg.mozilla.org/mozilla-central:toolkit/xre/nsEmbedFunctions.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|223|0x7
0|24|libxul.so|mozilla::ipc::ScopedXREEmbed::Stop()|hg:hg.mozilla.org/mozilla-central:ipc/glue/ScopedXREEmbed.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|90|0x5
0|25|libxul.so|XRE_InitChildProcess(int, char**, XREChildData const*)|hg:hg.mozilla.org/mozilla-central:toolkit/xre/nsEmbedFunctions.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|748|0xe
0|26|firefox-bin|content_process_main(mozilla::Bootstrap*, int, char**)|hg:hg.mozilla.org/mozilla-central:ipc/contentproc/plugin-container.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|56|0x11
0|27|firefox-bin|main|hg:hg.mozilla.org/mozilla-central:browser/app/nsBrowserApp.cpp:8fcf1cac56600d932240486ffe7a06d46a0c931c|303|0x20
Flags: in-testsuite?
Reporter | ||
Comment 1•4 years ago
|
||
A Pernosco session is available here: https://pernos.co/debug/XIRoCMmPrW1CqGFszsulsQ/index.html
Updated•4 years ago
|
Flags: needinfo?(sefeng)
Assignee | ||
Comment 2•4 years ago
|
||
Ah, nice...there's a bug.
dialog.requestFullscreen() // Adds the element to top layer
dialog.showModal() // Re-add the element and set the `NS_EVENT_STATE_MODAL_DIALOG` state
document.exitFulscreen() // Removes the element from toplayer because the element has `NS_EVENT_STATE_FULLSCREEN` state and without unset the `NS_EVENT_STATE_MODAL_DIALOG` state
dialog.close() // Crash!!
So I think the problem is <dialog> can't be a fullscreen element per spec, and we don't have this enforcement in our code.
I'll have a patch up to fix it.
Flags: needinfo?(sefeng)
Assignee | ||
Updated•4 years ago
|
Assignee: nobody → sefeng
Assignee | ||
Comment 3•4 years ago
|
||
Per fullscreen api spec,
https://fullscreen.spec.whatwg.org/#dom-element-requestfullscreen,
fullscreen request should be denied if the requesting element is
<dialog>
Pushed by sefeng@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/bfd857646de4
Deny the fullscreen request if the element is dialog r=smaug
Backout by csabou@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/47f18d1138df
Backed out 1 changesets for mochitest failures on test_bug1648877_dialog_fullscreen_denied.html. CLOSED TREE
Comment 6•4 years ago
|
||
Failure log: https://treeherder.mozilla.org/logviewer.html#?job_id=308041271&repo=autoland
Backout link: https://hg.mozilla.org/integration/autoland/rev/47f18d1138df
[task 2020-06-30T16:28:55.827Z] 16:28:55 INFO - TEST-START | dom/html/test/dialog/test_bug1648877_dialog_fullscreen_denied.html
[task 2020-06-30T16:28:57.359Z] 16:28:57 INFO - GECKO(1673) | [Child 1675, Main Thread] WARNING: '!inner', file /builds/worker/checkouts/gecko/dom/ipc/JSWindowActorProtocol.cpp, line 172
[task 2020-06-30T16:28:57.359Z] 16:28:57 INFO - GECKO(1673) | [Child 1675, Main Thread] WARNING: '!inner', file /builds/worker/checkouts/gecko/dom/ipc/JSWindowActorProtocol.cpp, line 172
[task 2020-06-30T16:28:57.359Z] 16:28:57 INFO - GECKO(1673) | [Child 1675, Main Thread] WARNING: '!inner', file /builds/worker/checkouts/gecko/dom/base/Document.cpp, line 15138
[task 2020-06-30T16:28:57.359Z] 16:28:57 INFO - GECKO(1673) | [Child 1675, Main Thread] WARNING: '!inner', file /builds/worker/checkouts/gecko/dom/base/Document.cpp, line 15123
[task 2020-06-30T16:28:57.359Z] 16:28:57 INFO - GECKO(1673) | [Child 1675, Main Thread] WARNING: '!inner', file /builds/worker/checkouts/gecko/dom/base/Document.cpp, line 15281
[task 2020-06-30T16:28:57.359Z] 16:28:57 INFO - GECKO(1673) | [Child 1675, Main Thread] WARNING: '!inner', file /builds/worker/checkouts/gecko/dom/base/Document.cpp, line 15138
[task 2020-06-30T16:28:57.359Z] 16:28:57 INFO - GECKO(1673) | [Child 1675, Main Thread] WARNING: '!inner', file /builds/worker/checkouts/gecko/dom/base/Document.cpp, line 15123
[task 2020-06-30T16:28:57.360Z] 16:28:57 INFO - GECKO(1673) | [Child 1675, Main Thread] WARNING: '!inner', file /builds/worker/checkouts/gecko/dom/ipc/JSWindowActorProtocol.cpp, line 172
[task 2020-06-30T16:28:57.360Z] 16:28:57 INFO - GECKO(1673) | [Child 1675, Main Thread] WARNING: '!inner', file /builds/worker/checkouts/gecko/dom/ipc/JSWindowActorProtocol.cpp, line 172
[task 2020-06-30T16:28:57.360Z] 16:28:57 INFO - GECKO(1673) | [Child 1675, Main Thread] WARNING: '!inner', file /builds/worker/checkouts/gecko/dom/ipc/JSWindowActorProtocol.cpp, line 172
[task 2020-06-30T16:28:57.360Z] 16:28:57 INFO - GECKO(1673) | [Child 1675, Main Thread] WARNING: '!inner', file /builds/worker/checkouts/gecko/dom/ipc/JSWindowActorProtocol.cpp, line 172
[task 2020-06-30T16:29:18.504Z] 16:29:18 INFO - GECKO(1673) | 2020-06-30 16:29:18.484 firefox[1673:14428] Persistent UI failed to open file file:///Users/cltbld/Library/Saved%20Application%20State/org.mozilla.nightlydebug.savedState/window_1.data: No such file or directory (2)
[task 2020-06-30T16:33:56.431Z] 16:33:56 INFO - TEST-INFO | started process screencapture
[task 2020-06-30T16:33:56.537Z] 16:33:56 INFO - TEST-INFO | screencapture: exit 0
[task 2020-06-30T16:33:56.537Z] 16:33:56 INFO - TEST-UNEXPECTED-FAIL | dom/html/test/dialog/test_bug1648877_dialog_fullscreen_denied.html | Test timed out.
[task 2020-06-30T16:33:56.537Z] 16:33:56 INFO - SimpleTest.ok@SimpleTest/SimpleTest.js:409:16
[task 2020-06-30T16:33:56.537Z] 16:33:56 INFO - reportError@SimpleTest/TestRunner.js:138:22
[task 2020-06-30T16:33:56.537Z] 16:33:56 INFO - TestRunner._checkForHangs@SimpleTest/TestRunner.js:160:18
[task 2020-06-30T16:33:57.460Z] 16:33:57 INFO - GECKO(1673) | JavaScript error: resource://specialpowers/WrapPrivileged.jsm, line 272: NS_ERROR_NOT_AVAILABLE: Component returned failure code: 0x80040111 (NS_ERROR_NOT_AVAILABLE) [nsIMemoryReporterManager.vsizeMaxContiguous]
[task 2020-06-30T16:33:57.460Z] 16:33:57 INFO - GECKO(1673) | MEMORY STAT vsizeMaxContiguous not supported in this build configuration.
[task 2020-06-30T16:33:57.460Z] 16:33:57 INFO - GECKO(1673) | MEMORY STAT | vsize 7346MB | residentFast 102MB | heapAllocated 13MB
[task 2020-06-30T16:33:57.499Z] 16:33:57 INFO - TEST-OK | dom/html/test/dialog/test_bug1648877_dialog_fullscreen_denied.html | took 301652ms
Flags: needinfo?(sefeng)
Pushed by sefeng@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/2857d4830d51
Deny the fullscreen request if the element is dialog r=smaug
Comment 8•4 years ago
|
||
bugherder |
Status: NEW → RESOLVED
Closed: 4 years ago
status-firefox80:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla80
Updated•4 years ago
|
status-firefox77:
--- → wontfix
status-firefox78:
--- → wontfix
status-firefox-esr68:
--- → wontfix
status-firefox-esr78:
--- → wontfix
Flags: needinfo?(sefeng)
Flags: in-testsuite?
Flags: in-testsuite+
You need to log in
before you can comment on or make changes to this bug.
Description
•