diff options
author | Thomas Bernard <miniupnp@free.fr> | 2020-11-18 01:21:23 +0100 |
---|---|---|
committer | Thomas Bernard <miniupnp@free.fr> | 2020-11-18 01:22:04 +0100 |
commit | 6605513d24e49c1276ce4476cd037f714c05244b (patch) | |
tree | 09b1477d7e4ba35f3aaa05d867af69358c0d8e58 | |
parent | dadd8c7dceafbeddcf47bc04fac354bb7d8a3615 (diff) | |
download | libtiff-git-6605513d24e49c1276ce4476cd037f714c05244b.tar.gz |
tiff2pdf: Check output size before writing
fixes #156
-rw-r--r-- | tools/tiff2pdf.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/tools/tiff2pdf.c b/tools/tiff2pdf.c index e7899f6a..e77294b3 100644 --- a/tools/tiff2pdf.c +++ b/tools/tiff2pdf.c @@ -3329,6 +3329,14 @@ tsize_t t2p_readwrite_pdf_image_tile(T2P* t2p, TIFF* input, TIFF* output, ttile_ break; } + if (TIFFStripSize(output) > t2p->tiff_datasize) { + TIFFError(TIFF2PDF_MODULE, + "Size mismatch input %ld, output %ld", + t2p->tiff_datasize, TIFFStripSize(output)); + _TIFFfree(buffer); + t2p->t2p_error = T2P_ERR_ERROR; + return(0); + } t2p_enable(output); t2p->outputwritten = 0; bufferoffset = TIFFWriteEncodedStrip(output, (tstrip_t) 0, buffer, |