summaryrefslogtreecommitdiff
path: root/main
diff options
context:
space:
mode:
authorLuigi Rizzo <rizzo@icir.org>2006-12-11 18:11:58 +0000
committerLuigi Rizzo <rizzo@icir.org>2006-12-11 18:11:58 +0000
commitf6c706c71bff89efdf5eceed9405a4b78b100ec1 (patch)
tree80f167a88ae1daaca80c345d35435935fa300fe0 /main
parent2c332f02004f4d62706f1318dc2aacbdb2447141 (diff)
make sure the argument to ast_malloc() is > 0.
Long explaination: The behaviour of the underlying malloc(0) differs depending on the operating system. Some return NULL (SysV behaviour); some still allocate a small chunk of memory and return a valid pointer (e.g. traditional BSD); some (e.g. FreeBSD 6.x) return a non-null pointer that causes a memory fault if used, even just for reading. Given the above variety, better never call malloc(0). git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@48389 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'main')
-rw-r--r--main/manager.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/main/manager.c b/main/manager.c
index 269f708d4..a0ecbd83e 100644
--- a/main/manager.c
+++ b/main/manager.c
@@ -2599,7 +2599,7 @@ static char *xml_translate(char *in, struct ast_variable *vars, enum output_form
else if (strchr("&\"<>", in[x]))
escaped++;
}
- len = (size_t) (strlen(in) + colons * 5 + breaks * (40 + strlen(dest) + strlen(objtype)) + escaped * 10); /* foo="bar", "<response type=\"object\" id=\"dest\"", "&amp;" */
+ len = (size_t) (1 + strlen(in) + colons * 5 + breaks * (40 + strlen(dest) + strlen(objtype)) + escaped * 10); /* foo="bar", "<response type=\"object\" id=\"dest\"", "&amp;" */
out = ast_malloc(len);
if (!out)
return NULL;