summaryrefslogtreecommitdiff
path: root/pjmedia/src/pjmedia/endpoint.c
diff options
context:
space:
mode:
Diffstat (limited to 'pjmedia/src/pjmedia/endpoint.c')
-rw-r--r--pjmedia/src/pjmedia/endpoint.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/pjmedia/src/pjmedia/endpoint.c b/pjmedia/src/pjmedia/endpoint.c
index 43ed4ccf..bf9d3c91 100644
--- a/pjmedia/src/pjmedia/endpoint.c
+++ b/pjmedia/src/pjmedia/endpoint.c
@@ -219,13 +219,6 @@ PJ_DEF(pj_status_t) pjmedia_endpt_destroy (pjmedia_endpt *endpt)
}
}
- /* Call all registered exit callbacks */
- ecb = endpt->exit_cb_list.next;
- while (ecb != &endpt->exit_cb_list) {
- (*ecb->func)(endpt);
- ecb = ecb->next;
- }
-
/* Destroy internal ioqueue */
if (endpt->ioqueue && endpt->own_ioqueue) {
pj_ioqueue_destroy(endpt->ioqueue);
@@ -236,6 +229,14 @@ PJ_DEF(pj_status_t) pjmedia_endpt_destroy (pjmedia_endpt *endpt)
pjmedia_codec_mgr_destroy(&endpt->codec_mgr);
pjmedia_aud_subsys_shutdown();
+
+ /* Call all registered exit callbacks */
+ ecb = endpt->exit_cb_list.next;
+ while (ecb != &endpt->exit_cb_list) {
+ (*ecb->func)(endpt);
+ ecb = ecb->next;
+ }
+
pj_pool_release (endpt->pool);
return PJ_SUCCESS;