Merged revisions 68595 via svnmerge from

https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r68595 | tilghman | 2007-06-10 23:21:30 -0500 (Sun, 10 Jun 2007) | 2 lines

"dialplan save" produced garbage in the config file

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@68596 65c4cc65-6c06-0410-ace0-fbb531ad65f3
1.6.0
Tilghman Lesher 18 years ago
parent 85683836eb
commit 7e52b8620b

@ -851,16 +851,27 @@ static int handle_save_dialplan(int fd, int argc, char *argv[])
ast_get_extension_app(p));
} else { /* copy and replace '|' with ',' */
const char *sep, *cid;
char *tempdata;
char *tempdata = "";
char *s;
const char *el = ast_get_extension_label(p);
char label[128];
char label[128] = "";
tempdata = ast_strdupa(ast_get_extension_app_data(p));
for (s = tempdata; *s; s++) {
if (*s == '|')
*s = ',';
s = ast_get_extension_app_data(p);
if (s) {
char *t;
tempdata = alloca(strlen(tempdata) * 2 + 1);
for (t = tempdata; *s; s++, t++) {
if (*s == '|')
*t = ',';
else {
if (*s == ',')
*t++ = '\\';
*t = *s;
}
}
/* Terminating NULL */
*t = *s;
}
if (ast_get_extension_matchcid(p)) {
@ -869,7 +880,7 @@ static int handle_save_dialplan(int fd, int argc, char *argv[])
} else
sep = cid = "";
if (el && (snprintf(label, 127, "(%s)", el) != (strlen(el) + 2)))
if (el && (snprintf(label, sizeof(label), "(%s)", el) != (strlen(el) + 2)))
incomplete = 1; /* error encountered or label > 125 chars */
fprintf(output, "exten => %s%s%s,%d%s,%s(%s)\n",

Loading…
Cancel
Save