# HG changeset patch # User michael # Date 1121122583 0 # Node ID 1bf080e490db1d5be2b090737b3d2f52b691c4ba # Parent af90d5dc83f00498dc3f5e54947ce868c5cded5f fix segfault (bug #1165640) diff -r af90d5dc83f0 -r 1bf080e490db 8bps.c --- a/8bps.c Mon Jul 11 22:34:34 2005 +0000 +++ b/8bps.c Mon Jul 11 22:56:23 2005 +0000 @@ -100,11 +100,13 @@ dlen = be2me_16(*(unsigned short *)(lp+row*2)); /* Decode a row of this plane */ while(dlen > 0) { + if(dp + 1 >= buf+buf_size) return -1; if ((count = *dp++) <= 127) { count++; dlen -= count + 1; if (pixptr + count * px_inc > pixptr_end) break; + if(dp + count > buf+buf_size) return -1; while(count--) { *pixptr = *dp++; pixptr += px_inc;