[Asterisk-code-review] pbx.c: Post AMI VarSet event if delete a non-empty dialplan ... (asterisk[13])
Richard Mudgett
asteriskteam at digium.com
Fri Jul 17 11:21:09 CDT 2015
Richard Mudgett has uploaded a new change for review.
https://gerrit.asterisk.org/927
Change subject: pbx.c: Post AMI VarSet event if delete a non-empty dialplan variable.
......................................................................
pbx.c: Post AMI VarSet event if delete a non-empty dialplan variable.
ASTERISK-25256 #close
Reported by: Richard Mudgett
Change-Id: I0b6be720b66fa956f6a798cd22ef8934eb0c0ff3
---
M main/pbx.c
1 file changed, 6 insertions(+), 0 deletions(-)
git pull ssh://gerrit.asterisk.org:29418/asterisk refs/changes/27/927/1
diff --git a/main/pbx.c b/main/pbx.c
index 8f5ee64..f23dff7 100644
--- a/main/pbx.c
+++ b/main/pbx.c
@@ -11591,6 +11591,8 @@
struct ast_var_t *newvariable;
struct varshead *headp;
const char *nametail = name;
+ /*! True if the old value was not an empty string. */
+ int old_value_existed = 0;
if (name[strlen(name) - 1] == ')') {
char *function = ast_strdupa(name);
@@ -11617,6 +11619,7 @@
if (strcmp(ast_var_name(newvariable), nametail) == 0) {
/* there is already such a variable, delete it */
AST_LIST_REMOVE_CURRENT(entries);
+ old_value_existed = !ast_strlen_zero(ast_var_value(newvariable));
ast_var_delete(newvariable);
break;
}
@@ -11629,6 +11632,9 @@
}
AST_LIST_INSERT_HEAD(headp, newvariable, entries);
ast_channel_publish_varset(chan, name, value);
+ } else if (old_value_existed) {
+ /* We just deleted a non-empty dialplan variable. */
+ ast_channel_publish_varset(chan, name, "");
}
if (chan)
--
To view, visit https://gerrit.asterisk.org/927
To unsubscribe, visit https://gerrit.asterisk.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I0b6be720b66fa956f6a798cd22ef8934eb0c0ff3
Gerrit-PatchSet: 1
Gerrit-Project: asterisk
Gerrit-Branch: 13
Gerrit-Owner: Richard Mudgett <rmudgett at digium.com>
More information about the asterisk-code-review
mailing list