diff options
author | anthm <anthm@f38db490-d61c-443f-a65b-d21fe96a405b> | 2004-10-27 02:26:17 +0000 |
---|---|---|
committer | anthm <anthm@f38db490-d61c-443f-a65b-d21fe96a405b> | 2004-10-27 02:26:17 +0000 |
commit | 64df6364cba693b131c095dfec0b9317e6a579cb (patch) | |
tree | 6dac1cac1045206ed762d1f5ce89b775f36cbe49 /pbx.c | |
parent | 159d6538555df5962137219c1591610158ec8ced (diff) |
even more paranoid serialize code
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4108 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'pbx.c')
-rwxr-xr-x | pbx.c | 5 |
1 files changed, 3 insertions, 2 deletions
@@ -4928,14 +4928,15 @@ int pbx_builtin_serialize_variables(struct ast_channel *chan, char *buf, size_t if (chan) { headp=&chan->varshead; AST_LIST_TRAVERSE(headp,variables,entries) { - if(chan && variables && (var=ast_var_name(variables)) && (val=ast_var_value(variables))) { + if(chan && variables && (var=ast_var_name(variables)) && (val=ast_var_value(variables)) && !ast_strlen_zero(var) && !ast_strlen_zero(val)) { snprintf(buf + strlen(buf), size - strlen(buf), "%s=%s\n", var, val); if(strlen(buf) >= size) { ast_log(LOG_ERROR,"Data Buffer Size Exceeded!\n"); break; } total++; - } + } else + break; } } |