Hi All, I have shifted my development to the main branch for the following reasons:
a) To merge RTCP changes to the main-line release b) I need the multicast changes for mixing RTP audio. However, I have multiple issues -> basically I could not get my application to run at all with multiple crashes! Currently just how unstable is the main branch? Issues I have identified up to this point: 1) Seems to be an issue in MpCallFlowGraph.cpp, The mpEncoders array is not initialised to NULL. 2) In mpStartTasks() (in MpMisc.cpp) the logic seems the wrong away around, if NetInTask::getNetInTask returns a non-null value the function calls dmaShutdown() and returns an error 3) Static codecs are freed multiple times (still) I have fixed this only freeing the codecs if the single pointer is not NULL. Patches attached... Regards Paul
Index: src/mp/MpCallFlowGraph.cpp =================================================================== --- src/mp/MpCallFlowGraph.cpp (revision 11075) +++ src/mp/MpCallFlowGraph.cpp (working copy) @@ -110,11 +110,12 @@ for (i=0; i<MAX_CONNECTIONS; i++) { - mpInputConnections[i] = NULL; - mNumRtpStreams[i] = -1; - mpDecoders[i] = NULL; - mpMcastMixer[i] = NULL; + mpInputConnections[i] = NULL; mpOutputConnections[i] = NULL; + mNumRtpStreams[i] = -1; + mpDecoders[i] = NULL; + mpEncoders[i] = NULL; + mpMcastMixer[i] = NULL; } for (i=0; i<MAX_RECORDERS; i++) mpRecorders[i] = NULL; Index: src/mp/MpCodecFactory.cpp =================================================================== --- src/mp/MpCodecFactory.cpp (revision 11075) +++ src/mp/MpCodecFactory.cpp (working copy) @@ -94,12 +94,16 @@ void MpCodecFactory::freeSingletonHandle() { sLock.acquire(); - freeStaticCodecs(); if (spInstance != NULL) { delete spInstance; spInstance = NULL; + + sLock.release(); + + freeStaticCodecs(); } + else sLock.release(); }
_______________________________________________ sipxtapi-dev mailing list sipxtapi-dev@list.sipfoundry.org List Archive: http://list.sipfoundry.org/archive/sipxtapi-dev/