| diff --git a/third_party/libtiff/tif_ojpeg.c b/third_party/libtiff/tif_ojpeg.c |
| index cc5449cd6..f69b00148 100644 |
| --- a/third_party/libtiff/tif_ojpeg.c |
| +++ b/third_party/libtiff/tif_ojpeg.c |
| @@ -1790,7 +1790,10 @@ OJPEGReadHeaderInfoSecTablesQTable(TIFF* tif) |
| TIFFSeekFile(tif,sp->qtable_offset[m],SEEK_SET); |
| p=TIFFReadFile(tif,&ob[sizeof(uint32)+5],64); |
| if (p!=64) |
| + { |
| + _TIFFfree(ob); |
| return(0); |
| + } |
| sp->qtable[m]=ob; |
| sp->sof_tq[m]=m; |
| } |
| @@ -1854,7 +1857,10 @@ OJPEGReadHeaderInfoSecTablesDcTable(TIFF* tif) |
| rb[sizeof(uint32)+5+n]=o[n]; |
| p=TIFFReadFile(tif,&(rb[sizeof(uint32)+21]),q); |
| if (p!=q) |
| + { |
| + _TIFFfree(rb); |
| return(0); |
| + } |
| sp->dctable[m]=rb; |
| sp->sos_tda[m]=(m<<4); |
| } |
| @@ -1918,7 +1924,10 @@ OJPEGReadHeaderInfoSecTablesAcTable(TIFF* tif) |
| rb[sizeof(uint32)+5+n]=o[n]; |
| p=TIFFReadFile(tif,&(rb[sizeof(uint32)+21]),q); |
| if (p!=q) |
| + { |
| + _TIFFfree(rb); |
| return(0); |
| + } |
| sp->actable[m]=rb; |
| sp->sos_tda[m]=(sp->sos_tda[m]|m); |
| } |