start cleanup indentation etc.
authorLuigi Rizzo <rizzo@icir.org>
Wed, 10 May 2006 21:12:55 +0000 (21:12 +0000)
committerLuigi Rizzo <rizzo@icir.org>
Wed, 10 May 2006 21:12:55 +0000 (21:12 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@26655 65c4cc65-6c06-0410-ace0-fbb531ad65f3

pbx/pbx_realtime.c

index 1d9e803..d819233 100644 (file)
@@ -76,34 +76,27 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
 */
 
 
 */
 
 
-#define REALTIME_COMMON(mode) \
-       char *buf; \
-       char *opts; \
-       const char *cxt; \
-       char *table; \
-       int res=-1; \
-       struct ast_variable *var=NULL; \
-       buf = ast_strdupa(data); \
-       if (buf) { \
-               opts = strchr(buf, '/'); \
-               if (opts) { \
-                       *opts='\0'; \
-                       opts++; \
-               } else \
-                       opts=""; \
-               table = strchr(buf, '@'); \
-               if (table) { \
-                       *table = '\0'; \
-                       table++;\
-                       cxt = buf; \
-               } else cxt = NULL; \
-               if (ast_strlen_zero(cxt)) \
-                       cxt = context;\
-               if (ast_strlen_zero(table)) \
-                       table = "extensions"; \
-               var = realtime_switch_common(table, cxt, exten, priority, mode); \
-       } else \
-               res = -1; 
+#define REALTIME_COMMON(mode)                          \
+       const char *ctx = NULL;                         \
+       char *table;                                    \
+       int res = -1;                                   \
+       struct ast_variable *var=NULL;                  \
+       char *buf = ast_strdupa(data);                  \
+       if (buf) {                                      \
+               char *opts = strchr(buf, '/');          \
+               if (opts)                               \
+                       *opts++ = '\0';                 \
+               else                                    \
+                       opts="";                        \
+               table = strchr(buf, '@');               \
+               if (table) {                            \
+                       *table++ = '\0';                \
+                       ctx = buf;                      \
+               }                                       \
+               ctx = S_OR(ctx, context);               \
+               table = S_OR(table, "extensions");      \
+               var = realtime_switch_common(table, ctx, exten, priority, mode); \
+       }
 
 static struct ast_variable *realtime_switch_common(const char *table, const char *context, const char *exten, int priority, int mode)
 {
 
 static struct ast_variable *realtime_switch_common(const char *table, const char *context, const char *exten, int priority, int mode)
 {
@@ -161,7 +154,8 @@ static struct ast_variable *realtime_switch_common(const char *table, const char
 static int realtime_exists(struct ast_channel *chan, const char *context, const char *exten, int priority, const char *callerid, const char *data)
 {
        REALTIME_COMMON(MODE_MATCH);
 static int realtime_exists(struct ast_channel *chan, const char *context, const char *exten, int priority, const char *callerid, const char *data)
 {
        REALTIME_COMMON(MODE_MATCH);
-       if (var) ast_variables_destroy(var);
+       if (var)
+               ast_variables_destroy(var);
        if (var)
                res = 1;
        return res > 0 ? res : 0;
        if (var)
                res = 1;
        return res > 0 ? res : 0;
@@ -170,7 +164,8 @@ static int realtime_exists(struct ast_channel *chan, const char *context, const
 static int realtime_canmatch(struct ast_channel *chan, const char *context, const char *exten, int priority, const char *callerid, const char *data)
 {
        REALTIME_COMMON(MODE_CANMATCH);
 static int realtime_canmatch(struct ast_channel *chan, const char *context, const char *exten, int priority, const char *callerid, const char *data)
 {
        REALTIME_COMMON(MODE_CANMATCH);
-       if (var) ast_variables_destroy(var);
+       if (var)
+               ast_variables_destroy(var);
        if (var)
                res = 1;
        return res > 0 ? res : 0;
        if (var)
                res = 1;
        return res > 0 ? res : 0;
@@ -188,13 +183,11 @@ static int realtime_exec(struct ast_channel *chan, const char *context, const ch
        struct ast_variable *v;
        REALTIME_COMMON(MODE_MATCH);
        if (var) {
        struct ast_variable *v;
        REALTIME_COMMON(MODE_MATCH);
        if (var) {
-               v = var;
-               while(v) {
+               for (v = var; v ; v = v->next) {
                        if (!strcasecmp(v->name, "app"))
                                strncpy(app, v->value, sizeof(app) -1 );
                        else if (!strcasecmp(v->name, "appdata"))
                                tmp = ast_strdupa(v->value);
                        if (!strcasecmp(v->name, "app"))
                                strncpy(app, v->value, sizeof(app) -1 );
                        else if (!strcasecmp(v->name, "appdata"))
                                tmp = ast_strdupa(v->value);
-                       v = v->next;
                }
                ast_variables_destroy(var);
                if (!ast_strlen_zero(app)) {
                }
                ast_variables_destroy(var);
                if (!ast_strlen_zero(app)) {