[Live-devel] RTCPInstance::onExpire do not unscheduled from desctructor

Sergey Kuprienko demthedj at gmail.com
Tue Feb 11 22:37:13 PST 2014


I'm using several RTSP clients threads in my app.

Occasionaly in test environment, when RTSP servers are frequently
restarted, i'm catching SIGSEGV here :

~"#0 RTCPInstance::numMembers (this=0x7fffaca5e6e0) at RTCP.cpp:234\n"

>~"#1 0x00007ffff6246823 in RTCPInstance::onExpire1 (this=0x7fffaca5e6e0)
at RTCP.cpp:926\n"

>~"#2 0x00007ffff6246873 in RTCPInstance::onExpire (instance=<optimized
out>) at RTCP.cpp:694\n"

>~"#3 0x00007ffff624417b in AlarmHandler::handleTimeout
(this=0x7fffac9437e0) at BasicTaskScheduler0.cpp:34\n"

>~"#4 0x00007ffff62445e2 in DelayQueue::handleAlarm (this=0x7fffac001d28)
at DelayQueue.cpp:187\n"

>~"#5 0x00007ffff6242f8a in CPollTaskScheduler::SingleStep
(this=0x7fffac001d20, maxDelayTime=<optimized out>) at
cpolltaskscheduler.cpp:204\n"

>~"#6 0x00007ffff6243b95 in BasicTaskScheduler0::doEventLoop
(this=0x7fffac001d20, watchVariable=0xc73200 \"\") at
BasicTaskScheduler0.cpp:80\n"

>~"#7 0x00007ffff6242376 in CRTSPv2ClientThread::run (this=0xc73100) at
crtspv2clientthread.cpp:223\n"

I made some debugging and believe "this" is invalid at
RTCPInstance::numMembers.
It seems RTCPInstance was destroyed due to closing subsessions, but
unshedule() of  onExpire() was not performed.


What are the conditions that may lead to that ?
ps. I use several  - up to 4 -  RTSP clients per single
TaskScheduler + dedicated UsageEnvironment.


-- 
Сергей Куприенко
Отдел разработки ПО, "Эф-Эф"
Sergey Kuprienko
Head of software development dpt.

http://www.f-f.kiev.ua
+38 097 985 15 69
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.live555.com/pipermail/live-devel/attachments/20140212/4012cb35/attachment.html>


More information about the live-devel mailing list