diff options
author | tilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b> | 2005-12-03 19:25:33 +0000 |
---|---|---|
committer | tilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b> | 2005-12-03 19:25:33 +0000 |
commit | 3365b1cc9fd629381e341c2291fc0cfb53a44c36 (patch) | |
tree | f1b09ce6fd8d356c12bfe4e6b4e24e8f97ef1154 /chanvars.c | |
parent | a3c74f33dd6c999b8db1cd4281784753ebca997d (diff) |
Bug 5858 - Make the chanvars.c functions return a 'const char *'
This should prevent us from unintentionally changing variable
values when they're returned from pbx_builtin_getvar_helper.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@7304 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'chanvars.c')
-rw-r--r-- | chanvars.c | 24 |
1 files changed, 10 insertions, 14 deletions
diff --git a/chanvars.c b/chanvars.c index d01c9260b..83b611d23 100644 --- a/chanvars.c +++ b/chanvars.c @@ -59,31 +59,27 @@ void ast_var_delete(struct ast_var_t *var) free(var); } -char *ast_var_name(struct ast_var_t *var) +const char *ast_var_name(const struct ast_var_t *var) { - char *name; + const char *name; - if (var == NULL) - return NULL; - if (var->name == NULL) + if (var == NULL || (name = var->name) == NULL) return NULL; /* Return the name without the initial underscores */ - if (var->name[0] == '_') { - if (var->name[1] == '_') - name = (char*)&(var->name[2]); - else - name = (char*)&(var->name[1]); - } else - name = var->name; + if (name[0] == '_') { + name++; + if (name[0] == '_') + name++; + } return name; } -char *ast_var_full_name(struct ast_var_t *var) +const char *ast_var_full_name(const struct ast_var_t *var) { return (var ? var->name : NULL); } -char *ast_var_value(struct ast_var_t *var) +const char *ast_var_value(const struct ast_var_t *var) { return (var ? var->value : NULL); } |