fix crash seen when experimenting with tdf#129547

Change-Id: I0b26a7f683f91d3307856f86c5a437fde1155451
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/149331
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
diff --git a/framework/source/accelerators/acceleratorconfiguration.cxx b/framework/source/accelerators/acceleratorconfiguration.cxx
index 48e0d36..e07c826 100644
--- a/framework/source/accelerators/acceleratorconfiguration.cxx
+++ b/framework/source/accelerators/acceleratorconfiguration.cxx
@@ -64,7 +64,10 @@ namespace framework
    static OUString lcl_getKeyString(const css::awt::KeyEvent& aKeyEvent)
    {
        const sal_Int32 nBeginIndex = 4; // "KEY_" is the prefix of an identifier...
        OUStringBuffer sKeyBuffer((KeyMapping::get().mapCodeToIdentifier(aKeyEvent.KeyCode)).subView(nBeginIndex));
        OUString sKey(KeyMapping::get().mapCodeToIdentifier(aKeyEvent.KeyCode));
        if (sKey.getLength() < nBeginIndex) // dead key
            return OUString();
        OUStringBuffer sKeyBuffer(sKey.subView(nBeginIndex));

        if ( (aKeyEvent.Modifiers & css::awt::KeyModifier::SHIFT) == css::awt::KeyModifier::SHIFT )
            sKeyBuffer.append("_SHIFT");