[Live-devel] problem processing RTSP TEARDOWN
PROMONET Michel
michel.promonet at thalesgroup.com
Fri Jan 17 07:48:46 PST 2014
Hi Ross,
I did not say RTSPClientSession will deleted twice, I just report an access to an object after its deletion.
The problem report by valgrind occurs processing TEARDOWN because :
- RTSPServer:1016 clientSession->handleCmd_withinSession(this, cmdName, urlPreSuffix, urlSuffix, (char const*)fRequestBuffer);
=> delete the RTSPClientSession the is pointed by clientSession.
- RTSPServer:1098 if (clientSession != NULL && clientSession->fStreamAfterSETUP && strcmp(cmdName, "SETUP") == 0) {
ð The deleted clientSession is not NULL, point on a unallocated memory and clientSession->fStreamAfterSETUP is evaluated.
Running under debugger show that clientSession is no more allocated when clientSession->fStreamAfterSETUP is evaluated.
I guess that till the memory is mapped on something, it will work.
But I am not sure that in certain situation the memory could become no more valid and perhaps raise a segment violation .
Are you sure that accessing to an memory that was freed could not raise any problem ?
Best Regards,
Michel.
[@@ THALES GROUP INTERNAL @@]
De : live-devel-bounces at ns.live555.com [mailto:live-devel-bounces at ns.live555.com] De la part de Ross Finlayson
Envoyé : vendredi 17 janvier 2014 15:51
À : LIVE555 Streaming Media - development & use
Objet : Re: [Live-devel] problem processing RTSP TEARDOWN
"valgrind" frequently reports 'false positives' - i.e., 'errors' that aren't really errors. Therefore, I don't pay attention to "valgrind" reports, unless they're accompanied by a report of a real problem (such as a crash), or an identification of a specific bug in the code. In other words, a "valgrind" report, is not, per se, a "problem".
In this case, I don't see any problem in the code. The "RTSPClientSession" object is looked up - for each request - by looking up the 'session id string' in a hash table. The "RTSPClientSession" destructor (which is called when handling a "TEARDOWN") also removes the object from the hash table. So I don't see any way that a "RTSPClientSession" object can get deleted twice.
So, right now I don't see this "valgrind" report as indicating a real problem.
Ross Finlayson
Live Networks, Inc.
http://www.live555.com/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.live555.com/pipermail/live-devel/attachments/20140117/1b9b76ad/attachment-0001.html>
More information about the live-devel
mailing list