]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
cel_pgsql: module not correctly reloading
authorKevin Harwell <kharwell@digium.com>
Fri, 3 Jan 2014 21:58:17 +0000 (21:58 +0000)
committerKevin Harwell <kharwell@digium.com>
Fri, 3 Jan 2014 21:58:17 +0000 (21:58 +0000)
Upon reload the module unconditionally "unloaded" the module (freeing memory
and setting pointers to NULL) and then when attempting a "load" if the config
file had not changed then nothing would be reinitialized.

By moving the "unload" to occur conditionally (reload only) after an attempted
configuration load, but before module "loading" alleviates the issue. The module
now loads/unloads/reloads correctly.

(closes issue ASTERISK-22871)
Reported by: Matteo
........

Merged revisions 404857 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/11@404858 65c4cc65-6c06-0410-ace0-fbb531ad65f3

cel/cel_pgsql.c

index 614a377e4d077b8f9dda9fb0a06eb074ab57b91c..536838b16d20f7a239e7c4ba7775e975b20a8195 100644 (file)
@@ -559,6 +559,10 @@ static int my_load_module(int reload)
                return AST_MODULE_LOAD_SUCCESS;
        }
 
+       if (reload) {
+               my_unload_module();
+       }
+
        process_my_load_module(cfg);
        ast_config_destroy(cfg);
 
@@ -579,7 +583,6 @@ static int load_module(void)
 
 static int reload(void)
 {
-       my_unload_module();
        return my_load_module(1);
 }