diff options
author | Caolán McNamara <caolanm@redhat.com> | 2021-11-07 15:05:33 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2021-11-07 18:07:25 +0100 |
commit | f163ab3c911018fb79d11bacc561a6efd50cee73 (patch) | |
tree | b51bfe167bad02ad6859cc0592cd42ef6d0f3faa | |
parent | b159912cae69dd4ae4f2cae89fcbf5de106f8d41 (diff) |
ofz: Use-of-uninitialized-value
Change-Id: Ic96e20570f0aae9a7fab66fd39d0fadc0b72d3f0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124820
Tested-by: Caolán McNamara <caolanm@redhat.com>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r-- | filter/source/msfilter/svdfppt.cxx | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/filter/source/msfilter/svdfppt.cxx b/filter/source/msfilter/svdfppt.cxx index 0bc723e7c379..ba2bc383f6bd 100644 --- a/filter/source/msfilter/svdfppt.cxx +++ b/filter/source/msfilter/svdfppt.cxx @@ -5256,7 +5256,10 @@ void PPTStyleTextPropReader::Init( SvStream& rIn, const DffRecordHeader& rTextHe sal_uInt32 i; sal_Unicode nChar; std::unique_ptr<sal_Unicode[]> pBuf(new sal_Unicode[ ( nMaxLen >> 1 ) + 1 ]); - rIn.ReadBytes(pBuf.get(), nMaxLen); + void* pDest = pBuf.get(); + auto nRead = rIn.ReadBytes(pDest, nMaxLen); + if (nRead != nMaxLen) + memset(static_cast<char*>(pDest) + nRead, 0, nMaxLen - nRead); nMaxLen >>= 1; pBuf[ nMaxLen ] = 0; sal_Unicode* pPtr = pBuf.get(); |