Can't use the same buffer to snprintf that we're grabbing
[asterisk/asterisk.git] / apps / app_chanisavail.c
index 1c21af4..a777773 100755 (executable)
@@ -54,7 +54,7 @@ static int chanavail_exec(struct ast_channel *chan, void *data)
 {
        int res=-1;
        struct localuser *u;
-       char info[512], *peers, *tech, *number, *rest, *cur;
+       char info[512], tmp[512], *peers, *tech, *number, *rest, *cur;
        struct ast_channel *tempchan;
 
        if (!data) {
@@ -85,8 +85,8 @@ static int chanavail_exec(struct ast_channel *chan, void *data)
                        if ((tempchan = ast_request(tech, chan->nativeformats, number))) {
                                        pbx_builtin_setvar_helper(chan, "AVAILCHAN", tempchan->name);
                                        /* Store the originally used channel too */
-                                       snprintf(info, sizeof(info), "%s/%s", tech, number);
-                                       pbx_builtin_setvar_helper(chan, "AVAILORIGCHAN", info);
+                                       snprintf(tmp, sizeof(tmp), "%s/%s", tech, number);
+                                       pbx_builtin_setvar_helper(chan, "AVAILORIGCHAN", tmp);
                                        ast_hangup(tempchan);
                                        tempchan = NULL;
                                        res = 1;