From 52bd651923fc669cd58007de4018cd6bdb94f329 Mon Sep 17 00:00:00 2001 From: Nanang Izzuddin Date: Thu, 19 Jan 2017 07:41:25 +0000 Subject: Re #1513: Applied the new API pj_pool_safe_release(). git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@5534 74dad513-b988-da41-8d7b-12977e46ad98 --- pjlib-util/src/pjlib-util/dns_server.c | 6 +----- pjlib-util/src/pjlib-util/resolver.c | 7 ++----- pjlib/include/pj/pool_i.h | 3 ++- pjmedia/src/pjmedia-audiodev/legacy_dev.c | 9 ++------- pjmedia/src/pjmedia-audiodev/null_dev.c | 4 +--- pjmedia/src/pjmedia-videodev/avi_dev.c | 4 +--- pjmedia/src/pjmedia-videodev/colorbar_dev.c | 4 +--- pjmedia/src/pjmedia/clock_thread.c | 7 ++----- pjmedia/src/pjmedia/stream.c | 7 ++----- pjmedia/src/pjmedia/transport_ice.c | 6 +----- pjmedia/src/pjmedia/vid_stream.c | 6 +----- pjnath/src/pjnath-test/ice_test.c | 6 +----- pjnath/src/pjnath-test/server.c | 6 +----- pjnath/src/pjnath/ice_session.c | 7 ++----- pjnath/src/pjnath/stun_sock.c | 6 +----- pjnath/src/pjnath/turn_session.c | 6 +----- pjnath/src/pjnath/turn_sock.c | 4 +--- pjsip-apps/src/pjsua/pjsua_app.c | 5 +---- pjsip/src/pjsip/sip_transport_tcp.c | 6 +----- pjsip/src/pjsip/sip_transport_tls.c | 6 +----- 20 files changed, 26 insertions(+), 89 deletions(-) diff --git a/pjlib-util/src/pjlib-util/dns_server.c b/pjlib-util/src/pjlib-util/dns_server.c index 5e80ceb4..f06fc06a 100644 --- a/pjlib-util/src/pjlib-util/dns_server.c +++ b/pjlib-util/src/pjlib-util/dns_server.c @@ -124,11 +124,7 @@ PJ_DEF(pj_status_t) pj_dns_server_destroy(pj_dns_server *srv) srv->asock = NULL; } - if (srv->pool) { - pj_pool_t *pool = srv->pool; - srv->pool = NULL; - pj_pool_release(pool); - } + pj_pool_safe_release(&srv->pool); return PJ_SUCCESS; } diff --git a/pjlib-util/src/pjlib-util/resolver.c b/pjlib-util/src/pjlib-util/resolver.c index 890f89d9..ad1787b3 100644 --- a/pjlib-util/src/pjlib-util/resolver.c +++ b/pjlib-util/src/pjlib-util/resolver.c @@ -513,11 +513,8 @@ PJ_DEF(pj_status_t) pj_dns_resolver_destroy( pj_dns_resolver *resolver, resolver->mutex = NULL; } - if (resolver->pool) { - pj_pool_t *pool = resolver->pool; - resolver->pool = NULL; - pj_pool_release(pool); - } + pj_pool_safe_release(&resolver->pool); + return PJ_SUCCESS; } diff --git a/pjlib/include/pj/pool_i.h b/pjlib/include/pj/pool_i.h index b57530c8..65eeb5ae 100644 --- a/pjlib/include/pj/pool_i.h +++ b/pjlib/include/pj/pool_i.h @@ -97,5 +97,6 @@ PJ_IDEF(void) pj_pool_safe_release( pj_pool_t **ppool ) { pj_pool_t *pool = *ppool; *ppool = NULL; - pj_pool_release(pool); + if (pool) + pj_pool_release(pool); } diff --git a/pjmedia/src/pjmedia-audiodev/legacy_dev.c b/pjmedia/src/pjmedia-audiodev/legacy_dev.c index c1896987..19e383b4 100644 --- a/pjmedia/src/pjmedia-audiodev/legacy_dev.c +++ b/pjmedia/src/pjmedia-audiodev/legacy_dev.c @@ -141,9 +141,7 @@ static pj_status_t factory_destroy(pjmedia_aud_dev_factory *f) status = pjmedia_snd_deinit(); if (status == PJ_SUCCESS) { - pj_pool_t *pool = wf->pool; - wf->pool = NULL; - pj_pool_release(pool); + pj_pool_safe_release(&wf->pool); } return status; @@ -455,10 +453,7 @@ static pj_status_t stream_destroy(pjmedia_aud_stream *s) status = pjmedia_snd_stream_close(strm->snd_strm); if (status == PJ_SUCCESS) { - pj_pool_t *pool = strm->pool; - - strm->pool = NULL; - pj_pool_release(pool); + pj_pool_safe_release(&strm->pool); } return status; diff --git a/pjmedia/src/pjmedia-audiodev/null_dev.c b/pjmedia/src/pjmedia-audiodev/null_dev.c index 01f10516..afe55438 100644 --- a/pjmedia/src/pjmedia-audiodev/null_dev.c +++ b/pjmedia/src/pjmedia-audiodev/null_dev.c @@ -160,10 +160,8 @@ static pj_status_t null_factory_init(pjmedia_aud_dev_factory *f) static pj_status_t null_factory_destroy(pjmedia_aud_dev_factory *f) { struct null_audio_factory *nf = (struct null_audio_factory*)f; - pj_pool_t *pool = nf->pool; - nf->pool = NULL; - pj_pool_release(pool); + pj_pool_safe_release(&nf->pool); return PJ_SUCCESS; } diff --git a/pjmedia/src/pjmedia-videodev/avi_dev.c b/pjmedia/src/pjmedia-videodev/avi_dev.c index a398b8cc..df2eea3d 100644 --- a/pjmedia/src/pjmedia-videodev/avi_dev.c +++ b/pjmedia/src/pjmedia-videodev/avi_dev.c @@ -192,10 +192,8 @@ static pj_status_t avi_factory_init(pjmedia_vid_dev_factory *f) static pj_status_t avi_factory_destroy(pjmedia_vid_dev_factory *f) { struct avi_factory *cf = (struct avi_factory*)f; - pj_pool_t *pool = cf->pool; - cf->pool = NULL; - pj_pool_release(pool); + pj_pool_safe_release(&cf->pool); return PJ_SUCCESS; } diff --git a/pjmedia/src/pjmedia-videodev/colorbar_dev.c b/pjmedia/src/pjmedia-videodev/colorbar_dev.c index a65b0d65..f892a074 100644 --- a/pjmedia/src/pjmedia-videodev/colorbar_dev.c +++ b/pjmedia/src/pjmedia-videodev/colorbar_dev.c @@ -252,10 +252,8 @@ static pj_status_t cbar_factory_init(pjmedia_vid_dev_factory *f) static pj_status_t cbar_factory_destroy(pjmedia_vid_dev_factory *f) { struct cbar_factory *cf = (struct cbar_factory*)f; - pj_pool_t *pool = cf->pool; - cf->pool = NULL; - pj_pool_release(pool); + pj_pool_safe_release(&cf->pool); return PJ_SUCCESS; } diff --git a/pjmedia/src/pjmedia/clock_thread.c b/pjmedia/src/pjmedia/clock_thread.c index 3423bf21..73fb5fdd 100644 --- a/pjmedia/src/pjmedia/clock_thread.c +++ b/pjmedia/src/pjmedia/clock_thread.c @@ -415,11 +415,8 @@ PJ_DEF(pj_status_t) pjmedia_clock_destroy(pjmedia_clock *clock) clock->lock = NULL; } - if (clock->pool) { - pj_pool_t *pool = clock->pool; - clock->pool = NULL; - pj_pool_release(pool); - } + pj_pool_safe_release(&clock->pool); + return PJ_SUCCESS; } diff --git a/pjmedia/src/pjmedia/stream.c b/pjmedia/src/pjmedia/stream.c index 34067ae1..082ec6ea 100644 --- a/pjmedia/src/pjmedia/stream.c +++ b/pjmedia/src/pjmedia/stream.c @@ -2571,11 +2571,8 @@ PJ_DEF(pj_status_t) pjmedia_stream_destroy( pjmedia_stream *stream ) } #endif - if (stream->own_pool) { - pj_pool_t *pool = stream->own_pool; - stream->own_pool = NULL; - pj_pool_release(pool); - } + pj_pool_safe_release(&stream->own_pool); + return PJ_SUCCESS; } diff --git a/pjmedia/src/pjmedia/transport_ice.c b/pjmedia/src/pjmedia/transport_ice.c index 40a4d569..2bf9ec90 100644 --- a/pjmedia/src/pjmedia/transport_ice.c +++ b/pjmedia/src/pjmedia/transport_ice.c @@ -1878,11 +1878,7 @@ static pj_status_t transport_destroy(pjmedia_transport *tp) tp_ice->ice_st = NULL; } - if (tp_ice->pool) { - pj_pool_t *pool = tp_ice->pool; - tp_ice->pool = NULL; - pj_pool_release(pool); - } + pj_pool_safe_release(&tp_ice->pool); return PJ_SUCCESS; } diff --git a/pjmedia/src/pjmedia/vid_stream.c b/pjmedia/src/pjmedia/vid_stream.c index 234cbc64..68d39173 100644 --- a/pjmedia/src/pjmedia/vid_stream.c +++ b/pjmedia/src/pjmedia/vid_stream.c @@ -1804,11 +1804,7 @@ PJ_DEF(pj_status_t) pjmedia_vid_stream_destroy( pjmedia_vid_stream *stream ) } #endif - if (stream->own_pool) { - pj_pool_t *pool = stream->own_pool; - stream->own_pool = NULL; - pj_pool_release(pool); - } + pj_pool_safe_release(&stream->own_pool); return PJ_SUCCESS; } diff --git a/pjnath/src/pjnath-test/ice_test.c b/pjnath/src/pjnath-test/ice_test.c index 80f8c480..98456aaa 100644 --- a/pjnath/src/pjnath-test/ice_test.c +++ b/pjnath/src/pjnath-test/ice_test.c @@ -402,11 +402,7 @@ static void destroy_sess(struct test_sess *sess, unsigned wait_msec) sess->server2 = NULL; } - if (sess->pool) { - pj_pool_t *pool = sess->pool; - sess->pool = NULL; - pj_pool_release(pool); - } + pj_pool_safe_release(&sess->pool); } static void ice_on_rx_data(pj_ice_strans *ice_st, diff --git a/pjnath/src/pjnath-test/server.c b/pjnath/src/pjnath-test/server.c index 0205f4a0..c1644cae 100644 --- a/pjnath/src/pjnath-test/server.c +++ b/pjnath/src/pjnath-test/server.c @@ -254,11 +254,7 @@ void destroy_test_server(test_server *test_srv) test_srv->dns_server = NULL; } - if (test_srv->pool) { - pj_pool_t *pool = test_srv->pool; - test_srv->pool = NULL; - pj_pool_release(pool); - } + pj_pool_safe_release(&test_srv->pool); } static pj_bool_t stun_on_data_recvfrom(pj_activesock_t *asock, diff --git a/pjnath/src/pjnath/ice_session.c b/pjnath/src/pjnath/ice_session.c index ed4b055c..159d7b1d 100644 --- a/pjnath/src/pjnath/ice_session.c +++ b/pjnath/src/pjnath/ice_session.c @@ -461,11 +461,8 @@ static void ice_on_destroy(void *obj) { pj_ice_sess *ice = (pj_ice_sess*) obj; - if (ice->pool) { - pj_pool_t *pool = ice->pool; - ice->pool = NULL; - pj_pool_release(pool); - } + pj_pool_safe_release(&ice->pool); + LOG4((THIS_FILE, "ICE session %p destroyed", ice)); } diff --git a/pjnath/src/pjnath/stun_sock.c b/pjnath/src/pjnath/stun_sock.c index 5623a164..8aa6dc9a 100644 --- a/pjnath/src/pjnath/stun_sock.c +++ b/pjnath/src/pjnath/stun_sock.c @@ -474,11 +474,7 @@ static void stun_sock_destructor(void *obj) } */ - if (stun_sock->pool) { - pj_pool_t *pool = stun_sock->pool; - stun_sock->pool = NULL; - pj_pool_release(pool); - } + pj_pool_safe_release(&stun_sock->pool); TRACE_(("", "STUN sock %p destroyed", stun_sock)); diff --git a/pjnath/src/pjnath/turn_session.c b/pjnath/src/pjnath/turn_session.c index d3ff6ced..fa3eea7b 100644 --- a/pjnath/src/pjnath/turn_session.c +++ b/pjnath/src/pjnath/turn_session.c @@ -328,12 +328,8 @@ static void turn_sess_on_destroy(void *comp) /* Destroy pool */ if (sess->pool) { - pj_pool_t *pool = sess->pool; - PJ_LOG(4,(sess->obj_name, "TURN client session destroyed")); - - sess->pool = NULL; - pj_pool_release(pool); + pj_pool_safe_release(&sess->pool); } } diff --git a/pjnath/src/pjnath/turn_sock.c b/pjnath/src/pjnath/turn_sock.c index ef28803a..2f1680e6 100644 --- a/pjnath/src/pjnath/turn_sock.c +++ b/pjnath/src/pjnath/turn_sock.c @@ -217,10 +217,8 @@ static void turn_sock_on_destroy(void *comp) pj_turn_sock *turn_sock = (pj_turn_sock*) comp; if (turn_sock->pool) { - pj_pool_t *pool = turn_sock->pool; PJ_LOG(4,(turn_sock->obj_name, "TURN socket destroyed")); - turn_sock->pool = NULL; - pj_pool_release(pool); + pj_pool_safe_release(&turn_sock->pool); } } diff --git a/pjsip-apps/src/pjsua/pjsua_app.c b/pjsip-apps/src/pjsua/pjsua_app.c index 9a598b5f..4a161f75 100644 --- a/pjsip-apps/src/pjsua/pjsua_app.c +++ b/pjsip-apps/src/pjsua/pjsua_app.c @@ -2010,10 +2010,7 @@ static pj_status_t app_destroy() pjsua_conf_remove_port(app_config.tone_slots[i]); } - if (app_config.pool) { - pj_pool_release(app_config.pool); - app_config.pool = NULL; - } + pj_pool_safe_release(&app_config.pool); status = pjsua_destroy(); diff --git a/pjsip/src/pjsip/sip_transport_tcp.c b/pjsip/src/pjsip/sip_transport_tcp.c index 9ac91618..0fed5ef1 100644 --- a/pjsip/src/pjsip/sip_transport_tcp.c +++ b/pjsip/src/pjsip/sip_transport_tcp.c @@ -566,12 +566,8 @@ static void lis_on_destroy(void *arg) } if (listener->factory.pool) { - pj_pool_t *pool = listener->factory.pool; - PJ_LOG(4,(listener->factory.obj_name, "SIP TCP transport destroyed")); - - listener->factory.pool = NULL; - pj_pool_release(pool); + pj_pool_safe_release(&listener->factory.pool); } } diff --git a/pjsip/src/pjsip/sip_transport_tls.c b/pjsip/src/pjsip/sip_transport_tls.c index c1789641..d325c03d 100644 --- a/pjsip/src/pjsip/sip_transport_tls.c +++ b/pjsip/src/pjsip/sip_transport_tls.c @@ -603,12 +603,8 @@ static void lis_on_destroy(void *arg) } if (listener->factory.pool) { - pj_pool_t *pool = listener->factory.pool; - PJ_LOG(4,(listener->factory.obj_name, "SIP TLS transport destroyed")); - - listener->factory.pool = NULL; - pj_pool_release(pool); + pj_pool_safe_release(&listener->factory.pool); } } -- cgit v1.2.3