From e8c21dfe67f87b1080188fc3def297070ac47b9b Mon Sep 17 00:00:00 2001
From: James Golovich <james@gnuinter.net>
Date: Fri, 27 Feb 2004 04:24:42 +0000
Subject: [PATCH] Check result of malloc in app_dial.c

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@2255 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 apps/app_dial.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/apps/app_dial.c b/apps/app_dial.c
index d6bf88736d..6acbddba71 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);
-- 
GitLab