summaryrefslogtreecommitdiff
path: root/main/pbx.c
diff options
context:
space:
mode:
authorRichard Mudgett <rmudgett@digium.com>2013-08-30 01:20:05 +0000
committerRichard Mudgett <rmudgett@digium.com>2013-08-30 01:20:05 +0000
commitbac9a478ebd2c86773608749eb04d0ddad1b1911 (patch)
tree7aca3de372c35cf50a8f3bd7a3650187ee506ca7 /main/pbx.c
parenteb955dad9adbf76c3e0ff68cfd1c794989af1941 (diff)
pbx.c: Make pbx_substitute_variables_helper_full() not mask variables.
........ Merged revisions 397977 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@397978 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'main/pbx.c')
-rw-r--r--main/pbx.c18
1 files changed, 10 insertions, 8 deletions
diff --git a/main/pbx.c b/main/pbx.c
index fa2f64594..09f3d95ec 100644
--- a/main/pbx.c
+++ b/main/pbx.c
@@ -4479,11 +4479,12 @@ void pbx_substitute_variables_helper_full(struct ast_channel *c, struct varshead
/* Substitute if necessary */
if (needsub) {
- size_t used;
- if (!ltmp)
- ltmp = ast_alloca(VAR_BUF_SIZE);
+ size_t my_used;
- pbx_substitute_variables_helper_full(c, headp, var, ltmp, VAR_BUF_SIZE - 1, &used);
+ if (!ltmp) {
+ ltmp = ast_alloca(VAR_BUF_SIZE);
+ }
+ pbx_substitute_variables_helper_full(c, headp, var, ltmp, VAR_BUF_SIZE - 1, &my_used);
vars = ltmp;
} else {
vars = var;
@@ -4568,11 +4569,12 @@ void pbx_substitute_variables_helper_full(struct ast_channel *c, struct varshead
/* Substitute if necessary */
if (needsub) {
- size_t used;
- if (!ltmp)
- ltmp = ast_alloca(VAR_BUF_SIZE);
+ size_t my_used;
- pbx_substitute_variables_helper_full(c, headp, var, ltmp, VAR_BUF_SIZE - 1, &used);
+ if (!ltmp) {
+ ltmp = ast_alloca(VAR_BUF_SIZE);
+ }
+ pbx_substitute_variables_helper_full(c, headp, var, ltmp, VAR_BUF_SIZE - 1, &my_used);
vars = ltmp;
} else {
vars = var;