diff options
Diffstat (limited to 'res')
-rw-r--r-- | res/res_pjsip.c | 48 | ||||
-rw-r--r-- | res/res_pjsip.exports.in | 1 | ||||
-rw-r--r-- | res/res_pjsip/pjsip_session.c | 10 | ||||
-rw-r--r-- | res/res_pjsip_session.exports.in | 1 |
4 files changed, 26 insertions, 34 deletions
diff --git a/res/res_pjsip.c b/res/res_pjsip.c index ac275bd08..fb919b32b 100644 --- a/res/res_pjsip.c +++ b/res/res_pjsip.c @@ -2422,25 +2422,20 @@ static int register_service_noref(void *data) return 0; } -static int register_service(void *data) -{ - int res; - - if (!(res = register_service_noref(data))) { - ast_module_ref(ast_module_info->self); - } - - return res; -} - int internal_sip_register_service(pjsip_module *module) { return ast_sip_push_task_synchronous(NULL, register_service_noref, &module); } -int ast_sip_register_service(pjsip_module *module) +int __ast_sip_register_service(pjsip_module *module, const char *file, int line, const char *func) { - return ast_sip_push_task_synchronous(NULL, register_service, &module); + int res; + + if (!(res = ast_sip_push_task_synchronous(NULL, register_service_noref, &module))) { + __ast_module_ref(ast_module_info->self, file, line, func); + } + + return res; } static int unregister_service_noref(void *data) @@ -2454,25 +2449,16 @@ static int unregister_service_noref(void *data) return 0; } -static int unregister_service(void *data) -{ - int res; - - if (!(res = unregister_service_noref(data))) { - ast_module_unref(ast_module_info->self); - } - - return res; -} - int internal_sip_unregister_service(pjsip_module *module) { return ast_sip_push_task_synchronous(NULL, unregister_service_noref, &module); } -void ast_sip_unregister_service(pjsip_module *module) +void __ast_sip_unregister_service(pjsip_module *module, const char *file, int line, const char *func) { - ast_sip_push_task_synchronous(NULL, unregister_service, &module); + if (!ast_sip_push_task_synchronous(NULL, unregister_service_noref, &module)) { + __ast_module_unref(ast_module_info->self, file, line, func); + } } static struct ast_sip_authenticator *registered_authenticator; @@ -3536,10 +3522,11 @@ void internal_sip_register_supplement(struct ast_sip_supplement *supplement) } } -int ast_sip_register_supplement(struct ast_sip_supplement *supplement) +int __ast_sip_register_supplement(struct ast_sip_supplement *supplement, + const char *file, int line, const char *func) { internal_sip_register_supplement(supplement); - ast_module_ref(ast_module_info->self); + __ast_module_ref(ast_module_info->self, file, line, func); return 0; } @@ -3562,10 +3549,11 @@ int internal_sip_unregister_supplement(struct ast_sip_supplement *supplement) return res; } -void ast_sip_unregister_supplement(struct ast_sip_supplement *supplement) +void __ast_sip_unregister_supplement(struct ast_sip_supplement *supplement, + const char *file, int line, const char *func) { if (!internal_sip_unregister_supplement(supplement)) { - ast_module_unref(ast_module_info->self); + __ast_module_unref(ast_module_info->self, file, line, func); } } diff --git a/res/res_pjsip.exports.in b/res/res_pjsip.exports.in index 4adecd419..7ac2b7e83 100644 --- a/res/res_pjsip.exports.in +++ b/res/res_pjsip.exports.in @@ -1,6 +1,7 @@ { global: LINKER_SYMBOL_PREFIXast_sip_*; + LINKER_SYMBOL_PREFIX__ast_sip_*; LINKER_SYMBOL_PREFIXast_copy_pj_str; LINKER_SYMBOL_PREFIXast_copy_pj_str2; LINKER_SYMBOL_PREFIXast_pjsip_rdata_get_endpoint; diff --git a/res/res_pjsip/pjsip_session.c b/res/res_pjsip/pjsip_session.c index cea72436a..4f3e3be55 100644 --- a/res/res_pjsip/pjsip_session.c +++ b/res/res_pjsip/pjsip_session.c @@ -56,10 +56,11 @@ void internal_sip_session_register_supplement(struct ast_sip_session_supplement } } -int ast_sip_session_register_supplement(struct ast_sip_session_supplement *supplement) +int __ast_sip_session_register_supplement(struct ast_sip_session_supplement *supplement, + const char *file, int line, const char *func) { internal_sip_session_register_supplement(supplement); - ast_module_ref(AST_MODULE_SELF); + __ast_module_ref(AST_MODULE_SELF, file, line, func); return 0; } @@ -82,10 +83,11 @@ int internal_sip_session_unregister_supplement(struct ast_sip_session_supplement return res; } -void ast_sip_session_unregister_supplement(struct ast_sip_session_supplement *supplement) +void __ast_sip_session_unregister_supplement(struct ast_sip_session_supplement *supplement, + const char *file, int line, const char *func) { if (!internal_sip_session_unregister_supplement(supplement)) { - ast_module_unref(AST_MODULE_SELF); + __ast_module_unref(AST_MODULE_SELF, file, line, func); } } diff --git a/res/res_pjsip_session.exports.in b/res/res_pjsip_session.exports.in index b7bd21b89..d65b247c7 100644 --- a/res/res_pjsip_session.exports.in +++ b/res/res_pjsip_session.exports.in @@ -1,6 +1,7 @@ { global: LINKER_SYMBOL_PREFIXast_sip_session_*; + LINKER_SYMBOL_PREFIX__ast_sip_session_*; LINKER_SYMBOL_PREFIXast_sip_dialog_get_session; LINKER_SYMBOL_PREFIXast_sip_channel_pvt_alloc; local: |