[coreboot] [commit] r5700 - trunk/payloads/libpayload/libc

repository service svn at coreboot.org
Mon Aug 16 20:04:15 CEST 2010


Author: oxygene
Date: Mon Aug 16 20:04:13 2010
New Revision: 5700
URL: https://tracker.coreboot.org/trac/coreboot/changeset/5700

Log:
Fix strcmp and strncmp. They failed in several important scenarios

Signed-off-by: Patrick Georgi <patrick.georgi at coresystems.de>
Acked-by: Patrick Georgi <patrick.georgi at coresystems.de>

Modified:
   trunk/payloads/libpayload/libc/string.c

Modified: trunk/payloads/libpayload/libc/string.c
==============================================================================
--- trunk/payloads/libpayload/libc/string.c	Mon Aug 16 19:51:47 2010	(r5699)
+++ trunk/payloads/libpayload/libc/string.c	Mon Aug 16 20:04:13 2010	(r5700)
@@ -91,7 +91,7 @@
 {
 	int i;
 
-	for (i = 0; 1; i++) {
+	for (i = 0; s1[i] != '\0'; i++) {
 		if (tolower(s1[i]) != tolower(s2[i]))
 			return s1[i] - s2[i];
 	}
@@ -116,7 +116,7 @@
 			return s1[i] - s2[i];
 	}
 
-	return 0;
+	return s1[i] - s2[i];
 }
 
 /**
@@ -132,12 +132,12 @@
 {
 	int i;
 
-	for (i = 0; 1; i++) {
+	for (i = 0; s1[i] != '\0'; i++) {
 		if (s1[i] != s2[i])
 			return s1[i] - s2[i];
 	}
 
-	return 0;
+	return s1[i] - s2[i];
 }
 
 /**




More information about the coreboot mailing list