crash of ccrtp application

Harald Haspl <[email protected]>
Newsgroups gmane.comp.gnu.ccrtp.devel
Organization apus Software GesmbH
Message-ID <[email protected]>
Hi!

My ccrtp-Application sometimes crashes unpredictable (segmentation fault).
The stack-backtrace always looks like the output attached to the end of this 
text.

Has anyone an idea what is going wrong there?
I do not evaluate RTCP Packets in the application, so I have not implemented 
those function in my code (onGotSDES,...)

Are there any special things I have to consider when I use the ccrtp library?
(ccrtp 1.3.6)


My class "Interface" is inherited from ost::SingleThreadRTPSession.

Interface::Interface : ost::SingleThreadRTPSession<> 
(ost::InetHostAddress("224.0.0.1"), 3100, 3101) {
	setSchedulingTimeout(10000);
	setExpireTimeout(1000000);
	addDestination(ost::InetHostAddress("224.0.0.1", 3100));
	setPayloadFormat(ost::StaticPayloadFormat(ost::sptPCMU));
	startRunning();
}


I send my data like that:

void Interface::sendMessage(const std::string& msg) {
      putData(getCurrentTimeStamp(),
		reinterpret_cast<const unsigned char*>(msg.c_str()),
                s.size());
}


and receiving the following way:

void Interface::operate() {
	while(true) {
		const ost::AppDataUnit* adu = 0;
		if (isWaiting()) {
                        adu = getData(getFirstTimestamp()); 
		}
		if(adu) {
			handleMessage(adu->getData(), adu->getSize());
			delete adu;
		} else {
			ZThread::Thread::yield();
		}
	}
}



best regards,
Harald.


Backtrace of the core-file:

(gdb) bt
#0  0xb6d5a7c7 in raise () from /lib/tls/libc.so.6
#1  0xb6d5c1c9 in abort () from /lib/tls/libc.so.6
#2  0xb6d91525 in __fsetlocking () from /lib/tls/libc.so.6
#3  0xb6d97b77 in malloc_usable_size () from /lib/tls/libc.so.6
#4  0xb6d98012 in free () from /lib/tls/libc.so.6
#5  0xb6f4a5b1 in operator delete () from /usr/lib/libstdc++.so.6
#6  0xb6f2733d in std::string::_Rep::_M_destroy () 
from /usr/lib/libstdc++.so.6
#7  0xb6f28c4d in std::string::assign () from /usr/lib/libstdc++.so.6
#8  0xb71584b3 in ost::SDESItemsHolder::setItem () 
from /usr/lib/libccrtp1-1.3.so.0
#9  0xb7162a3d in ost::QueueRTCPManager::setSDESItem () 
from /usr/lib/libccrtp1-1.3.so.0
#10 0xb7162d05 in ost::QueueRTCPManager::onGotSDESChunk () 
from /usr/lib/libccrtp1-1.3.so.0
#11 0xb7160219 in ost::QueueRTCPManager::onGotSDES () 
from /usr/lib/libccrtp1-1.3.so.0
#12 0xb7162242 in ost::QueueRTCPManager::takeInControlPacket () 
from /usr/lib/libccrtp1-1.3.so.0
#13 0xb7162358 in ost::QueueRTCPManager::controlReceptionService () 
from /usr/lib/libccrtp1-1.3.so.0
#14 0xb7f10ec5 in 
ost::SingleThreadRTPSession<ost::DualRTPChannel<ost::RTPBaseUDPIPv4Socket>, 
ost::DualRTPChannel<ost::RTPBaseUDPIPv4Socket>, ost::AVPQueue>::run 
(this=0xb4121ea8) at rtp.h:480
#15 0xb70c9872 in ost::ThreadImpl::ThreadExecHandler () 
from /usr/lib/libccgnu2-1.3.so.1
#16 0xb70c8993 in ost::Thread::yield () from /usr/lib/libccgnu2-1.3.so.1
#17 0xb74a3ced in start_thread () from /lib/tls/libpthread.so.0
#18 0xb6e02dde in clone () from /lib/tls/libc.so.6




-- 
Harald Haspl

apus | Software GmbH
Bahnhofstrasse 1, A-8074 Graz-Raaba
T | +43 316 401629 0   F | +43 316 401629 9
http://www.apus.co.at  [email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.