summaryrefslogtreecommitdiffstats
path: root/mdk-stage1/dietlibc/lib/strncmp.c
diff options
context:
space:
mode:
authorGwenolé Beauchesne <gbeauchesne@mandriva.org>2003-06-04 18:31:57 +0000
committerGwenolé Beauchesne <gbeauchesne@mandriva.org>2003-06-04 18:31:57 +0000
commit09e967c2d732783b2579e4e120cd9b608404cb00 (patch)
tree8d2783a6a7e33608c6012efd6a88b8f5694df81d /mdk-stage1/dietlibc/lib/strncmp.c
parent18fcff49d3c836697d3b75a3d01d31c700e69974 (diff)
downloaddrakx-backup-do-not-use-09e967c2d732783b2579e4e120cd9b608404cb00.tar
drakx-backup-do-not-use-09e967c2d732783b2579e4e120cd9b608404cb00.tar.gz
drakx-backup-do-not-use-09e967c2d732783b2579e4e120cd9b608404cb00.tar.bz2
drakx-backup-do-not-use-09e967c2d732783b2579e4e120cd9b608404cb00.tar.xz
drakx-backup-do-not-use-09e967c2d732783b2579e4e120cd9b608404cb00.zip
Merge from R9_0-AMD64, most notably:
- AMD64 support to insmod-busybox, minilibc, et al. - Sync with insmod-modutils 2.4.19 something but everyone should use dietlibc nowadays - Factor out compilation and prefix with $(DIET) for dietlibc builds - 64-bit & varargs fixes
Diffstat (limited to 'mdk-stage1/dietlibc/lib/strncmp.c')
-rw-r--r--mdk-stage1/dietlibc/lib/strncmp.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/mdk-stage1/dietlibc/lib/strncmp.c b/mdk-stage1/dietlibc/lib/strncmp.c
index 7c08c0fa7..b3b56cfbb 100644
--- a/mdk-stage1/dietlibc/lib/strncmp.c
+++ b/mdk-stage1/dietlibc/lib/strncmp.c
@@ -1,6 +1,17 @@
#include <sys/types.h>
#include <string.h>
+/* gcc is broken and has a non-SUSv2 compliant internal prototype.
+ * This causes it to warn about a type mismatch here. Ignore it. */
int strncmp(const char *s1, const char *s2, size_t n) {
- return memccmp(s1,s2,0,n);
+ register const char* a=s1;
+ register const char* b=s2;
+ register const char* fini=a+n;
+ while (a<fini) {
+ register int res=*a-*b;
+ if (res) return res;
+ if (!*a) return 0;
+ ++a; ++b;
+ }
+ return 0;
}