diff options
Diffstat (limited to 'vcl/source/filter/ixpm/xpmread.cxx')
-rw-r--r-- | vcl/source/filter/ixpm/xpmread.cxx | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/vcl/source/filter/ixpm/xpmread.cxx b/vcl/source/filter/ixpm/xpmread.cxx index 3b4b562e3eb9..81c13f210f74 100644 --- a/vcl/source/filter/ixpm/xpmread.cxx +++ b/vcl/source/filter/ixpm/xpmread.cxx @@ -22,6 +22,7 @@ #include "rgbtable.hxx" #define _XPMPRIVATE #include "xpmread.hxx" +#include <cstring> XPMReader::XPMReader(SvStream& rStm) : mrIStm(rStm) @@ -342,7 +343,8 @@ bool XPMReader::ImplGetColSub( sal_uInt8* pDest ) { if ( pRGBTable[ i ].name == NULL ) break; - if ( pRGBTable[ i ].name[ mnParaSize ] == 0 ) + if ( std::strlen(pRGBTable[i].name) > mnParaSize && + pRGBTable[ i ].name[ mnParaSize ] == 0 ) { if ( ImplCompare ( (unsigned char*)pRGBTable[ i ].name, mpPara, mnParaSize, XPMCASENONSENSITIVE ) ) |