diff options
-rw-r--r-- | res/res_pjsip_pubsub.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/res/res_pjsip_pubsub.c b/res/res_pjsip_pubsub.c index cbedaf28c..99376b142 100644 --- a/res/res_pjsip_pubsub.c +++ b/res/res_pjsip_pubsub.c @@ -1208,7 +1208,10 @@ static void subscription_tree_destructor(void *obj) destroy_subscriptions(sub_tree->root); - ast_sip_push_task_synchronous(sub_tree->serializer, subscription_unreference_dialog, sub_tree); + if (sub_tree->dlg) { + ast_sip_push_task_synchronous(sub_tree->serializer, subscription_unreference_dialog, sub_tree); + } + ast_taskprocessor_unreference(sub_tree->serializer); ast_module_unref(ast_module_info->self); } |