changeset 124:ef2bc92d5fb0

Work around uClibc weirdness.
author Rob Landley <rob@landley.net>
date Thu, 07 Jun 2007 15:19:44 -0400
parents 81a324ef9167
children a4af344fb349
files lib/lib.c lib/lib.h
diffstat 2 files changed, 17 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/lib/lib.c	Thu Jun 07 15:19:00 2007 -0400
+++ b/lib/lib.c	Thu Jun 07 15:19:44 2007 -0400
@@ -11,6 +11,19 @@
 
 #include "toys.h"
 
+#ifndef __UCLIBC__
+
+// uClibc has this, and if we define our own it conflicts.
+
+// Like strncpy but always null terminated.
+void strlcpy(char *dest, char *src, size_t size)
+{
+	strncpy(dest,src,size);
+	dest[size-1] = 0;
+}
+#endif
+
+
 void verror_msg(char *msg, int err, va_list va)
 {
 	fprintf(stderr, "%s: ", toys.which->name);
@@ -68,13 +81,6 @@
 	exit(1);
 }
 
-// Like strncpy but always null terminated.
-void strlcpy(char *dest, char *src, size_t size)
-{
-	strncpy(dest,src,size);
-	dest[size-1] = 0;
-}
-
 // Die unless we can allocate memory.
 void *xmalloc(size_t size)
 {
--- a/lib/lib.h	Thu Jun 07 15:19:00 2007 -0400
+++ b/lib/lib.h	Thu Jun 07 15:19:44 2007 -0400
@@ -31,13 +31,16 @@
 void get_optflags(void);
 
 // functions.c
+#ifndef __UCLIBC__
+void strlcpy(char *dest, char *src, size_t size);
+#endif
+
 void verror_msg(char *msg, int err, va_list va);
 void error_msg(char *msg, ...);
 void perror_msg(char *msg, ...);
 void error_exit(char *msg, ...);
 void perror_exit(char *msg, ...);
 void usage_exit(void);
-void strlcpy(char *dest, char *src, size_t size);
 void *xmalloc(size_t size);
 void *xzalloc(size_t size);
 void *xrealloc(void *ptr, size_t size);