diff -ur gnupg-1.4.6-orig/g10/parse-packet.c gnupg-1.4.6/g10/parse-packet.c --- g10/parse-packet.c 2006-10-23 15:45:54.000000000 +0200 +++ g10/parse-packet.c 2007-01-14 03:59:11.089877376 +0100 @@ -1533,7 +1533,7 @@ buf = p = xmalloc (2 + nbytes); *p++ = nbits >> 8; *p++ = nbits; - for (; nbytes && length; nbytes--, --*length) + for (; nbytes && *length; nbytes--, --*length) *p++ = iobuf_get (inp); if (nbytes) {