diff --git a/drawinglayer/source/tools/emfphelperdata.cxx b/drawinglayer/source/tools/emfphelperdata.cxx index fb4bad00b405..5587d0d02518 100644 --- a/drawinglayer/source/tools/emfphelperdata.cxx +++ b/drawinglayer/source/tools/emfphelperdata.cxx @@ -1568,8 +1568,6 @@ namespace emfplushelper rMS.ReadUInt16(type).ReadUInt16(flags).ReadUInt32(size).ReadUInt32(dataSize); - sal_uInt64 next = rMS.Tell() + (size - 12); - if (size < 12) { SAL_WARN("drawinglayer.emf", "Size field is less than 12 bytes"); @@ -1581,6 +1579,8 @@ namespace emfplushelper break; } + sal_uInt64 next = rMS.Tell() + (size - 12); + if (dataSize > (size - 12)) { SAL_WARN("drawinglayer.emf", "DataSize field is greater than Size-12");