[Libreoffice-commits] core.git: filter/source

Caolán McNamara caolanm at redhat.com
Wed Feb 14 20:23:36 UTC 2018


 filter/source/graphicfilter/ipsd/ipsd.cxx |    7 +++++++
 1 file changed, 7 insertions(+)

New commits:
commit 65e14b6c5283244e4ba02a269879d82085d793e6
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Wed Feb 14 15:15:12 2018 +0000

    ofz#6334 Out-of-memory
    
    Change-Id: I714d4b3c767a2e9244e4d5a0b608e3d7fd3002a3
    Reviewed-on: https://gerrit.libreoffice.org/49741
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/filter/source/graphicfilter/ipsd/ipsd.cxx b/filter/source/graphicfilter/ipsd/ipsd.cxx
index 9a658ed13a40..344dbb6d3e07 100644
--- a/filter/source/graphicfilter/ipsd/ipsd.cxx
+++ b/filter/source/graphicfilter/ipsd/ipsd.cxx
@@ -107,6 +107,13 @@ bool PSDReader::ReadPSD(Graphic & rGraphic )
     if ( !ImplReadHeader() )
         return false;
 
+    if (mbStatus)
+    {
+        sal_uInt32 nResult;
+        if (o3tl::checked_multiply(mpFileHeader->nColumns, mpFileHeader->nRows, nResult) || nResult > SAL_MAX_INT32/2/3)
+            return false;
+    }
+
     Size aBitmapSize( mpFileHeader->nColumns, mpFileHeader->nRows );
     mpBitmap.reset( new vcl::bitmap::RawBitmap( aBitmapSize ) );
     if ( mpPalette && mbStatus )


More information about the Libreoffice-commits mailing list