vcl/source/outdev/text.cxx |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 6204b213d478d99ff556b2b270af3151da1ac357
Author:     Caolán McNamara <caol...@redhat.com>
AuthorDate: Tue Apr 12 08:45:23 2022 +0100
Commit:     Michael Stahl <michael.st...@allotropia.de>
CommitDate: Tue Apr 12 11:57:24 2022 +0200

    ofz: Use-of-uninitialized-value
    
    Change-Id: I87cfad2da9b90bc4487dc4deb2fda5bb31a6b763
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132857
    Tested-by: Jenkins
    Reviewed-by: Michael Stahl <michael.st...@allotropia.de>

diff --git a/vcl/source/outdev/text.cxx b/vcl/source/outdev/text.cxx
index 9de93b342c53..0c73a4d347fd 100644
--- a/vcl/source/outdev/text.cxx
+++ b/vcl/source/outdev/text.cxx
@@ -1678,7 +1678,7 @@ void OutputDevice::ImplDrawText( OutputDevice& 
rTargetDevice, const tools::Recta
         tools::Long nMnemonicX = 0;
         tools::Long nMnemonicY = 0;
         DeviceCoordinate nMnemonicWidth = 0;
-        if ( nMnemonicPos != -1 )
+        if (nMnemonicPos != -1 && nMnemonicPos < aStr.getLength())
         {
             std::unique_ptr<tools::Long[]> const pCaretXArray(new 
tools::Long[2 * aStr.getLength()]);
             /*sal_Bool bRet =*/ _rLayout.GetCaretPositions( aStr, 
pCaretXArray.get(), 0, aStr.getLength() );

Reply via email to