diff options
-rw-r--r-- | vcl/qa/cppunit/graphicfilter/data/wmf/pass/noheader.wmf | bin | 0 -> 13801 bytes | |||
-rw-r--r-- | vcl/source/gdi/dibtools.cxx | 4 |
2 files changed, 3 insertions, 1 deletions
diff --git a/vcl/qa/cppunit/graphicfilter/data/wmf/pass/noheader.wmf b/vcl/qa/cppunit/graphicfilter/data/wmf/pass/noheader.wmf Binary files differnew file mode 100644 index 000000000000..bfd7e20de92c --- /dev/null +++ b/vcl/qa/cppunit/graphicfilter/data/wmf/pass/noheader.wmf diff --git a/vcl/source/gdi/dibtools.cxx b/vcl/source/gdi/dibtools.cxx index d6f1e4d297f4..e46b7d3bf9e1 100644 --- a/vcl/source/gdi/dibtools.cxx +++ b/vcl/source/gdi/dibtools.cxx @@ -605,7 +605,9 @@ bool ImplReadDIBBody( SvStream& rIStm, Bitmap& rBmp, Bitmap* pBmpAlpha, sal_uLon if(ImplReadDIBInfoHeader(rIStm, aHeader, bTopDown) && aHeader.nWidth && aHeader.nHeight && aHeader.nBitCount) { - if (aHeader.nSize > nOffset) + // In case ImplReadDIB() didn't call ImplReadDIBFileHeader() before + // this method, nOffset is 0, that's OK. + if (nOffset && aHeader.nSize > nOffset) { // Header size claims to extend into the image data. // Looks like an error. |