From 81df8343d3a3f05bb37f851ae770c7031b6bb32b Mon Sep 17 00:00:00 2001
From: Mark Spencer <markster@digium.com>
Date: Thu, 9 Sep 2004 02:29:10 +0000
Subject: [PATCH] Only accept first callerid number (bug #2395)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3750 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 callerid.c | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/callerid.c b/callerid.c
index 283a5dee8a..f616cae80b 100755
--- a/callerid.c
+++ b/callerid.c
@@ -3,9 +3,9 @@
  *
  * CallerID Generation support 
  * 
- * Copyright (C) 2001, Linux Support Services, Inc.
+ * Copyright (C) 2001-2004, Digium, Inc.
  *
- * Mark Spencer <markster@linux-support.net>
+ * Mark Spencer <markster@digium.com>
  *
  * This program is free software, distributed under the terms of
  * the GNU General Public License.
@@ -261,9 +261,11 @@ int callerid_feed(struct callerid_state *cid, unsigned char *ubuf, int len, int
 								ast_log(LOG_NOTICE, "Truncating long caller ID number from %d bytes to 32\n", cid->rawdata[x]);
 								res = 32; 
 							}
-							memcpy(cid->number, cid->rawdata + x + 1, res);
-							/* Null terminate */
-							cid->number[res] = '\0';
+							if (ast_strlen_zero(cid->number)) {
+								memcpy(cid->number, cid->rawdata + x + 1, res);
+								/* Null terminate */
+								cid->number[res] = '\0';
+							}
 							break;
 						case 7: /* Name */
 						case 8: /* Name */
-- 
GitLab