summaryrefslogtreecommitdiffstats
path: root/compat/memcmp.c
diff options
context:
space:
mode:
authordkf <donal.k.fellows@manchester.ac.uk>2007-01-22 09:56:32 (GMT)
committerdkf <donal.k.fellows@manchester.ac.uk>2007-01-22 09:56:32 (GMT)
commitf8ee7e801e06b6101e6e1180a0b7a88b7db47843 (patch)
treec435470ac8667e76f680ae55177b80fdb6db96b1 /compat/memcmp.c
parent690f5c8195ae88f99ecac399e39ab6f2b3c0465b (diff)
downloadtcl-f8ee7e801e06b6101e6e1180a0b7a88b7db47843.zip
tcl-f8ee7e801e06b6101e6e1180a0b7a88b7db47843.tar.gz
tcl-f8ee7e801e06b6101e6e1180a0b7a88b7db47843.tar.bz2
Fix [Bug 1631017]
Diffstat (limited to 'compat/memcmp.c')
-rw-r--r--compat/memcmp.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/compat/memcmp.c b/compat/memcmp.c
index 09a5724..dd4cacc 100644
--- a/compat/memcmp.c
+++ b/compat/memcmp.c
@@ -48,11 +48,12 @@ memcmp(s1, s2, n)
CONST VOID *s2; /* Second string. */
size_t n; /* Length to compare. */
{
- unsigned char u1, u2;
+ VOID unsigned char *ptr1 = (VOID unsigned char *) s1;
+ VOID unsigned char *ptr2 = (VOID unsigned char *) s2;
+
+ for ( ; n-- ; ptr1++, ptr2++) {
+ unsigned char u1 = *s1, u2 = *s2;
- for ( ; n-- ; s1++, s2++) {
- u1 = * (unsigned char *) s1;
- u2 = * (unsigned char *) s2;
if ( u1 != u2) {
return (u1-u2);
}