Closed Bug 845526 Opened 12 years ago Closed 12 years ago

FrameLayerBuilder::RemoveFrameFromLayerManager can cause O(N^2) behavior

Categories

(Core :: Layout, defect)

x86_64
Windows 7
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla22

People

(Reporter: roc, Assigned: roc)

References

Details

Attachments

(1 file)

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.
Attached patch fixSplinter Review
Attachment #718799 - Flags: review?(matt.woodrow)
Attachment #718799 - Flags: review?(matt.woodrow) → review+
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
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla22
This patchset looks remarkably empty... > https://hg.mozilla.org/mozilla-central/rev/04856b09ea1e
(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.
Blocks: 846181
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: