Closed
Bug 1402472
Opened 8 years ago
Closed 8 years ago
stylo: Assertion failure: !aElement->HasFlag(ELEMENT_HANDLED_SNAPSHOT)
Categories
(Core :: CSS Parsing and Computation, defect, P2)
Core
CSS Parsing and Computation
Tracking
()
RESOLVED
FIXED
mozilla58
| Tracking | Status | |
|---|---|---|
| firefox-esr52 | --- | unaffected |
| firefox55 | --- | unaffected |
| firefox56 | --- | unaffected |
| firefox57 | --- | fixed |
| firefox58 | --- | fixed |
People
(Reporter: truber, Assigned: emilio)
References
(Blocks 2 open bugs)
Details
(Keywords: assertion, testcase)
Attachments
(2 files)
|
342 bytes,
text/html
|
Details | |
|
59 bytes,
text/x-review-board-request
|
bholley
:
review+
Sylvestre
:
approval-mozilla-beta+
|
Details |
The attached testcase causes an assertion in m-c rev 20170922-14db7c0bcf9a
Assertion failure: !aElement->HasFlag(ELEMENT_HANDLED_SNAPSHOT), at /builds/worker/workspace/build/src/layout/base/ServoRestyleManager.cpp:1043
#0: mozilla::ServoRestyleManager::SnapshotFor, at layout/base/ServoRestyleManager.cpp:1042
#1: mozilla::ServoRestyleManager::ContentStateChanged, at layout/base/ServoRestyleManager.cpp:1252
#2: mozilla::PresShell::ContentStateChanged, at layout/base/RestyleManagerInlines.h:51
#3: nsDocument::ContentStateChanged, at dom/base/nsDocument.cpp:5666
#4: mozilla::dom::Element::UpdateState, at dom/base/Element.cpp:272
#5: NotifyEditableStateChange, at dom/html/nsHTMLDocument.cpp:2629
#6: NotifyEditableStateChange, at dom/html/nsHTMLDocument.cpp:2631
#7: NotifyEditableStateChange, at dom/html/nsHTMLDocument.cpp:2631
#8: nsHTMLDocument::EditingStateChanged, at dom/html/nsHTMLDocument.cpp:2912
#9: nsHTMLDocument::SetDesignMode, at dom/html/nsHTMLDocument.cpp:2968
#10: nsHTMLDocument::SetDesignMode, at dom/html/nsHTMLDocument.cpp:2951
#11: mozilla::dom::HTMLDocumentBinding::set_designMode, at 6deb547566855812e17bc597f66751a8b0933de60f01e6509c3cb2cb3932d79f4ad1128a332976e79827fb9a066fe9feab2cdc99c59aeedf8472ea59d56b348c/dom/bindings/HTMLDocumentBinding.cpp:806
#12: mozilla::dom::GenericBindingSetter, at dom/bindings/BindingUtils.cpp:3016
#13: js::CallJSNative, at js/src/jscntxtinlines.h:293
#14: js::InternalCallOrConstruct, at js/src/vm/Interpreter.cpp:495
#15: InternalCall, at js/src/vm/Interpreter.cpp:540
#16: js::Call, at js/src/vm/Interpreter.cpp:559
#17: js::CallSetter, at js/src/vm/Interpreter.cpp:688
#18: SetExistingProperty, at js/src/vm/NativeObject.cpp:2755
#19: js::NativeSetProperty<(js::QualifiedBool)1u>, at js/src/vm/NativeObject.cpp:2791
#20: js::SetPropertyIgnoringNamedGetter, at js/src/vm/NativeObject.h:1607
#21: mozilla::dom::DOMProxyHandler::set, at dom/bindings/DOMJSProxyHandler.cpp:221
#22: js::Proxy::setInternal, at js/src/proxy/Proxy.cpp:390
#23: js::Proxy::set, at js/src/proxy/Proxy.cpp:400
#24: JSObject::nonNativeSetProperty, at js/src/jsobj.cpp:1031
#25: js::SetProperty, at js/src/vm/NativeObject.h:1606
#26: Interpret, at js/src/vm/Interpreter.cpp:269
#27: js::RunScript, at js/src/vm/Interpreter.cpp:435
#28: js::ExecuteKernel, at js/src/vm/Interpreter.cpp:724
#29: js::Execute, at js/src/vm/Interpreter.cpp:757
#30: ExecuteScript, at js/src/jsapi.cpp:4648
#31: ExecuteScript, at js/src/jsapi.cpp:4667
#32: nsJSUtils::ExecutionContext::CompileAndExec, at dom/base/nsJSUtils.cpp:265
#33: mozilla::dom::ScriptLoader::EvaluateScript, at dom/script/ScriptLoader.cpp:2244
#34: mozilla::dom::ScriptLoader::ProcessRequest, at dom/script/ScriptLoader.cpp:1884
#35: mozilla::dom::ScriptLoader::ProcessScriptElement, at dom/script/ScriptLoader.cpp:1585
#36: mozilla::dom::ScriptElement::MaybeProcessScript, at dom/script/ScriptElement.cpp:149
#37: nsIScriptElement::AttemptToExecute, at dom/script/nsIScriptElement.h:225
#38: nsHtml5TreeOpExecutor::RunScript, at parser/html/nsHtml5TreeOpExecutor.cpp:701
#39: nsHtml5TreeOpExecutor::RunFlushLoop, at parser/html/nsHtml5TreeOpExecutor.cpp:502
#40: nsHtml5ExecutorFlusher::Run, at parser/html/nsHtml5StreamParser.cpp:130
#41: mozilla::SchedulerGroup::Runnable::Run, at xpcom/threads/SchedulerGroup.cpp:396
#42: nsThread::ProcessNextEvent, at xpcom/threads/nsThread.cpp:1039
#43: NS_ProcessNextEvent, at xpcom/threads/nsThreadUtils.cpp:521
#44: mozilla::ipc::MessagePump::Run, at ipc/glue/MessagePump.cpp:97
#45: MessageLoop::RunInternal, at ipc/chromium/src/base/message_loop.cc:326
#46: MessageLoop::Run, at ipc/chromium/src/base/message_loop.cc:319
#47: nsBaseAppShell::Run, at widget/nsBaseAppShell.cpp:158
#48: XRE_RunAppShell, at toolkit/xre/nsEmbedFunctions.cpp:880
#49: mozilla::ipc::MessagePumpForChildProcess::Run, at ipc/glue/MessagePump.cpp:269
#50: MessageLoop::RunInternal, at ipc/chromium/src/base/message_loop.cc:326
#51: MessageLoop::Run, at ipc/chromium/src/base/message_loop.cc:319
#52: XRE_InitChildProcess, at toolkit/xre/nsEmbedFunctions.cpp:705
#53: content_process_main, at ipc/contentproc/plugin-container.cpp:63
#54: main, at browser/app/nsBrowserApp.cpp:285
#55: libc-2.26.so+0x20f6a
#56: MOZ_ReportAssertionFailure, at mfbt/Assertions.h:165
Flags: in-testsuite?
Updated•8 years ago
|
Priority: -- → P2
Comment 1•8 years ago
|
||
INFO: Last good revision: 6cdbab15f8de44b3995125f468a525d2aceb9d0d
INFO: First bad revision: 1a8d86baaabc1af9d2359a0f078a9ee50aec9351
INFO: Pushlog:
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=6cdbab15f8de44b3995125f468a525d2aceb9d0d&tochange=1a8d86baaabc1af9d2359a0f078a9ee50aec9351
Bug 1389347 I presume.
Blocks: 1389347
Has Regression Range: --- → yes
status-firefox55:
--- → unaffected
status-firefox56:
--- → unaffected
status-firefox-esr52:
--- → unaffected
| Comment hidden (mozreview-request) |
Comment 4•8 years ago
|
||
| mozreview-review | ||
Comment on attachment 8911438 [details]
Bug 1402472: Make sure to not run any style invalidation in an unstyled children only traversal.
https://reviewboard.mozilla.org/r/182908/#review188118
Attachment #8911438 -
Flags: review?(bobbyholley) → review+
| Assignee | ||
Comment 5•8 years ago
|
||
Servo bits landed in https://github.com/servo/servo/pull/18602
Pushed by ecoal95@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/d22408a702ec
Crashtest. r=me
Comment 7•8 years ago
|
||
(In reply to Emilio Cobos Álvarez [:emilio] from comment #5)
> Servo bits landed in https://github.com/servo/servo/pull/18602
(which landed as https://hg.mozilla.org/integration/autoland/rev/888ca78cd6ec )
Updated•8 years ago
|
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Comment 8•8 years ago
|
||
| bugherder | ||
Comment 9•8 years ago
|
||
Please request Beta approval on this when you get a chance.
Flags: needinfo?(emilio)
Flags: in-testsuite?
Flags: in-testsuite+
Updated•8 years ago
|
Target Milestone: --- → mozilla58
| Assignee | ||
Comment 10•8 years ago
|
||
Comment on attachment 8911438 [details]
Bug 1402472: Make sure to not run any style invalidation in an unstyled children only traversal.
Approval Request Comment
[Feature/Bug causing the regression]: n/a
[User impact if declined]: Potentially wrong styling in some edge cases.
[Is this code covered by automated tests?]: Yes
[Has the fix been verified in Nightly?]:
[Needs manual test from QE? If yes, steps to reproduce]: No
[List of other uplifts needed for the feature/fix]: none
[Is the change risky?]: not really
[Why is the change risky/not risky?]: three-liner patch that avoids running some invalidation until it's actually needed.
[String changes made/needed]: none
Flags: needinfo?(emilio)
Attachment #8911438 -
Flags: approval-mozilla-beta?
Comment 11•8 years ago
|
||
Comment on attachment 8911438 [details]
Bug 1402472: Make sure to not run any style invalidation in an unstyled children only traversal.
Improve stylo, taking it
Should be in 57b3
Attachment #8911438 -
Flags: approval-mozilla-beta? → approval-mozilla-beta+
Comment 12•8 years ago
|
||
| bugherder uplift | ||
Comment 13•8 years ago
|
||
(In reply to Emilio Cobos Álvarez [:emilio] from comment #10)
> [Is this code covered by automated tests?]: Yes
> [Has the fix been verified in Nightly?]:
> [Needs manual test from QE? If yes, steps to reproduce]: No
Setting qe-verify- based on Emilio's assessment on manual testing needs and the fact that this fix has automated coverage.
Flags: qe-verify-
Updated•8 years ago
|
Updated•8 years ago
|
You need to log in
before you can comment on or make changes to this bug.
Description
•