diff options
author | citats <citats@f38db490-d61c-443f-a65b-d21fe96a405b> | 2004-02-27 04:24:42 +0000 |
---|---|---|
committer | citats <citats@f38db490-d61c-443f-a65b-d21fe96a405b> | 2004-02-27 04:24:42 +0000 |
commit | f0a93508bfc69d4e17a89ceb68ebca06293fb7f3 (patch) | |
tree | 661dad8f36ade949d766aa5e1fb46369287625bd /apps/app_dial.c | |
parent | 11ecb3df7c1ad4f40499138a57003ca1a7ab555d (diff) |
Check result of malloc in app_dial.c
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@2255 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps/app_dial.c')
-rwxr-xr-x | apps/app_dial.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/apps/app_dial.c b/apps/app_dial.c index d6bf88736..6acbddba7 100755 --- a/apps/app_dial.c +++ b/apps/app_dial.c @@ -207,13 +207,19 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in, struct localu if (o->chan->callerid) free(o->chan->callerid); o->chan->callerid = malloc(strlen(in->callerid) + 1); - strncpy(o->chan->callerid, in->callerid, strlen(in->callerid) + 1); + if (o->chan->callerid) + strncpy(o->chan->callerid, in->callerid, strlen(in->callerid) + 1); + else + ast_log(LOG_WARNING, "Out of memory\n"); } if (in->ani) { if (o->chan->ani) free(o->chan->ani); o->chan->ani = malloc(strlen(in->ani) + 1); - strncpy(o->chan->ani, in->ani, strlen(in->ani) + 1); + if (o->chan->ani) + strncpy(o->chan->ani, in->ani, strlen(in->ani) + 1); + else + ast_log(LOG_WARNING, "Out of memory\n"); } if (ast_call(o->chan, tmpchan, 0)) { ast_log(LOG_NOTICE, "Failed to dial on local channel for call forward to '%s'\n", tmpchan); |