From 4df53f3d14048492375b5b9bfe17cca4f9452c68 Mon Sep 17 00:00:00 2001 From: Caolán McNamara Date: Mon, 20 Jul 2015 11:20:45 +0100 Subject: don't hang on a bad ReadCodeAndDecode Change-Id: I999012d428fa84e21fe9e9f851a016eacc96a686 (cherry picked from commit 6964f67d0dd44c8a3c68caf194075ba5c649bf4b) Reviewed-on: https://gerrit.libreoffice.org/17217 Reviewed-by: David Tardon Tested-by: David Tardon --- filter/qa/cppunit/data/tiff/fail/hang-7.tiff | Bin 0 -> 504 bytes filter/source/graphicfilter/itiff/ccidecom.cxx | 5 ++++- 2 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 filter/qa/cppunit/data/tiff/fail/hang-7.tiff diff --git a/filter/qa/cppunit/data/tiff/fail/hang-7.tiff b/filter/qa/cppunit/data/tiff/fail/hang-7.tiff new file mode 100644 index 000000000000..61a5f2d78850 Binary files /dev/null and b/filter/qa/cppunit/data/tiff/fail/hang-7.tiff differ diff --git a/filter/source/graphicfilter/itiff/ccidecom.cxx b/filter/source/graphicfilter/itiff/ccidecom.cxx index c1447b1691c8..5542cffcceee 100644 --- a/filter/source/graphicfilter/itiff/ccidecom.cxx +++ b/filter/source/graphicfilter/itiff/ccidecom.cxx @@ -1026,11 +1026,14 @@ void CCIDecompressor::Read2DScanlineData(sal_uInt8 * pTarget, sal_uInt16 nTarget while (nBitPos