diff options
Diffstat (limited to 'sw')
-rw-r--r-- | sw/source/filter/ww8/ww8toolbar.cxx | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sw/source/filter/ww8/ww8toolbar.cxx b/sw/source/filter/ww8/ww8toolbar.cxx index 002a0bbb0c6c..e33a8c50f0fc 100644 --- a/sw/source/filter/ww8/ww8toolbar.cxx +++ b/sw/source/filter/ww8/ww8toolbar.cxx @@ -1165,6 +1165,10 @@ bool MacroNames::Read( SvStream &rS) rS.ReadUInt16( iMac ); if ( iMac ) { + //even an empty MacroName will take 2 bytes + size_t nMaxAvailableRecords = rS.remainingSize()/sizeof(sal_uInt16); + if (iMac > nMaxAvailableRecords) + return false; rgNames = new MacroName[ iMac ]; for ( sal_Int32 index = 0; index < iMac; ++index ) { |