about summary refs log tree commit diff
path: root/lib/libpbm3.c
diff options
context:
space:
mode:
authorgiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2007-02-28 03:47:25 +0000
committergiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2007-02-28 03:47:25 +0000
commit1afcbfb7de6fef5c052766f258bde74d845253df (patch)
tree19e9591a5f1f7e2804e08c4199e29ab2a2281f30 /lib/libpbm3.c
parent84b03c4a38ade9c100ae40e9d5b3fabfceb59913 (diff)
downloadnetpbm-mirror-1afcbfb7de6fef5c052766f258bde74d845253df.tar.gz
netpbm-mirror-1afcbfb7de6fef5c052766f258bde74d845253df.tar.xz
netpbm-mirror-1afcbfb7de6fef5c052766f258bde74d845253df.zip
Fix unsigned arithmetic bug
git-svn-id: http://svn.code.sf.net/p/netpbm/code/trunk@238 9d0c8265-081b-0410-96cb-a4ca84ce46f8
Diffstat (limited to 'lib/libpbm3.c')
-rw-r--r--lib/libpbm3.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/libpbm3.c b/lib/libpbm3.c
index a3ada015..2a811748 100644
--- a/lib/libpbm3.c
+++ b/lib/libpbm3.c
@@ -107,11 +107,12 @@ packBitsWithMmxSse(FILE *          const fileP,
 
     typedef int v8qi __attribute__ ((mode(V8QI)));
     typedef int di __attribute__ ((mode(DI)));
-    int col;
 
     di const zero64 = 0;        /* to clear with PXOR */
 
-    for (col = 0; col < cols-7; col += 8) {
+    unsigned int col;
+
+    for (col = 0; col + 7 < cols; col += 8) {
         v8qi const compare =
             __builtin_ia32_pcmpeqb(*(v8qi*) (&bitrow[col]), *(v8qi*) &zero64);
         unsigned char const backwardWhiteMask = (unsigned char)