[Libreoffice-commits] core.git: 2 commits - vcl/source
Caolán McNamara
caolanm at redhat.com
Fri Mar 10 17:32:33 UTC 2017
vcl/source/filter/jpeg/JpegReader.cxx | 4 +---
vcl/source/filter/jpeg/JpegReader.hxx | 1 -
vcl/source/gdi/svmconverter.cxx | 16 +++++++++++-----
3 files changed, 12 insertions(+), 9 deletions(-)
New commits:
commit d4c26cbcd89660be3af8df09ee24a8ba1c1172b4
Author: Caolán McNamara <caolanm at redhat.com>
Date: Fri Mar 10 17:31:19 2017 +0000
ofz: min action has to be >= 4
Change-Id: If03837dff5d7db6907f13c32ce05a74e4a0b7b55
diff --git a/vcl/source/gdi/svmconverter.cxx b/vcl/source/gdi/svmconverter.cxx
index e4a00a1..6149f00 100644
--- a/vcl/source/gdi/svmconverter.cxx
+++ b/vcl/source/gdi/svmconverter.cxx
@@ -333,10 +333,10 @@ void ImplSkipActions(SvStream& rIStm, sal_uLong nSkipCount)
sal_Int16 nType;
for (sal_uLong i = 0UL; i < nSkipCount; ++i)
{
- rIStm.ReadInt16( nType ).ReadInt32( nActionSize );
- if (!rIStm.good())
+ rIStm.ReadInt16(nType).ReadInt32(nActionSize);
+ if (!rIStm.good() || nActionSize < 4)
break;
- rIStm.SeekRel( nActionSize - 4 );
+ rIStm.SeekRel(nActionSize - 4);
}
}
@@ -1430,12 +1430,18 @@ void SVMConverter::ImplConvertFromSVM1( SvStream& rIStm, GDIMetaFile& rMtf )
{
nUnicodeCommentActionNumber = i + 1;
nUnicodeCommentStreamPos = rIStm.Tell() - 6;
- rIStm.SeekRel( nActionSize - 4 );
+ if (nActionSize < 4)
+ rIStm.SetError(SVSTREAM_FILEFORMAT_ERROR);
+ else
+ rIStm.SeekRel(nActionSize - 4);
}
break;
default:
- rIStm.SeekRel( nActionSize - 4 );
+ if (nActionSize < 4)
+ rIStm.SetError(SVSTREAM_FILEFORMAT_ERROR);
+ else
+ rIStm.SeekRel(nActionSize - 4);
break;
}
}
commit c3ee3f104bcca354d80ecc4d8a3dd67b5123e1a5
Author: Caolán McNamara <caolanm at redhat.com>
Date: Fri Mar 10 15:59:41 2017 +0000
mnFormerPos is unused
Change-Id: I147b68882d99b8712625178e5206ea7c0f5f7401
diff --git a/vcl/source/filter/jpeg/JpegReader.cxx b/vcl/source/filter/jpeg/JpegReader.cxx
index ad67332..86dda22 100644
--- a/vcl/source/filter/jpeg/JpegReader.cxx
+++ b/vcl/source/filter/jpeg/JpegReader.cxx
@@ -168,7 +168,6 @@ JPEGReader::JPEGReader( SvStream& rStream, void* /*pCallData*/, bool bSetLogSize
mbSetLogSize ( bSetLogSize )
{
maUpperName = "SVIJPEG";
- mnFormerPos = mnLastPos;
}
JPEGReader::~JPEGReader()
@@ -301,11 +300,10 @@ ReadState JPEGReader::Read( Graphic& rGraphic )
}
// Set status ( Pending has priority )
- if( mrStream.GetError() == ERRCODE_IO_PENDING )
+ if (mrStream.GetError() == ERRCODE_IO_PENDING)
{
eReadState = JPEGREAD_NEED_MORE;
mrStream.ResetError();
- mnFormerPos = mrStream.Tell();
}
else
{
diff --git a/vcl/source/filter/jpeg/JpegReader.hxx b/vcl/source/filter/jpeg/JpegReader.hxx
index 3362519..3a20ad9 100644
--- a/vcl/source/filter/jpeg/JpegReader.hxx
+++ b/vcl/source/filter/jpeg/JpegReader.hxx
@@ -50,7 +50,6 @@ class JPEGReader : public GraphicReader
Bitmap maIncompleteAlpha;
long mnLastPos;
- long mnFormerPos;
long mnLastLines;
bool mbSetLogSize;
More information about the Libreoffice-commits
mailing list