Merged revisions 136062 via svnmerge from
[asterisk/asterisk.git] / channels / iax2-provision.c
index fa5cdb0..8bdfdbf 100644 (file)
@@ -87,7 +87,7 @@ char *iax_provflags2str(char *buf, int buflen, unsigned int flags)
        
        buf[0] = '\0';
 
-       for (x = 0; x < sizeof(iax_flags) / sizeof(iax_flags[0]); x++) {
+       for (x = 0; x < ARRAY_LEN(iax_flags); x++) {
                if (flags & iax_flags[x].value){
                        strncat(buf, iax_flags[x].name, buflen - strlen(buf) - 1);
                        strncat(buf, ",", buflen - strlen(buf) - 1);
@@ -116,7 +116,7 @@ static unsigned int iax_str2flags(const char *buf)
                else
                        len = 0;
                found = 0;
-               for (x=0;x<sizeof(iax_flags) / sizeof(iax_flags[0]); x++) {
+               for (x = 0; x < ARRAY_LEN(iax_flags); x++) {
                        if ((len && !strncasecmp(iax_flags[x].name, buf, len)) ||
                            (!len && !strcasecmp(iax_flags[x].name, buf))) {
                                flags |= iax_flags[x].value;
@@ -491,14 +491,16 @@ int iax_provision_reload(int reload)
        struct ast_flags config_flags = { reload ? CONFIG_FLAG_FILEUNCHANGED : 0 };
        if (!provinit)
                iax_provision_init();
-       /* Mark all as dead.  No need for locking */
-       cur = templates;
-       while(cur) {
-               cur->dead = 1;
-               cur = cur->next;
-       }
+       
        cfg = ast_config_load2("iaxprov.conf", "chan_iax2", config_flags);
        if (cfg != NULL && cfg != CONFIG_STATUS_FILEUNCHANGED) {
+               /* Mark all as dead.  No need for locking */
+               cur = templates;
+               while(cur) {
+                       cur->dead = 1;
+                       cur = cur->next;
+               }
+
                /* Load as appropriate */
                cat = ast_category_browse(cfg, NULL);
                while(cat) {