Closed
Bug 845526
Opened 12 years ago
Closed 12 years ago
FrameLayerBuilder::RemoveFrameFromLayerManager can cause O(N^2) behavior
Categories
(Core :: Layout, defect)
Tracking
()
RESOLVED
FIXED
mozilla22
People
(Reporter: roc, Assigned: roc)
References
Details
Attachments
(1 file)
1.05 KB,
patch
|
mattwoodrow
:
review+
|
Details | Diff | Splinter Review |
Every time we tear down a frame we add to thebesData->mRegionToInvalidate. This can get arbitrarily complex, so N calls to RemoveFrameFromLayerManager take O(N^2) time.
To reproduce:
1) Load http://www.gutenberg.org/cache/epub/42205/pg42205.txt
2) in Web Console, do
var s=document.documentElement.style;s.transformOrigin="top left";s.transform="scale(2)"
3) Reload page --- hangs.
I think we may be prerendering the root element --- that may be another bug.
Assignee | ||
Comment 1•12 years ago
|
||
Attachment #718799 -
Flags: review?(matt.woodrow)
Updated•12 years ago
|
Attachment #718799 -
Flags: review?(matt.woodrow) → review+
Assignee | ||
Comment 2•12 years ago
|
||
Comment 3•12 years ago
|
||
Push backed out for failing to compile on Windows (so far):
https://tbpl.mozilla.org/?tree=Mozilla-Inbound&onlyunstarred=1&rev=dba7a059ed22
https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?changeset=0a91da5f5eab
Comment 4•12 years ago
|
||
This patch shouldn't have caused the build failures on that inbound push. Can we try this again?
The build failures appear to be related to the patches for bug 829557.
Status: NEW → ASSIGNED
Keywords: checkin-needed
Comment 5•12 years ago
|
||
Keywords: checkin-needed
Comment 6•12 years ago
|
||
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla22
Comment 7•12 years ago
|
||
Flags: in-testsuite+
Comment 8•12 years ago
|
||
This patchset looks remarkably empty...
> https://hg.mozilla.org/mozilla-central/rev/04856b09ea1e
Comment 9•12 years ago
|
||
(In reply to Philip Chee from comment #8)
> This patchset looks remarkably empty...
> > https://hg.mozilla.org/mozilla-central/rev/04856b09ea1e
That's because this patch ended up getting pushed to central twice.
Assignee | ||
Comment 10•12 years ago
|
||
Yes, my fault, sorry.
You need to log in
before you can comment on or make changes to this bug.
Description
•