Module Name: src Committed By: matt Date: Thu Jan 10 04:51:49 UTC 2013
Modified Files: src/common/lib/libc/arch/arm/string: strcpy_arm.S Log Message: Fix a typo in strlcpy which caused to not deal with NULs predecing the string properly. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/common/lib/libc/arch/arm/string/strcpy_arm.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/common/lib/libc/arch/arm/string/strcpy_arm.S diff -u src/common/lib/libc/arch/arm/string/strcpy_arm.S:1.1 src/common/lib/libc/arch/arm/string/strcpy_arm.S:1.2 --- src/common/lib/libc/arch/arm/string/strcpy_arm.S:1.1 Tue Jan 8 13:17:45 2013 +++ src/common/lib/libc/arch/arm/string/strcpy_arm.S Thu Jan 10 04:51:49 2013 @@ -29,7 +29,7 @@ #include <machine/asm.h> -RCSID("$NetBSD: strcpy_arm.S,v 1.1 2013/01/08 13:17:45 matt Exp $") +RCSID("$NetBSD: strcpy_arm.S,v 1.2 2013/01/10 04:51:49 matt Exp $") #ifdef STRLCPY #ifdef _LIBC @@ -224,10 +224,10 @@ ENTRY(FUNCNAME) * fill the bytes in the word we don't want to match with all 1s. */ mvn r3, #0 /* create a mask */ - mov r3, r3, lslo r8 /* zero out byte being kept */ - orr r3, r3, r5 /* merge src and mask */ + mov r3, r3, lslo r8 /* zero out bytes being kept */ + orr r5, r5, r3 /* merge src and mask */ #ifdef _ARM_ARCH_6 - uqadd8 r3, r3, r7 /* NUL detection magic happens */ + uqadd8 r3, r5, r7 /* NUL detection magic happens */ mvns r3, r3 /* is the complemented result 0? */ beq .Lincongruent_mainloop_load /* yes, no NUL encountered! */ #ifdef __ARMEL__