diff options
author | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 2003-05-30 14:32:18 +0000 |
---|---|---|
committer | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 2003-05-30 14:32:18 +0000 |
commit | c98bfb03024d976de523c73d7c4602004d1b30d9 (patch) | |
tree | fd8dffa95e33152adc9ade4e7d7246929bc8bbe7 /pbx | |
parent | 960085b93effa2e60a104fd1dc7c285e8a17b43f (diff) |
Save dialplan in new format
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@1065 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'pbx')
-rwxr-xr-x | pbx/pbx_config.c | 21 |
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)); |