From d4d36b0a9a778caec77fb8e4ce5b1e406d5a8f50 Mon Sep 17 00:00:00 2001
From: drath <drath@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Date: Sun, 25 Jun 2006 20:44:25 +0000
Subject: - changed use of bzero (deprecated) to memset (thanks to Spen for
 pointing this out) - changed fallback implementation of strndup to something
 that works on all systems (thanks to Spen for this patch)

git-svn-id: svn://svn.berlios.de/openocd/trunk@75 b42882b7-edfa-0310-969c-e2dbd0fdcd60
---
 src/openocd.c                 |  2 +-
 src/server/gdb_server.c       | 16 ++++++++++------
 src/target/arm_disassembler.c |  4 ++--
 3 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/src/openocd.c b/src/openocd.c
index 229fd916..b8392911 100644
--- a/src/openocd.c
+++ b/src/openocd.c
@@ -18,7 +18,7 @@
  *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
  ***************************************************************************/
 
-#define OPENOCD_VERSION "Open On-Chip Debugger (2006-06-25 13:15 CEST)"
+#define OPENOCD_VERSION "Open On-Chip Debugger (2006-06-25 22:45 CEST)"
 
 #ifdef HAVE_CONFIG_H
 #include <config.h>
diff --git a/src/server/gdb_server.c b/src/server/gdb_server.c
index e8664bb2..b0c09961 100644
--- a/src/server/gdb_server.c
+++ b/src/server/gdb_server.c
@@ -32,14 +32,18 @@
 #include <unistd.h>
 #include <stdlib.h>
 
-// -ino: 060521-1116
 #ifndef HAVE_STRNDUP
 #include <stdio.h>
-char * strndup(char * str, int n) {
-  unsigned char * tmp = malloc((size_t)n+1);
-  if (! tmp) perror("gdb_server malloc failed");
-  if (strlcpy(tmp, str, n) > n) perror("gdb_server strndup:  too long");
-  return tmp;
+char* strndup(const char *s, size_t n)
+{
+	size_t len = strnlen (s, n);
+	char *new = (char *) malloc (len + 1);
+
+	if (new == NULL)
+		return NULL;
+
+	new[len] = '\0';
+	return (char *) memcpy (new, s, len);
 }
 #endif
 
diff --git a/src/target/arm_disassembler.c b/src/target/arm_disassembler.c
index 04dcf4ba..3a9c1f87 100644
--- a/src/target/arm_disassembler.c
+++ b/src/target/arm_disassembler.c
@@ -21,7 +21,7 @@
 
 #include "log.h"
 
-#include <strings.h>
+#include <string.h>
 
 /* textual represenation of the condition field */
 /* ALways (default) is ommitted (empty string) */
@@ -1158,7 +1158,7 @@ int evaluate_data_proc(u32 opcode, u32 address, arm_instruction_t *instruction)
 int evaluate_opcode(u32 opcode, u32 address, arm_instruction_t *instruction)
 {
 	/* clear fields, to avoid confusion */
-	bzero(instruction, sizeof(arm_instruction_t));
+	memset(instruction, 0, sizeof(arm_instruction_t));
 	instruction->opcode = opcode;
 	
 	/* catch opcodes with condition field [31:28] = b1111 */
-- 
cgit v1.2.3