Unified · Split
| @@ -93,10 +93,11 @@ flreadall(void *aux, Buffer *bi, Buffer *bo) · 92 unmodified lines | |||
| 93 | r = inflatezlib(bo, bw, bi, bget); | 93 | r = inflatezlib(bo, bw, bi, bget); |
| 94 | }while(r == FlateOk && !bufeof(bi)); | 94 | }while(r == FlateOk && !bufeof(bi)); |
| 95 | 95 | ||
| 96 | if(r != FlateOk){ | 96 | if(r != FlateOk && bufleft(bo) < 1){ |
| 97 | werrstr("%s", flateerr(r)); | 97 | werrstr("%s", flateerr(r)); |
| 98 | return -1; | 98 | return -1; |
| 99 | } | 99 | } |
| 100 | r = 0; | ||
| 100 | 101 | ||
| 101 | /* 7.4.4.4 LZW and Flate predictor functions */ | 102 | /* 7.4.4.4 LZW and Flate predictor functions */ |
| 102 | if(fp->predictor >= 10 && fp->columns > 0){ | 103 | if(fp->predictor >= 10 && fp->columns > 0){ |