Re: [CrystalSpace] #989: Assertion failed in meshgen.cpp:1048
"CrystalSpace" <[email protected]> Sun, 21 Jul 2013 04:03:25 -0000
| Newsgroups | gmane.comp.graphics.crystalspace.tracker |
|---|---|
| Message-ID | <[email protected]> |
#989: Assertion failed in meshgen.cpp:1048
---------------------------+------------------------------------------------
Reporter: ralphcampbell | Owner: jorrit
Type: defect | Status: new
Priority: major | Milestone:
Component: engine | Version: V2.1
Keywords: |
---------------------------+------------------------------------------------
Description changed by sunshine:
Old description:
> I hit this assertion in a modified version of PlaneShift.
> I'm not sure what the fix is although I can say that in
> csMeshGenerator::AllocateBlock() the last "else" clause is
> executed just before the assertion meaning that the block was not
> found and the cache_blocks array was empty so there is likely a
> problem with reusing the last block.
>
> {{{
> #0 0x00000036dce0eedb in raise (sig=5)
> at ../nptl/sysdeps/unix/sysv/linux/pt-raise.c:41
> #1 0x00007ffff771ed7c in CS::Debug::DebugBreak () at
> ./include/cssysdef.h:971
> #2 0x00007ffff771efec in CS::Debug::AssertMessage (expr=
> 0x7fffebe057ca "block", filename=
> 0x7fffebe05700
> "/home/ralphc/src/CS_LATEST/plugins/engine/3d/meshgen/meshgen.cpp",
> line=1046, msg=0x0)
> at /home/ralphc/src/CS_LATEST/libs/csutil/csassert.cpp:82
> #3 0x00007fffebdeaab0 in
> CS::Plugin::Engine::csMeshGenerator::AllocateMeshes (
> this=0x7fff9dfbb4d8, cam=0x7ffee7d572a0, cidx=1799, cell=...,
> pos=...,
> delta=...)
> at
> /home/ralphc/src/CS_LATEST/plugins/engine/3d/meshgen/meshgen.cpp:1046
> #4 0x00007fffebdeb568 in
> CS::Plugin::Engine::csMeshGenerator::UpdateForPosition
> (this=0x7fff9dfbb4d8, cam=0x7ffee7d572a0, pos=...)
> at
> /home/ralphc/src/CS_LATEST/plugins/engine/3d/meshgen/meshgen.cpp:1206
> #5 0x00007fffebd5733c in csSector::PrepareDraw (this=0x7fff9e0038a8,
> rview=
> 0x7fff3385f2c8)
> at /home/ralphc/src/CS_LATEST/plugins/engine/3d/sector.cpp:933
> #6 0x00007fffdfa36494 in
> CS::Plugin::RMUnshadowed::StandardContextSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
> CS::RenderManager::MultipleRenderLayer>::operator() (this=0x7fffffffd730,
> context=...,
> portalSetupData=..., recursePortals=true)
> at
> /home/ralphc/src/CS_LATEST/plugins/rendermanager/unshadowed/unshadowed.cpp:84
> #7 0x00007fffdfa46bad in
> CS::RenderManager::StandardPortalSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
> CS::Plugin::RMUnshadowed::StandardContextSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
> CS::RenderManager::MultipleRenderLayer> >::SetupSimplePortal
> (this=0x7fffffffd020, context=..., setupData=..., portal=0x7ffeedbf4830,
> sector=0x7fff9e003908, portalVerts2d=0x7ffee6de3760, portalVerts3d=
> 0x7ffee898e220, count=4, screenW=1280, screenH=720, holder=...)
> at ./include/csplugincommon/rendermanager/portalsetup.h:461
> #8 0x00007fffdfa3e6a9 in
> CS::RenderManager::StandardPortalSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
> CS::Plugin::RMUnshadowed::StandardContextSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
> CS::RenderManager::MultipleRenderLayer> >::operator() (
> this=0x7fffffffd020, context=..., setupData=...)
> at ./include/csplugincommon/rendermanager/portalsetup.h:373
> #9 0x00007fffdfa36576 in
> CS::Plugin::RMUnshadowed::StandardContextSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
> CS::RenderManager::MultipleRenderLayer>::operator() (this=0x7fffffffd730,
> context=...,
> portalSetupData=..., recursePortals=true)
> at
> /home/ralphc/src/CS_LATEST/plugins/rendermanager/unshadowed/unshadowed.cpp:100
> #10 0x00007fffdfa46bad in
> CS::RenderManager::StandardPortalSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
> CS::Plugin::RMUnshadowed::StandardContextSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
> CS::RenderManager::MultipleRenderLayer> >::SetupSimplePortal
> (this=0x7fffffffd480, context=..., setupData=..., portal=0x7ffefe261f10,
> sector=0x7ffefe272c58, portalVerts2d=0x7fff7e953520, portalVerts3d=
> 0x7ffee5d68128, count=4, screenW=1280, screenH=720, holder=...)
> at ./include/csplugincommon/rendermanager/portalsetup.h:461
> #11 0x00007fffdfa3e6a9 in
> CS::RenderManager::StandardPortalSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
> CS::Plugin::RMUnshadowed::StandardContextSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
> CS::RenderManager::MultipleRenderLayer> >::operator() (
> this=0x7fffffffd480, context=..., setupData=...)
> at ./include/csplugincommon/rendermanager/portalsetup.h:373
> #12 0x00007fffdfa36576 in
> CS::Plugin::RMUnshadowed::StandardContextSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
> CS::RenderManager::MultipleRenderLayer>::operator() (this=0x7fffffffd730,
> context=...,
> portalSetupData=..., recursePortals=true)
> at
> /home/ralphc/src/CS_LATEST/plugins/rendermanager/unshadowed/unshadowed.cpp:100
> #13 0x00007fffdfa30bec in
> CS::Plugin::RMUnshadowed::RMUnshadowed::RenderView (
> this=0x7fffeaec7000, view=0x7fffc8bcc720, recursePortals=true)
> at
> /home/ralphc/src/CS_LATEST/plugins/rendermanager/unshadowed/unshadowed.cpp:289
> #14 0x00007fffdfa30e64 in
> CS::Plugin::RMUnshadowed::RMUnshadowed::RenderView (
> this=0x7fffeaec7000, view=0x7fffc8bcc720)
> at
> /home/ralphc/src/CS_LATEST/plugins/rendermanager/unshadowed/unshadowed.cpp:326
> #15 0x00007ffff7926f42 in csView::Draw (this=0x7fffc8bcc708, mesh=0x0)
> at /home/ralphc/src/CS_LATEST/libs/cstool/csview.cpp:187
> #16 0x00000000004e9df2 in psCamera::Draw (this=0x3592f30)
> at src/client/pscamera.cpp:818
> #17 0x0000000000491c69 in psEngine::Process3D (this=0xe47800, ev=...)
> at src/client/psengine.cpp:1018
> #18 0x00000000004773e5 in psEngine::EventHandler3D::HandleEvent (this=
> 0x7fffdc147ed8, ev=...) at src/client/psengine.h:858
> #19 0x00007ffff7736ec5 in csEventTree::Dispatch (this=0xaf3a70, e=...)
> at /home/ralphc/src/CS_LATEST/libs/csutil/cssubscription.cpp:576
> #20 0x00007ffff7736dab in csEventTree::Notify (this=0xaf3a70)
> at /home/ralphc/src/CS_LATEST/libs/csutil/cssubscription.cpp:546
> #21 0x00007ffff76e8c11 in csEventQueue::Notify (this=0x7ffff751d540,
> name=...)
> at /home/ralphc/src/CS_LATEST/libs/csutil/cseventq.cpp:239
> #22 0x00007ffff76e8d04 in csEventQueue::Process (this=0x7ffff751d540)
> at /home/ralphc/src/CS_LATEST/libs/csutil/cseventq.cpp:255
> #23 0x00007ffff77ea13f in csDefaultRunLoop (r=0x7ffff10bfc60)
> at /home/ralphc/src/CS_LATEST/libs/csutil/generic/runloop.cpp:99
> #24 0x000000000049882d in main (argc=1, argv=0x7fffffffe008)
> at src/client/psengine.cpp:2123
> }}}
New description:
I hit this assertion in a modified version of PlaneShift.
I'm not sure what the fix is although I can say that in
`csMeshGenerator::AllocateBlock()` the last `else` clause is
executed just before the assertion meaning that the block was not
found and the `cache_blocks` array was empty so there is likely a
problem with reusing the last block.
{{{
#0 0x00000036dce0eedb in raise (sig=5)
at ../nptl/sysdeps/unix/sysv/linux/pt-raise.c:41
#1 0x00007ffff771ed7c in CS::Debug::DebugBreak () at
./include/cssysdef.h:971
#2 0x00007ffff771efec in CS::Debug::AssertMessage (expr=
0x7fffebe057ca "block", filename=
0x7fffebe05700
"/home/ralphc/src/CS_LATEST/plugins/engine/3d/meshgen/meshgen.cpp",
line=1046, msg=0x0)
at /home/ralphc/src/CS_LATEST/libs/csutil/csassert.cpp:82
#3 0x00007fffebdeaab0 in
CS::Plugin::Engine::csMeshGenerator::AllocateMeshes (
this=0x7fff9dfbb4d8, cam=0x7ffee7d572a0, cidx=1799, cell=..., pos=...,
delta=...)
at
/home/ralphc/src/CS_LATEST/plugins/engine/3d/meshgen/meshgen.cpp:1046
#4 0x00007fffebdeb568 in
CS::Plugin::Engine::csMeshGenerator::UpdateForPosition
(this=0x7fff9dfbb4d8, cam=0x7ffee7d572a0, pos=...)
at
/home/ralphc/src/CS_LATEST/plugins/engine/3d/meshgen/meshgen.cpp:1206
#5 0x00007fffebd5733c in csSector::PrepareDraw (this=0x7fff9e0038a8,
rview=
0x7fff3385f2c8)
at /home/ralphc/src/CS_LATEST/plugins/engine/3d/sector.cpp:933
#6 0x00007fffdfa36494 in
CS::Plugin::RMUnshadowed::StandardContextSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
CS::RenderManager::MultipleRenderLayer>::operator() (this=0x7fffffffd730,
context=...,
portalSetupData=..., recursePortals=true)
at
/home/ralphc/src/CS_LATEST/plugins/rendermanager/unshadowed/unshadowed.cpp:84
#7 0x00007fffdfa46bad in
CS::RenderManager::StandardPortalSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
CS::Plugin::RMUnshadowed::StandardContextSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
CS::RenderManager::MultipleRenderLayer> >::SetupSimplePortal
(this=0x7fffffffd020, context=..., setupData=..., portal=0x7ffeedbf4830,
sector=0x7fff9e003908, portalVerts2d=0x7ffee6de3760, portalVerts3d=
0x7ffee898e220, count=4, screenW=1280, screenH=720, holder=...)
at ./include/csplugincommon/rendermanager/portalsetup.h:461
#8 0x00007fffdfa3e6a9 in
CS::RenderManager::StandardPortalSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
CS::Plugin::RMUnshadowed::StandardContextSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
CS::RenderManager::MultipleRenderLayer> >::operator() (
this=0x7fffffffd020, context=..., setupData=...)
at ./include/csplugincommon/rendermanager/portalsetup.h:373
#9 0x00007fffdfa36576 in
CS::Plugin::RMUnshadowed::StandardContextSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
CS::RenderManager::MultipleRenderLayer>::operator() (this=0x7fffffffd730,
context=...,
portalSetupData=..., recursePortals=true)
at
/home/ralphc/src/CS_LATEST/plugins/rendermanager/unshadowed/unshadowed.cpp:100
#10 0x00007fffdfa46bad in
CS::RenderManager::StandardPortalSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
CS::Plugin::RMUnshadowed::StandardContextSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
CS::RenderManager::MultipleRenderLayer> >::SetupSimplePortal
(this=0x7fffffffd480, context=..., setupData=..., portal=0x7ffefe261f10,
sector=0x7ffefe272c58, portalVerts2d=0x7fff7e953520, portalVerts3d=
0x7ffee5d68128, count=4, screenW=1280, screenH=720, holder=...)
at ./include/csplugincommon/rendermanager/portalsetup.h:461
#11 0x00007fffdfa3e6a9 in
CS::RenderManager::StandardPortalSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
CS::Plugin::RMUnshadowed::StandardContextSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
CS::RenderManager::MultipleRenderLayer> >::operator() (
this=0x7fffffffd480, context=..., setupData=...)
at ./include/csplugincommon/rendermanager/portalsetup.h:373
#12 0x00007fffdfa36576 in
CS::Plugin::RMUnshadowed::StandardContextSetup<CS::RenderManager::RenderTree<CS::RenderManager::RenderTreeLightingTraits>,
CS::RenderManager::MultipleRenderLayer>::operator() (this=0x7fffffffd730,
context=...,
portalSetupData=..., recursePortals=true)
at
/home/ralphc/src/CS_LATEST/plugins/rendermanager/unshadowed/unshadowed.cpp:100
#13 0x00007fffdfa30bec in
CS::Plugin::RMUnshadowed::RMUnshadowed::RenderView (
this=0x7fffeaec7000, view=0x7fffc8bcc720, recursePortals=true)
at
/home/ralphc/src/CS_LATEST/plugins/rendermanager/unshadowed/unshadowed.cpp:289
#14 0x00007fffdfa30e64 in
CS::Plugin::RMUnshadowed::RMUnshadowed::RenderView (
this=0x7fffeaec7000, view=0x7fffc8bcc720)
at
/home/ralphc/src/CS_LATEST/plugins/rendermanager/unshadowed/unshadowed.cpp:326
#15 0x00007ffff7926f42 in csView::Draw (this=0x7fffc8bcc708, mesh=0x0)
at /home/ralphc/src/CS_LATEST/libs/cstool/csview.cpp:187
#16 0x00000000004e9df2 in psCamera::Draw (this=0x3592f30)
at src/client/pscamera.cpp:818
#17 0x0000000000491c69 in psEngine::Process3D (this=0xe47800, ev=...)
at src/client/psengine.cpp:1018
#18 0x00000000004773e5 in psEngine::EventHandler3D::HandleEvent (this=
0x7fffdc147ed8, ev=...) at src/client/psengine.h:858
#19 0x00007ffff7736ec5 in csEventTree::Dispatch (this=0xaf3a70, e=...)
at /home/ralphc/src/CS_LATEST/libs/csutil/cssubscription.cpp:576
#20 0x00007ffff7736dab in csEventTree::Notify (this=0xaf3a70)
at /home/ralphc/src/CS_LATEST/libs/csutil/cssubscription.cpp:546
#21 0x00007ffff76e8c11 in csEventQueue::Notify (this=0x7ffff751d540,
name=...)
at /home/ralphc/src/CS_LATEST/libs/csutil/cseventq.cpp:239
#22 0x00007ffff76e8d04 in csEventQueue::Process (this=0x7ffff751d540)
at /home/ralphc/src/CS_LATEST/libs/csutil/cseventq.cpp:255
#23 0x00007ffff77ea13f in csDefaultRunLoop (r=0x7ffff10bfc60)
at /home/ralphc/src/CS_LATEST/libs/csutil/generic/runloop.cpp:99
#24 0x000000000049882d in main (argc=1, argv=0x7fffffffe008)
at src/client/psengine.cpp:2123
}}}
--
--
Ticket URL: <http://trac.crystalspace3d.org/trac/CS/ticket/989#comment:1>
CrystalSpace <http://www.crystalspace3d.org/>
Free open-source 3D SDK.
------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk