Crystal Space
Welcome,
Guest
. Please
login
or
register
.
May 24, 2013, 02:02:42 pm
1 Hour
1 Day
1 Week
1 Month
Forever
Login with username, password and session length
Search:
Advanced search
9224
Posts in
2230
Topics by
5388
Members
Latest Member:
ryankbyers
Crystal Space
Crystal Space Development
Support
pure virtual method called
« previous
next »
Pages:
[
1
]
Author
Topic: pure virtual method called (Read 4054 times)
zamme
Newbie
Posts: 16
pure virtual method called
«
on:
August 02, 2009, 01:30:29 pm »
Hi all.
A problem with regions unloading.
When the player pass through a portal, CS crashes when it try to unload a region
or load the next one (I don't know exactly when to).
error message:
pure virtual method called
terminate called without an active exception
BT:
Program received signal SIGABRT, Aborted.
[Switching to Thread 0x7f23c0eb6730 (LWP 3918)]
0x00007f23bf821015 in raise () from /lib/libc.so.6
(gdb) bt
#0 0x00007f23bf821015 in raise () from /lib/libc.so.6
#1 0x00007f23bf822b83 in abort () from /lib/libc.so.6
#2 0x00007f23c00c5f94 in __gnu_cxx::__verbose_terminate_handler ()
from /usr/lib/libstdc++.so.6
#3 0x00007f23c00c4396 in ?? () from /usr/lib/libstdc++.so.6
#4 0x00007f23c00c43c3 in std::terminate () from /usr/lib/libstdc++.so.6
#5 0x00007f23c00c4c6f in __cxa_pure_virtual () from /usr/lib/libstdc++.so.6
#6 0x00007f23ba55332f in csEngine::GetNearbyMeshList (this=0x7f23c0e9dfc0,
sector=0xf4e, pos=@0x6, radius=2, list=@0xffffffffffffffff,
visited_sectors=@0xffffff00, crossPortals=true)
at /home/zamme/src/crystal/CS/plugins/engine/3d/engine.cpp:2819
#7 0x00007f23ba553dfc in csEngine::GetNearbyMeshes (this=0x7f23c0e9dfc0,
sector=0x7f23aa9331b8, pos=@0x7f23ae24eef8, radius=2, crossPortals=true)
at /home/zamme/src/crystal/CS/plugins/engine/3d/engine.cpp:2908
#8 0x00007f23b2ab40ae in celPlLayer::FindNearbyEntities (this=0x7f23c0e55810,
sector=0x7f23aa9331b8, pos=@0x7f23ae24eef8, radius=2, do_invisible=false,
cls=18446744073709551615)
at /home/zamme/src/crystal/CEL/plugins/stdphyslayer/pl.cpp:984
#9 0x00007f23aca3b53d in celPcTrigger::TickOnce (this=0x7f23ae24ecc0)
at /home/zamme/src/crystal/CEL/plugins/propclass/trigger/trigger.cpp:742
#10 0x00007f23b2abf896 in celPlLayer::HandleEvent (this=0x7f23c0e55810,
ev=<value optimized out>)
at /home/zamme/src/crystal/CEL/plugins/stdphyslayer/pl.cpp:126
---Type <return> to continue, or q <return> to quit---
#11 0x00007f23c076c281 in csEventTree::Dispatch (this=0x7f23b4006d50,
e=@0x7f23b0d1ad48)
at /home/zamme/src/crystal/CS/libs/csutil/cssubscription.cpp:576
#12 0x00007f23c076c688 in csEventTree::Notify (this=0x7f23b4006d50)
at /home/zamme/src/crystal/CS/libs/csutil/cssubscription.cpp:546
#13 0x00007f23c06fd9e1 in csEventQueue::iTypedFrameEventDispatcher::HandleEvent
(this=<value optimized out>) at ./include/csutil/cseventq.h:258
#14 0x00007f23c076c281 in csEventTree::Dispatch (this=0x229ab60,
e=@0x7f23c0dec088)
at /home/zamme/src/crystal/CS/libs/csutil/cssubscription.cpp:576
#15 0x00007f23c076c688 in csEventTree::Notify (this=0x229ab60)
at /home/zamme/src/crystal/CS/libs/csutil/cssubscription.cpp:546
#16 0x00007f23c06f953a in csEventQueue::Process (this=0x7f23c0ea2a00)
at /home/zamme/src/crystal/CS/libs/csutil/cseventq.cpp:285
#17 0x00007f23c077ea96 in csDefaultRunLoop (r=0x7f23c0ea33d0)
at /home/zamme/src/crystal/CS/libs/csutil/generic/runloop.cpp:99
#18 0x00000000004095f2 in csApplicationFramework::Run ()
at /home/zamme/src/crystal/CS/include/cstool/csapplicationframework.h:330
#19 0x0000000000406b73 in MainApp::Application (this=0x7fffc8fdce90)
at ../app.cpp:159
#20 0x00007f23c0819253 in csApplicationFramework::Main (this=0x7fffc8fdce90,
argc=<value optimized out>, argv=<value optimized out>)
at /home/zamme/src/crystal/CS/libs/cstool/csapplicationframework.cpp:131
---Type <return> to continue, or q <return> to quit---
#21 0x00000000004326c4 in main (argc=1, argv=0x7fffc8fdd078) at ../main.cpp:9
----------------------------------------------------------------------------------------------------------------------------------
Can it be from not attached meshes?
Thank you.
Logged
Vincent
Full Member
Posts: 191
Re: pure virtual method called
«
Reply #1 on:
August 03, 2009, 09:06:27 am »
Hello,
it's a bit hard to find out, without code nor data.
Do you use CEL zone manager system with zones ?
Logged
zamme
Newbie
Posts: 16
Re: pure virtual method called
«
Reply #2 on:
August 03, 2009, 03:52:18 pm »
Hi Vincent.
Yes. I didn't put code because using the zonemager.
I will try to attach all the entities and meshes to regions before zonemanager unloads them.
Is possible that zonemanager crashes when it try to unload not attached meshes?
Thanks.
P.S.: Do you remember when we talk about uvanim and animated texture, on the IRC?
I've tried uvanim with billboards but it doesn't works. It's only for meshes.
Logged
zamme
Newbie
Posts: 16
Re: pure virtual method called
«
Reply #3 on:
August 03, 2009, 04:43:23 pm »
Ok.
I attached all the entities and the "pure virtual method called" error has disappeared.
Now it crashes in:
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7ff54c6fb730 (LWP 10508)]
csEngine::GetNearbyMeshList (this=0x7ff54c6e2fc0, sector=0x7ff53950a978,
pos=@0x7ff540041ee8, radius=2, list=@0x7ff5381de000,
visited_sectors=@0x7fff54820b60, crossPortals=true)
at /home/zamme/src/crystal/CS/plugins/engine/3d/engine.cpp:2819
2819 iVisibilityCuller* culler = sector->GetVisibilityCuller ();
(gdb) bt
#0 csEngine::GetNearbyMeshList (this=0x7ff54c6e2fc0, sector=0x7ff53950a978,
pos=@0x7ff540041ee8, radius=2, list=@0x7ff5381de000,
visited_sectors=@0x7fff54820b60, crossPortals=true)
at /home/zamme/src/crystal/CS/plugins/engine/3d/engine.cpp:2819
#1 0x00007ff545d98dfc in csEngine::GetNearbyMeshes (this=0x7ff54c6e2fc0,
sector=0x7ff53950a978, pos=@0x7ff540041ee8, radius=2, crossPortals=true)
at /home/zamme/src/crystal/CS/plugins/engine/3d/engine.cpp:2908
I haven't included iengine/viscull.h. iVisibilityCuller depends on it. Is it the problem?
Logged
Vincent
Full Member
Posts: 191
Re: pure virtual method called
«
Reply #4 on:
August 06, 2009, 12:01:59 pm »
Can you attach an archive with code & data so we can try to reproduce that ?
Also, which CS & CEL version/revision do you use ?
Logged
zamme
Newbie
Posts: 16
Re: pure virtual method called
«
Reply #5 on:
August 08, 2009, 01:54:44 am »
Hi Vincent.
Svn:
https://opensvn.csie.org/svmres/trunk/
There is much code.
Look for world_Estabulari, at "Debug/data/level1/" directory.
The problem is when the zonemanager unloads the world_Estabulari region.
All is managed by the Zonemanager.
Is better to manage them manually?
I'm thinking to make it all whithout the zonemanager.
Thanks.
Logged
zamme
Newbie
Posts: 16
Re: pure virtual method called
«
Reply #6 on:
August 08, 2009, 10:40:35 am »
Sorry, Vincent.
CS trunk revision 32697.
CEL trunk revision 3929.
See you.
Logged
Pages:
[
1
]
« previous
next »
Jump to:
Please select a destination:
-----------------------------
Crystal Space Development
-----------------------------
=> General Crystal Space Discussion
=> Support
-----------------------------
Crystal Space Project Development
-----------------------------
=> Feature Requests
=> Plugins
=> Bug Reports
-----------------------------
Crystal Space Development
-----------------------------
=> Game Content Creation
-----------------------------
Miscellaneous
-----------------------------
=> Article/Tutorial Requests
=> Article/Tutorial Discussion
-----------------------------
Crystal Space Project Development
-----------------------------
=> Development Discussion
-----------------------------
Crystal Space Projects
-----------------------------
=> Project Discussion
=> WIP Projects
=> Finished Projects
-----------------------------
Associate Projects
-----------------------------
=> CEL Discussion
=> Crystal Core Discussion
=> CrystalBlend Discussion
-----------------------------
Crystal Space Project Development
-----------------------------
=> Google Summer of Code
-----------------------------
Associate Projects
-----------------------------
=> Apricot (Open Game)
=> Ares Project
Loading...