Closed Bug 580834 Opened 16 years ago Closed 16 years ago

"ASSERTION: Should have stopped before popup"

Categories

(Core :: Layout, defect)

x86
All
defect
Not set
normal

Tracking

()

RESOLVED FIXED
Tracking Status
blocking2.0 --- final+

People

(Reporter: jruderman, Assigned: roc)

References

Details

(Keywords: assertion, testcase)

Attachments

(3 files)

Attached file testcase —
###!!! ASSERTION: Should have stopped before popup: '!IsPopup(f)', file layout/base/nsLayoutUtils.cpp, line 689 nsLayoutUtils::GetActiveScrolledRootFor [layout/base/nsLayoutUtils.cpp:690] mozilla::::ContainerState::ProcessDisplayItems [layout/base/FrameLayerBuilder.cpp:911] mozilla::::ContainerState::ProcessDisplayItems [layout/base/FrameLayerBuilder.cpp:854] mozilla::FrameLayerBuilder::BuildContainerLayerFor [layout/base/FrameLayerBuilder.cpp:1174] nsDisplayList::PaintForFrame [layout/base/nsDisplayList.cpp:394] nsDisplayList::PaintRoot [layout/base/nsDisplayList.cpp:346] nsLayoutUtils::PaintFrame [layout/base/nsLayoutUtils.cpp:1346] PresShell::Paint [layout/base/nsPresShell.cpp:5906] nsViewManager::RenderViews [view/src/nsViewManager.cpp:448] nsViewManager::Refresh [view/src/nsViewManager.cpp:416] nsViewManager::DispatchEvent [view/src/nsViewManager.cpp:844] HandleEvent [view/src/nsView.cpp:160] nsChildView::DispatchEvent [widget/src/cocoa/nsChildView.mm:1811] nsChildView::DispatchWindowEvent [widget/src/cocoa/nsChildView.mm:1820] -[ChildView drawRect:inContext:] [widget/src/cocoa/nsChildView.mm:2726] -[ChildView drawRect:] [widget/src/cocoa/nsChildView.mm:2634] -AppKit + 0x11db09 -AppKit + 0x11b1d5 -AppKit + 0x11bb68 -AppKit + 0x11bb68 -AppKit + 0x11bb68 -AppKit + 0x11bb68 -AppKit + 0x11a767 -AppKit + 0x1170ae -AppKit + 0x77d3f -AppKit + 0x41050 AppKit + 0x72572 CoreFoundation + 0x802c2 CoreFoundation + 0x3c9bd CoreFoundation + 0x3c094 CoreFoundation + 0x3bec1 HIToolbox + 0x34f9c HIToolbox + 0x34c8d HIToolbox + 0x34bd6 AppKit + 0x48a89 -AppKit + 0x482ca nsAppShell::ProcessNextNativeEvent [widget/src/cocoa/nsAppShell.mm:653] nsBaseAppShell::DoProcessNextNativeEvent [widget/src/xpwidgets/nsBaseAppShell.cpp:156] nsBaseAppShell::OnProcessNextEvent [widget/src/xpwidgets/nsBaseAppShell.cpp:312] nsAppShell::OnProcessNextEvent [widget/src/cocoa/nsAppShell.mm:834] nsThread::ProcessNextEvent [xpcom/threads/nsThread.cpp:519] NS_ProcessPendingEvents_P [nsThreadUtils.cpp:200] nsBaseAppShell::NativeEventCallback [widget/src/xpwidgets/nsBaseAppShell.cpp:127] nsAppShell::ProcessGeckoEvents [widget/src/cocoa/nsAppShell.mm:395] CoreFoundation + 0x3f0fb CoreFoundation + 0x3cbbf CoreFoundation + 0x3c094 CoreFoundation + 0x3bec1 HIToolbox + 0x34f9c HIToolbox + 0x34d51 HIToolbox + 0x34bd6 AppKit + 0x48a89 -AppKit + 0x482ca -AppKit + 0xa55b nsAppShell::Run [widget/src/cocoa/nsAppShell.mm:747] nsAppStartup::Run [toolkit/components/startup/src/nsAppStartup.cpp:191] XRE_main [toolkit/xre/nsAppRunner.cpp:3630] main [browser/app/nsBrowserApp.cpp:158] firefox-bin + 0x148e
This happened on tinderbox today, got this assertion several dozen times and then a slew of test failures. http://tinderbox.mozilla.org/showlog.cgi?log=Firefox/1280261098.1280264505.25001.gz&fulltext=1#err4
OS: Mac OS X → All
This happens all the time when I open some menu in the bookmarks toolbar (on OSX). This is something new.
Attached file testcase 2 —
I don't get this bug for bookmarks, but do for the inspector popups. This testcase is a more real world example that uses opacity on the panel. Not sure what nsLayoutUtils::GetActiveScrolledRootFor does, but it seems to assume that aFrame will only be called for elements not in scrollable menus.
Assignee: nobody → roc
Attached patch fix — — Splinter Review
nsLayoutUtils::GetActiveScrolledRootFor is called with null aAncestor in some places, and that should be fine; we should just use the nearest popup as an active scrolled root.
Attachment #465434 - Flags: review?(tnikkel)
Attachment #465434 - Flags: review?(tnikkel) → review+
Whiteboard: [needs approval]
Comment on attachment 465434 [details] [diff] [review] fix frequent annoying new assertion, safe fix
Attachment #465434 - Flags: approval2.0?
Whiteboard: [needs approval] → [needs landing]
Status: NEW → RESOLVED
Closed: 16 years ago
Resolution: --- → FIXED
Whiteboard: [needs landing]
Flags: in-testsuite+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: