[Bug 633] New: core-test segfaults and event-test double frees

For more infomation about this bug, visit <https://www.fmtc.be/bugzilla/orocos/show_bug.cgi?id=633>
Summary: core-test segfaults and event-test double frees
Product: RTT
Version: rtt-trunk
Platform: All
OS/Version: All
Status: NEW
Severity: normal
Priority: P3
Component: Tests
AssignedTo: orocos-dev [..] ...
ReportedBy: ruben [dot] smits [..] ...
CC: orocos-dev [..] ...
Estimated Hours: 0.0

Created an attachment (id=398)
--> (https://www.fmtc.be/bugzilla/orocos/attachment.cgi?id=398)
event-test gdb-backtrace

Hi,

i updated my rtt-trunk to r30011 and core-test and event-test are failing:

I'm using GNU/Linux, gcc (Ubuntu 4.3.2-1ubuntu12) 4.3.2, and compiled with
Debug.

The gdb-backtrace for the core-test segfault:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x427e9950 (LWP 18721)]
0x00000000004e281d in __gnu_cxx::new_allocator<Dummy*>::construct
(this=0x21ee240, __p=0x7fc5695d29c8, __val=@0x2210000) at
/usr/include/c++/4.3/ext/new_allocator.h:108
108 { ::new((void *)__p) _Tp(__val); }
(gdb) bt
#0 0x00000000004e281d in __gnu_cxx::new_allocator<Dummy*>::construct
(this=0x21ee240, __p=0x7fc5695d29c8, __val=@0x2210000) at
/usr/include/c++/4.3/ext/new_allocator.h:108
#1 0x00000000004eae01 in std::vector<Dummy*, std::allocator >::push_back (this=0x21ee240, __x=@0x2210000) at
/usr/include/c++/4.3/bits/stl_vector.h:690
#2 0x00000000004eb11f in RTT::AtomicQueue<Dummy*, RTT::NonBlockingPolicy,
RTT::NonBlockingPolicy>::dequeue (this=0x21e9950, result=@0x427e9018)
at /home/rsmits/workspace/rtt/src/AtomicQueue.hpp:295
#3 0x00000000004eb221 in AQWorker::step (this=0x21e70c0) at
/home/rsmits/workspace/rtt/tests/buffers_test.cpp:720
#4 0x00007fc567efc658 in RTT::OS::RunnableInterface::loop (this=0x21e70c0) at
/home/rsmits/workspace/rtt/src/os/RunnableInterface.cpp:60
#5 0x00007fc567eff558 in RTT::OS::SingleThread::loop (this=0x21eea20) at
/home/rsmits/workspace/rtt/src/os/SingleThread.cpp:356
#6 0x00007fc567f0107e in RTT::OS::singleThread_f (t=0x21eea20) at
/home/rsmits/workspace/rtt/src/os/SingleThread.cpp:111
#7 0x00007fc5692103ea in start_thread () from /lib/libpthread.so.0
#8 0x00007fc566d67cbd in clone () from /lib/libc.so.6
#9 0x0000000000000000 in ?? ()

for the event-test i get:

*** glibc detected *** tests/event-test: double free or corruption (out):
0x00007fc74400aad0 ***
======= Backtrace: =========
/lib/libc.so.6[0x7fc74a468a58]
/lib/libc.so.6(cfree+0x76)[0x7fc74a46b0a6]
Segmentation fault

the gdb-backtrace is attached, because it's too long to put in the mail