aboutsummaryrefslogtreecommitdiff
path: root/libiberty/xmemdup.c
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>2000-02-22 15:59:20 +0000
committerIan Lance Taylor <ian@airs.com>2000-02-22 15:59:20 +0000
commite2eaf477991014a67bc122c3225f6a3fe6d1a8e6 (patch)
tree5937dcfd1baa6d55a635fde513e946dc33a05ca3 /libiberty/xmemdup.c
parent252b5132c753830d5fd56823373aed85f2a0db63 (diff)
downloadfsf-binutils-gdb-e2eaf477991014a67bc122c3225f6a3fe6d1a8e6.zip
fsf-binutils-gdb-e2eaf477991014a67bc122c3225f6a3fe6d1a8e6.tar.gz
fsf-binutils-gdb-e2eaf477991014a67bc122c3225f6a3fe6d1a8e6.tar.bz2
import libiberty from egcs
Diffstat (limited to 'libiberty/xmemdup.c')
-rw-r--r--libiberty/xmemdup.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/libiberty/xmemdup.c b/libiberty/xmemdup.c
new file mode 100644
index 0000000..f780041
--- /dev/null
+++ b/libiberty/xmemdup.c
@@ -0,0 +1,22 @@
+/* xmemdup.c -- Duplicate a memory buffer, using xcalloc.
+ This trivial function is in the public domain.
+ Jeff Garzik, September 1999. */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+#include "ansidecl.h"
+#include "libiberty.h"
+
+#include <sys/types.h> /* For size_t. */
+
+PTR
+xmemdup (input, copy_size, alloc_size)
+ const PTR input;
+ size_t copy_size;
+ size_t alloc_size;
+{
+ PTR output = xcalloc (1, alloc_size);
+ memcpy (output, input, copy_size);
+ return output;
+}