diff options
author | Caolán McNamara <caolanm@redhat.com> | 2015-01-09 14:55:35 +0000 |
---|---|---|
committer | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2015-01-09 18:25:46 +0000 |
commit | 9e283042477521416af2fc641c1843078d322480 (patch) | |
tree | 8f475a6db731ddfad0b2119bbbfdeff9e4db58c7 | |
parent | handle all fill cases correctly, fdo#86754 (diff) | |
download | core-9e283042477521416af2fc641c1843078d322480.tar.gz core-9e283042477521416af2fc641c1843078d322480.zip |
asan: stack-buffer-overflow with fdo76216-1.doc
Change-Id: Ica5ebb04ec50c6579f71d1152ae7619dd37b879e
(cherry picked from commit 8f43132c4d68dd2a1af7a4d1088413c2a0064902)
Reviewed-on: https://gerrit.libreoffice.org/13833
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
Tested-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
-rw-r--r-- | vcl/source/filter/wmf/enhwmf.cxx | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/vcl/source/filter/wmf/enhwmf.cxx b/vcl/source/filter/wmf/enhwmf.cxx index 4047093865ea..e99003064ffa 100644 --- a/vcl/source/filter/wmf/enhwmf.cxx +++ b/vcl/source/filter/wmf/enhwmf.cxx @@ -1235,13 +1235,13 @@ bool EnhWMFReader::ReadEnhWMF() .ReadUChar( aLogFont.lfQuality ) .ReadUChar( aLogFont.lfPitchAndFamily ); - sal_Unicode lfFaceName[ LF_FACESIZE ]; - - for ( int i = 0; i < LF_FACESIZE; i++ ) + sal_Unicode lfFaceName[LF_FACESIZE+1]; + lfFaceName[LF_FACESIZE] = 0; + for (int i = 0; i < LF_FACESIZE; ++i) { - sal_uInt16 nChar; - pWMF->ReadUInt16( nChar ); - lfFaceName[ i ] = nChar; + sal_uInt16 nChar(0); + pWMF->ReadUInt16(nChar); + lfFaceName[i] = nChar; } aLogFont.alfFaceName = OUString( lfFaceName ); |