mozilla::css::OverflowChangedTracker::Flush hits SplayTree assertion

RESOLVED WORKSFORME

Status

()

Core
Layout
--
critical
RESOLVED WORKSFORME
5 years ago
5 years ago

People

(Reporter: Jesse Ruderman, Assigned: Jesse Ruderman)

Tracking

(Blocks: 2 bugs, {assertion, testcase})

Trunk
assertion, testcase
Points:
---
Dependency tree / graph
Bug Flags:
in-testsuite +

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(2 attachments)

(Assignee)

Description

5 years ago
Created attachment 726343 [details]
testcase (takes a few seconds)

Within a few seconds, the testcase usually hits:

Assertion failure: Comparator::compare(*minimum, *node) < 0, at SplayTree.h:263

Why is this non-deterministic?  Can this kind of bug be made deterministic, perhaps by adding more assertions?  (The non-determinism caused me to spend several hours massaging the testcase instead of several minutes simply reducing it.)
(Assignee)

Comment 1

5 years ago
Created attachment 726344 [details]
stack (gdb)
Might this have started as a result of the patch to bug 849263?  I still think that patch is right, though.
(In reply to David Baron [:dbaron] (don't cc:, use needinfo? instead) from comment #2)
> Might this have started as a result of the patch to bug 849263?  I still
> think that patch is right, though.

I believe so, yes. This appears to be a different symptom of bug 850672.

Thanks for the testcase Jesse!
(Assignee)

Comment 4

5 years ago
Makes sense.  The non-determinism might come from [whether and when the presarena reuses a memory address].  This particular SplayTree cares whether frame pointers are reused because its entries are sorted by by depth and then frame pointer.
WFM in local m-c debug build on Linux64 and OSX.
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Flags: in-testsuite?
OS: Mac OS X → All
Hardware: x86_64 → All
Resolution: --- → WORKSFORME
Crash test:
https://hg.mozilla.org/integration/mozilla-inbound/rev/62aa2d6dbeb2
Flags: in-testsuite? → in-testsuite+
You need to log in before you can comment on or make changes to this bug.