summaryrefslogtreecommitdiff
path: root/pbx
diff options
context:
space:
mode:
authorMatthew Jordan <mjordan@digium.com>2015-04-06 18:03:37 +0000
committerMatthew Jordan <mjordan@digium.com>2015-04-06 18:03:37 +0000
commit0ecd472e4f890cb932265028bca9b4c2fef562ea (patch)
treeaa6c25f3f86cc17e00ed5ffadde32865642a0ec1 /pbx
parent4e7be5b2dc03ff5685b92408e303caeeb68c7598 (diff)
clang compiler warnings: Fix sometimes-uninitialized warning in pbx_config
This patch fixes a warning caught by clang, in which a char pointer could be assigned to before it was initialized. The patch re-organizes the code to ensure that the pointer is always initialized, even on off nominal paths. Review: https://reviewboard.asterisk.org/r/4529 ASTERISK-24917 Reported by: dkdegroot patches: rb4529.patch submitted by dkdegroot (License 6600) ........ Merged revisions 434090 from http://svn.asterisk.org/svn/asterisk/branches/11 git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@434091 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'pbx')
-rw-r--r--pbx/pbx_config.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/pbx/pbx_config.c b/pbx/pbx_config.c
index 1dd09850c..79260bbad 100644
--- a/pbx/pbx_config.c
+++ b/pbx/pbx_config.c
@@ -956,7 +956,9 @@ static char *handle_cli_dialplan_save(struct ast_cli_entry *e, int cmd, struct a
const char *el = ast_get_extension_label(p);
char label[128] = "";
char *appdata = ast_get_extension_app_data(p);
- char *escaped;
+
+ int escaped_len = (!ast_strlen_zero(appdata)) ? 2 * strlen(appdata) + 1 : 1;
+ char escaped[escaped_len];
if (ast_get_extension_matchcid(p)) {
sep = "/";
@@ -970,12 +972,9 @@ static char *handle_cli_dialplan_save(struct ast_cli_entry *e, int cmd, struct a
}
if (!ast_strlen_zero(appdata)) {
- int escaped_len = 2 * strlen(appdata) + 1;
- char escaped[escaped_len];
-
ast_escape_semicolons(appdata, escaped, escaped_len);
} else {
- escaped = "";
+ escaped[0] = '\0';
}
fprintf(output, "exten => %s%s%s,%d%s,%s(%s)\n",