Closed Bug 897239 Opened 12 years ago Closed 12 years ago

Regression: nsDisplayScrollLayer should always be defined: 'hasCount', file /home/work/B2G-unagi/birch/layout/base/nsDisplayList.cpp, line 3340

Categories

(Core :: Layout, defect)

x86_64
Linux
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 896250

People

(Reporter: dhylands, Assigned: dhylands)

References

Details

Attachments

(1 file)

I updated my unagai tree today (it was previously on July 17) and when I launch settings and touch Wifi or Bluetooth, I get the following assert nsDisplayScrollLayer should always be defined: 'hasCount', file /home/work/B2G-unagi/birch/layout/base/nsDisplayList.cpp, line 3340 This is running a DEBUG build. Backtrace: (gdb) bt #0 0x41ed736e in mozalloc_abort (msg=<value optimized out>) at /home/work/B2G-unagi/birch/memory/mozalloc/mozalloc_abort.cpp:30 #1 0x40b498fc in Abort (aSeverity=<value optimized out>, aStr=0x420abecf "nsDisplayScrollLayer should always be defined", aExpr=<value optimized out>, aFile=<value optimized out>, aLine=3340) at /home/work/B2G-unagi/birch/xpcom/base/nsDebugImpl.cpp:430 #2 NS_DebugBreak (aSeverity=<value optimized out>, aStr=0x420abecf "nsDisplayScrollLayer should always be defined", aExpr=<value optimized out>, aFile=<value optimized out>, aLine=3340) at /home/work/B2G-unagi/birch/xpcom/base/nsDebugImpl.cpp:387 #3 0x40d5a52c in nsDisplayScrollLayer::GetScrollLayerCount (this=<value optimized out>) at /home/work/B2G-unagi/birch/layout/base/nsDisplayList.cpp:3340 #4 0x40d5a54c in nsDisplayScrollLayer::RemoveScrollLayerCount (this=0xd0c) at /home/work/B2G-unagi/birch/layout/base/nsDisplayList.cpp:3350 #5 0x40d5a572 in nsDisplayScrollInfoLayer::ShouldFlattenAway (this=0xd0c, aBuilder=0xbec0e428) at /home/work/B2G-unagi/birch/layout/base/nsDisplayList.cpp:3397 #6 0x40d6050e in nsDisplayList::ComputeVisibilityForSublist (this=0x4520a9f8, aBuilder=0xbec0e428, aVisibleRegion=<value optimized out>, aListVisibleBounds=<value optimized out>, aAllowVisibleRegionExpansion=...) at /home/work/B2G-unagi/birch/layout/base/nsDisplayList.cpp:1016 #7 0x40d60a34 in nsDisplayWrapList::ComputeVisibility (this=0x4520a9c8, aBuilder=0xbec0e428, aVisibleRegion=0xbec0db88, aAllowVisibleRegionExpansion=...) at /home/work/B2G-unagi/birch/layout/base/nsDisplayList.cpp:2766 #8 0x40d5d6c8 in nsDisplayItem::RecomputeVisibility (this=0x4520a9c8, aBuilder=0xbec0e428, aVisibleRegion=0xbec0db88) at /home/work/B2G-unagi/birch/layout/base/nsDisplayList.cpp:1530 #9 0x40d5d790 in nsDisplayTransform::ComputeVisibility (this=0x4520a998, aBuilder=0xbec0e428, aVisibleRegion=<value optimized out>, aAllowVisibleRegionExpansion=<value optimized out>) at /home/work/B2G-unagi/birch/layout/base/nsDisplayList.cpp:4074 #10 0x40d5d6c8 in nsDisplayItem::RecomputeVisibility (this=0x4520a998, aBuilder=0xbec0e428, aVisibleRegion=0xbec0ddd0) at /home/work/B2G-unagi/birch/layout/base/nsDisplayList.cpp:1530 #11 0x40d28018 in mozilla::FrameLayerBuilder::DrawThebesLayer (aLayer=0x440dc640, aContext=0x44a6d7f0, aRegionToDraw=..., aRegionToInvalidate=..., aCallbackData=0xbec0e428) at /home/work/B2G-unagi/birch/layout/base/FrameLayerBuilder.cpp:3238 #12 0x416e9184 in mozilla::layers::ClientThebesLayer::PaintBuffer (this=0x440dc640, aContext=<value optimized out>, aRegionToDraw=..., aExtendedRegionToDraw=..., aRegionToInvalidate=..., aDidSelfCopy=false) at /home/work/B2G-unagi/birch/gfx/layers/client/ClientThebesLayer.cpp:149 #13 0x416e960e in mozilla::layers::ClientThebesLayer::PaintThebes (this=0x440dc640) at /home/work/B2G-unagi/birch/gfx/layers/client/ClientThebesLayer.cpp:92 #14 0x416e98c8 in mozilla::layers::ClientThebesLayer::RenderLayer (this=0x440dc640) at /home/work/B2G-unagi/birch/gfx/layers/client/ClientThebesLayer.cpp:123 #15 0x416e7686 in ClientContainerLayer::RenderLayer (this=0x4515b000) at /home/work/B2G-unagi/birch/gfx/layers/client/ClientContainerLayer.h:191 #16 0x416e83ea in mozilla::layers::ClientLayerManager::EndTransactionInternal (this=0x40327030, aCallback=0x40d27d5d <mozilla::FrameLayerBuilder::DrawThebesLayer(mozilla::layers::ThebesLayer*, gfxContext*, nsIntRegion const&, nsIntRegion const&, void*)>, aCallbackData=<value optimized out>) at /home/work/B2G-unagi/birch/gfx/layers/client/ClientLayerManager.cpp:176 #17 0x416e8cd2 in mozilla::layers::ClientLayerManager::EndTransaction (this=0x40327030, aCallback=0x40d27d5d <mozilla::FrameLayerBuilder::DrawThebesLayer(mozilla::layers::ThebesLayer*, gfxContext*, nsIntRegion const&, nsIntRegion const&, void*)>, aCallbackData=0xbec0e428, aFlags=mozilla::layers::LayerManager::END_NO_COMPOSITE) at /home/work/B2G-unagi/birch/gfx/layers/client/ClientLayerManager.cpp:199 #18 0x40d5dd98 in nsDisplayList::PaintForFrame (this=<value optimized out>, aBuilder=0xbec0e428, aCtx=<value optimized out>, aForFrame=<value optimized out>, aFlags=13) at /home/work/B2G-unagi/birch/layout/base/nsDisplayList.cpp:1201 #19 0x40d5dfa4 in nsDisplayList::PaintRoot (this=0xbec0e7c0, aBuilder=0xbec0e428, aCtx=0x0, aFlags=13) at /home/work/B2G-unagi/birch/layout/base/nsDisplayList.cpp:1062 #20 0x40d77fde in nsLayoutUtils::PaintFrame (aRenderingContext=<value optimized out>, aFrame=0x44ac3298, aDirtyRegion=<value optimized out>, aBackstop=<value optimized out>, aFlags=772) at /home/work/B2G-unagi/birch/layout/base/nsLayoutUtils.cpp:2084 #21 0x40d8c724 in PresShell::Paint (this=0x40392630, aViewToPaint=<value optimized out>, aDirtyRegion=<value optimized out>, aFlags=1) at /home/work/B2G-unagi/birch/layout/base/nsPresShell.cpp:5613 #22 0x4119bc92 in nsViewManager::ProcessPendingUpdatesForView (this=0x44a70a00, aView=0x44a71ce0, aFlushDirtyRegion=<value optimized out>) at /home/work/B2G-unagi/birch/view/src/nsViewManager.cpp:410 #23 0x4119bd48 in nsViewManager::ProcessPendingUpdates (this=<value optimized out>) at /home/work/B2G-unagi/birch/view/src/nsViewManager.cpp:1031 #24 0x40d971fe in nsRefreshDriver::Tick (this=0x12b0329, aNowEpoch=2435516125, aNowTime=...) at /home/work/B2G-unagi/birch/layout/base/nsRefreshDriver.cpp:1225 #25 0x40d97774 in mozilla::RefreshDriverTimer::TickDriver (aTimer=<value optimized out>, aClosure=<value optimized out>) at /home/work/B2G-unagi/birch/layout/base/nsRefreshDriver.cpp:171 #26 mozilla::RefreshDriverTimer::Tick (aTimer=<value optimized out>, aClosure=<value optimized out>) at /home/work/B2G-unagi/birch/layout/base/nsRefreshDriver.cpp:163 #27 mozilla::RefreshDriverTimer::TimerTick (aTimer=<value optimized out>, aClosure=<value optimized out>) at /home/work/B2G-unagi/birch/layout/base/nsRefreshDriver.cpp:188 #28 0x40b40322 in nsTimerImpl::Fire (this=0x4407d7e0) at /home/work/B2G-unagi/birch/xpcom/threads/nsTimerImpl.cpp:543 #29 0x40b40512 in nsTimerEvent::Run (this=0x44063030) at /home/work/B2G-unagi/birch/xpcom/threads/nsTimerImpl.cpp:627 #30 0x40b3c798 in nsThread::ProcessNextEvent (this=0x40302320, mayWait=<value optimized out>, result=0xbec0edcf) at /home/work/B2G-unagi/birch/xpcom/threads/nsThread.cpp:621 #31 0x40b0394e in NS_ProcessNextEvent (thread=0x40302320, mayWait=false) at /home/work/B2G-unagi/objdir-gecko-debug-eng-birch/xpcom/build/nsThreadUtils.cpp:238 #32 0x4076e28c in mozilla::ipc::MessagePump::Run (this=0x40301b50, aDelegate=0xbec0f88c) at /home/work/B2G-unagi/birch/ipc/glue/MessagePump.cpp:81 #33 0x4076e40c in mozilla::ipc::MessagePumpForChildProcess::Run (this=0x40301b50, aDelegate=0xbec0f88c) at /home/work/B2G-unagi/birch/ipc/glue/MessagePump.cpp:234 #34 0x40b69b92 in MessageLoop::RunInternal (this=0xbec0f88c) at /home/work/B2G-unagi/birch/ipc/chromium/src/base/message_loop.cc:219 #35 0x40b69baa in MessageLoop::RunHandler (this=0xbec0f88c) at /home/work/B2G-unagi/birch/ipc/chromium/src/base/message_loop.cc:212 #36 MessageLoop::Run (this=0xbec0f88c) at /home/work/B2G-unagi/birch/ipc/chromium/src/base/message_loop.cc:186 #37 0x41699c02 in nsBaseAppShell::Run (this=0x43b36d60) at /home/work/B2G-unagi/birch/widget/xpwidgets/nsBaseAppShell.cpp:163 #38 0x406c4f7e in XRE_RunAppShell () at /home/work/B2G-unagi/birch/toolkit/xre/nsEmbedFunctions.cpp:676 #39 0x4076e376 in mozilla::ipc::MessagePumpForChildProcess::Run (this=0x40301b50, aDelegate=0xbec0f88c) at /home/work/B2G-unagi/birch/ipc/glue/MessagePump.cpp:201 #40 0x40b69b92 in MessageLoop::RunInternal (this=0xbec0f88c) at /home/work/B2G-unagi/birch/ipc/chromium/src/base/message_loop.cc:219 #41 0x40b69baa in MessageLoop::RunHandler (this=0xbec0f88c) at /home/work/B2G-unagi/birch/ipc/chromium/src/base/message_loop.cc:212 #42 MessageLoop::Run (this=0xbec0f88c) at /home/work/B2G-unagi/birch/ipc/chromium/src/base/message_loop.cc:186 #43 0x406c5858 in XRE_InitChildProcess (aArgc=2, aArgv=0xbec0f9a0, aProcess=1077163008) at /home/work/B2G-unagi/birch/toolkit/xre/nsEmbedFunctions.cpp:513 #44 0x00008786 in main (argc=7, argv=0xbec0fa24) at /home/work/B2G-unagi/birch/ipc/app/MozillaRuntimeMain.cpp:85
and the winner is: https://hg.mozilla.org/projects/birch/rev/4c89002460da With that commit applied, I get the assert. With the previous commit applied (https://hg.mozilla.org/projects/birch/rev/b9fe5a05edd9) I don't.
Depends on: 873378
This fixes the settings app (and makes MaxActiveLayers return the right thing).
Attachment #780105 - Flags: review?(roc)
Assignee: nobody → dhylands
I predict that you are going to back out due to Android reftest-2 failures. See bug 896250 comment 20 :)
Nevermind, looks like that test doesn't run on Birch.
(In reply to Markus Stange [:mstange] from comment #5) > Nevermind, looks like that test doesn't run on Birch. ...which just means it'll start failing when birch is merged to m-c.
Flags: needinfo?(dhylands)
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → DUPLICATE
Whiteboard: [fixed-in-birch]
Flags: needinfo?(dhylands)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: