DanielChappuis / reactphysics3d

Open source C++ physics engine library in 3D

Home Page:http://www.reactphysics3d.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

mBaseAllocator.release pure virtual method called causing SIGABRT

ZeunO8 opened this issue · comments

commented
pure virtual method called
terminate called without an active exception

Thread 1 "Cojarexp" received signal SIGABRT, Aborted.
__pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:44
44	./nptl/pthread_kill.c: No such file or directory.
(gdb) up
#1  __pthread_kill_internal (signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:78
78	in ./nptl/pthread_kill.c
(gdb) 
#2  __GI___pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
89	in ./nptl/pthread_kill.c
(gdb) 
#3  0x00007ffff663c406 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
26	../sysdeps/posix/raise.c: No such file or directory.
(gdb) 
#4  0x00007ffff662287c in __GI_abort () at ./stdlib/abort.c:79
79	./stdlib/abort.c: No such file or directory.
(gdb) 
#5  0x00007ffff6aa4f06 in ?? () from /lib/x86_64-linux-gnu/libstdc++.so.6
(gdb) 
#6  0x00007ffff6ab6eac in ?? () from /lib/x86_64-linux-gnu/libstdc++.so.6
(gdb) 
#7  0x00007ffff6ab6f17 in std::terminate() () from /lib/x86_64-linux-gnu/libstdc++.so.6
(gdb) 
#8  0x00007ffff6ab7c45 in __cxa_pure_virtual () from /lib/x86_64-linux-gnu/libstdc++.so.6
(gdb) 
#9  0x00007ffff6ff9f7c in reactphysics3d::HeapAllocator::~HeapAllocator (this=0x7ffff01e8590, __in_chrg=<optimized out>)
    at /home/saeun/Projects/coje/venjor/reactphysics3d/src/memory/HeapAllocator.cpp:69
69	        mBaseAllocator.release(static_cast<void*>(unit), unitSize + sizeof(MemoryUnitHeader));
(gdb) print mBaseAllocator
$4 = (reactphysics3d::MemoryAllocator &) @0x555555813378: {_vptr.MemoryAllocator = 0x5555555cd8c0 <vtable for reactphysics3d::MemoryAllocator+16>}
(gdb)  up
#10 0x00007ffff6f04585 in reactphysics3d::MemoryManager::~MemoryManager (this=0x7ffff01e8580, __in_chrg=<optimized out>)
    at /home/saeun/Projects/coje/venjor/reactphysics3d/include/reactphysics3d/memory/MemoryManager.h:83
83	       ~MemoryManager() = default;
(gdb) 
#11 0x00007ffff6eff915 in reactphysics3d::PhysicsCommon::~PhysicsCommon (this=0x7ffff01e8580, __in_chrg=<optimized out>)
    at /home/saeun/Projects/coje/venjor/reactphysics3d/src/engine/PhysicsCommon.cpp:57
57	}
(gdb) 
#12 0x00007ffff77b135f in operator() (__closure=0x7ffff01e8e48, physicsCommon=0x7ffff01e8580) at /home/saeun/Projects/coje/src/Scene.cpp:196
196	   delete physicsCommon;

Could you please look into this?

Thanks for reporting this issue. Can you please tell me in which version/branch of the library this happens?

commented

On the latest develop branch

commented

I will implement an abstract physics driver in my engine for swapping out physics engines, then give rp3d a go with the latest version

Ok perfect. I have recently fixed an issue with this commit in the develop branch that might be the cause of this crash. I will release it soon in version 0.10.1.

I am really interested in your feedback.