]> git.ipfire.org Git - thirdparty/asterisk.git/commit
res_pjsip_config_wizard: Cleanup load unload
authorGeorge Joseph <george.joseph@fairview5.com>
Fri, 10 Apr 2015 16:59:59 +0000 (16:59 +0000)
committerGeorge Joseph <george.joseph@fairview5.com>
Fri, 10 Apr 2015 16:59:59 +0000 (16:59 +0000)
commit16afee4651c034f5cab18b0ee0a1b925b9044fdf
tree0642506dad0af6eb4610b5c33d83efbffdd9d4e6
parent125acc52fea2dbace7ab8e4f68d6a09e975a0bc1
res_pjsip_config_wizard: Cleanup load unload

While investigating other unload issues I realized that the load/unload process
for the config wizard was pretty ugly so I've refactored it as follows...

When the res_pjsip sorcery instance is created the config_wizard bumps it's own
module reference to prevent it from unloading while the sorcery instance is
still active.  When res_pjsip unloads and it's sorcery instance is destroyed,
the config wizard unrefs itself which then allows itself to unload cleanly.
Since the config wizard now can't load after res_pjsip or unload before it
(which should have been the correct behavior all along), I was able to remove
the chunks of code in both load_module and unload_module that handled that case.

Ran the testsuite tests to insure there were no functional changes and REF_DEBUG
to insure that Asterisk was shutting down cleanly with no FRACKs or leaks.

Tested-by: George Joseph
Review: https://reviewboard.asterisk.org/r/4610/

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@434619 65c4cc65-6c06-0410-ace0-fbb531ad65f3
res/res_pjsip_config_wizard.c