summaryrefslogtreecommitdiff
path: root/apps/app_voicemail.c
diff options
context:
space:
mode:
authorTilghman Lesher <tilghman@meg.abyt.es>2008-12-13 08:36:35 +0000
committerTilghman Lesher <tilghman@meg.abyt.es>2008-12-13 08:36:35 +0000
commitc8223fc9578754dfaef1b337e5f0dfff546461b4 (patch)
tree0559c99680217b78c0bda37a131b5f09794f43c6 /apps/app_voicemail.c
parent3b96ae826e7e280bff1d16ddc50d9328c7ea70ac (diff)
Merge ast_str_opaque branch (discontinue usage of ast_str internals)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@163991 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps/app_voicemail.c')
-rw-r--r--apps/app_voicemail.c15
1 files changed, 6 insertions, 9 deletions
diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c
index f23624fa2..fc2a5244c 100644
--- a/apps/app_voicemail.c
+++ b/apps/app_voicemail.c
@@ -10196,12 +10196,12 @@ static void free_vm_zones(void)
AST_LIST_UNLOCK(&zones);
}
-static char *substitute_escapes(const char *value)
+static const char *substitute_escapes(const char *value)
{
- char *current, *result;
+ char *current;
/* Add 16 for fudge factor */
- struct ast_str *str = ast_str_create(strlen(value) + 16);
+ struct ast_str *str = ast_str_thread_get(&global_app_buf, strlen(value) + 16);
/* Substitute strings \r, \n, and \t into the appropriate characters */
for (current = (char *) value; *current; current++) {
@@ -10235,10 +10235,7 @@ static char *substitute_escapes(const char *value)
}
}
- result = ast_strdup(str->str);
- ast_free(str);
-
- return result;
+ return ast_str_buffer(str);
}
static int load_config(int reload)
@@ -10858,13 +10855,13 @@ static int load_config(int reload)
emailsubject = ast_strdup(val);
}
if ((val = ast_variable_retrieve(cfg, "general", "emailbody"))) {
- emailbody = substitute_escapes(val);
+ emailbody = ast_strdup(substitute_escapes(val));
}
if ((val = ast_variable_retrieve(cfg, "general", "pagersubject"))) {
pagersubject = ast_strdup(val);
}
if ((val = ast_variable_retrieve(cfg, "general", "pagerbody"))) {
- pagerbody = substitute_escapes(val);
+ pagerbody = ast_strdup(substitute_escapes(val));
}
AST_LIST_UNLOCK(&users);
ast_config_destroy(cfg);