summaryrefslogtreecommitdiff
path: root/pjsip-apps
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2012-06-21 08:09:53 +0000
committerBenny Prijono <bennylp@teluu.com>2012-06-21 08:09:53 +0000
commitb1eca09ffbec5ba011743bfee90cdeabf545b16b (patch)
tree815c11b1f39e1f8a70b34c93dfeae02fddff8f8e /pjsip-apps
parent8f176cf7c8af5c681b7b616500b6eb32adb28887 (diff)
Fixed #1541: Crash in third party media sample application after library is restarted
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@4174 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip-apps')
-rw-r--r--pjsip-apps/src/3rdparty_media_sample/alt_pjsua_aud.c7
-rw-r--r--pjsip-apps/src/3rdparty_media_sample/alt_pjsua_vid.c10
2 files changed, 13 insertions, 4 deletions
diff --git a/pjsip-apps/src/3rdparty_media_sample/alt_pjsua_aud.c b/pjsip-apps/src/3rdparty_media_sample/alt_pjsua_aud.c
index 5bf80ae5..2b85421e 100644
--- a/pjsip-apps/src/3rdparty_media_sample/alt_pjsua_aud.c
+++ b/pjsip-apps/src/3rdparty_media_sample/alt_pjsua_aud.c
@@ -224,7 +224,7 @@ static void timer_to_send_aud_rtp(void *user_data)
pjsua_call_media *call_med = (pjsua_call_media*) user_data;
const char *pkt = "Not RTP packet";
- if (call_med->call->inv == NULL) {
+ if (!call_med->call || !call_med->call->inv || !call_med->tp) {
/* Call has been disconnected. There is race condition here as
* this cb may be called sometime after call has been disconnected */
return;
@@ -240,7 +240,7 @@ static void timer_to_send_aud_rtcp(void *user_data)
pjsua_call_media *call_med = (pjsua_call_media*) user_data;
const char *pkt = "Not RTCP packet";
- if (call_med->call->inv == NULL) {
+ if (!call_med->call || !call_med->call->inv || !call_med->tp) {
/* Call has been disconnected. There is race condition here as
* this cb may be called sometime after call has been disconnected */
return;
@@ -301,6 +301,9 @@ on_return:
return status;
}
+void pjsua_check_snd_dev_idle()
+{
+}
/*****************************************************************************
*
diff --git a/pjsip-apps/src/3rdparty_media_sample/alt_pjsua_vid.c b/pjsip-apps/src/3rdparty_media_sample/alt_pjsua_vid.c
index e10131f5..aac10e65 100644
--- a/pjsip-apps/src/3rdparty_media_sample/alt_pjsua_vid.c
+++ b/pjsip-apps/src/3rdparty_media_sample/alt_pjsua_vid.c
@@ -234,6 +234,12 @@ pj_status_t pjsua_vid_subsys_start(void)
/* Cleanup and deinitialize the video library */
pj_status_t pjsua_vid_subsys_destroy(void)
{
+ if (pjmedia_vid_codec_mgr_instance())
+ pjmedia_vid_codec_mgr_destroy(NULL);
+
+ if (pjmedia_video_format_mgr_instance())
+ pjmedia_video_format_mgr_destroy(NULL);
+
/*
* TODO: put your 3rd party library cleanup routine here
*/
@@ -291,7 +297,7 @@ static void timer_to_send_vid_rtp(void *user_data)
pjsua_call_media *call_med = (pjsua_call_media*) user_data;
const char *pkt = "Not RTP packet";
- if (call_med->call->inv == NULL) {
+ if (!call_med->call || !call_med->call->inv || !call_med->tp) {
/* Call has been disconnected. There is race condition here as
* this cb may be called sometime after call has been disconnected */
return;
@@ -307,7 +313,7 @@ static void timer_to_send_vid_rtcp(void *user_data)
pjsua_call_media *call_med = (pjsua_call_media*) user_data;
const char *pkt = "Not RTCP packet";
- if (call_med->call->inv == NULL) {
+ if (!call_med->call || !call_med->call->inv || !call_med->tp) {
/* Call has been disconnected. There is race condition here as
* this cb may be called sometime after call has been disconnected */
return;