diff --git a/manager.c b/manager.c index 541989cc995f394034d67c00bbbac9a117bda0f7..d58b48831fbac6717a734a1903bacd460ea0d906 100644 --- a/manager.c +++ b/manager.c @@ -745,7 +745,11 @@ static int action_getvar(struct mansession *s, struct message *m) } } - pbx_retrieve_variable(c, varname, &varval, workspace, sizeof(workspace), NULL); + if (varname[strlen(varname) - 1] == ')') { + varval = ast_func_read(c, varname, workspace, sizeof(workspace)); + } else { + pbx_retrieve_variable(c, varname, &varval, workspace, sizeof(workspace), NULL); + } if (c) ast_mutex_unlock(&c->lock);