summaryrefslogtreecommitdiff
path: root/pbx
diff options
context:
space:
mode:
authorMark Spencer <markster@digium.com>2003-05-30 14:32:18 +0000
committerMark Spencer <markster@digium.com>2003-05-30 14:32:18 +0000
commit81a770b93fabe54a4c38354729d7187885751314 (patch)
treefd8dffa95e33152adc9ade4e7d7246929bc8bbe7 /pbx
parent047bc4bd88b6b49d54a5b865042dc8396d052d5d (diff)
Save dialplan in new format
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1065 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'pbx')
-rwxr-xr-xpbx/pbx_config.c21
1 files changed, 17 insertions, 4 deletions
diff --git a/pbx/pbx_config.c b/pbx/pbx_config.c
index bfec603de..45953c6f5 100755
--- a/pbx/pbx_config.c
+++ b/pbx/pbx_config.c
@@ -995,13 +995,26 @@ static int handle_save_dialplan(int fd, int argc, char *argv[])
context_header_written = 1;
}
- if (ast_get_extension_priority(p)!=PRIORITY_HINT)
- fprintf(output, "exten => %s,%d,%s,%s\n",
+ if (ast_get_extension_priority(p)!=PRIORITY_HINT) {
+ char *tempdata = NULL, *startdata;
+ tempdata = strdup((char *)ast_get_extension_app_data(p));
+ if (tempdata) {
+ startdata = tempdata;
+ while (*tempdata) {
+ if (*tempdata == '|')
+ *tempdata = ',';
+ tempdata++;
+ }
+ tempdata = startdata;
+ }
+ fprintf(output, "exten => %s,%d,%s(%s)\n",
ast_get_extension_name(p),
ast_get_extension_priority(p),
ast_get_extension_app(p),
- (char *)ast_get_extension_app_data(p));
- else
+ tempdata);
+ if (tempdata)
+ free(tempdata);
+ } else
fprintf(output, "exten => %s,hint,%s\n",
ast_get_extension_name(p),
ast_get_extension_app(p));