diff -Naurp zlib-1.2.3/infback.c zlib-1.2.3.oden/infback.c --- zlib-1.2.3/infback.c 2005-05-31 00:58:00.000000000 +0200 +++ zlib-1.2.3.oden/infback.c 2008-12-16 18:35:13.000000000 +0100 @@ -438,6 +438,9 @@ void FAR *out_desc; /* handle error breaks in while */ if (state->mode == BAD) break; + if (state->mode == BAD) + break; + /* build code tables */ state->next = state->codes; state->lencode = (code const FAR *)(state->next); diff -Naurp zlib-1.2.3/inflate.c zlib-1.2.3.oden/inflate.c --- zlib-1.2.3/inflate.c 2005-06-14 23:50:12.000000000 +0200 +++ zlib-1.2.3.oden/inflate.c 2008-12-16 18:35:13.000000000 +0100 @@ -925,6 +925,9 @@ int flush; /* handle error breaks in while */ if (state->mode == BAD) break; + if (state->mode == BAD) + break; + /* build code tables */ state->next = state->codes; state->lencode = (code const FAR *)(state->next);