diff --git a/src/plugins/fakevim/fakevimhandler.cpp b/src/plugins/fakevim/fakevimhandler.cpp index 68ceafac3f0..cec8b885af9 100644 --- a/src/plugins/fakevim/fakevimhandler.cpp +++ b/src/plugins/fakevim/fakevimhandler.cpp @@ -1417,7 +1417,7 @@ EventResult FakeVimHandler::Private::handleKey(const Input &input) if (m_mode == InsertMode || m_mode == ReplaceMode || m_mode == CommandMode) { g.pendingInput.append(input); const char code = m_mode == InsertMode ? 'i' : 'n'; - if (g.mappings[code].mappingDone(&g.pendingInput)) + if (g.mappings.value(code).mappingDone(&g.pendingInput)) return handleKey2(); if (g.inputTimer != -1) killTimer(g.inputTimer); @@ -1429,34 +1429,33 @@ EventResult FakeVimHandler::Private::handleKey(const Input &input) EventResult FakeVimHandler::Private::handleKey2() { + Inputs pendingInput = g.pendingInput; + g.pendingInput.clear(); if (m_mode == InsertMode) { EventResult result = EventUnhandled; - foreach (const Input &in, g.pendingInput) { + foreach (const Input &in, pendingInput) { EventResult r = handleInsertMode(in); if (r == EventHandled) result = EventHandled; } - g.pendingInput.clear(); return result; } if (m_mode == ReplaceMode) { EventResult result = EventUnhandled; - foreach (const Input &in, g.pendingInput) { + foreach (const Input &in, pendingInput) { EventResult r = handleReplaceMode(in); if (r == EventHandled) result = EventHandled; } - g.pendingInput.clear(); return result; } if (m_mode == CommandMode) { EventResult result = EventUnhandled; - foreach (const Input &in, g.pendingInput) { + foreach (const Input &in, pendingInput) { EventResult r = handleCommandMode(in); if (r == EventHandled) result = EventHandled; } - g.pendingInput.clear(); return result; } return EventUnhandled; diff --git a/tests/manual/debugger/simple/simple_test_app.cpp b/tests/manual/debugger/simple/simple_test_app.cpp index 47de98b215b..ca24206000e 100644 --- a/tests/manual/debugger/simple/simple_test_app.cpp +++ b/tests/manual/debugger/simple/simple_test_app.cpp @@ -6117,6 +6117,10 @@ int main(int argc, char *argv[]) { QApplication app(argc, argv); + QChar c(0x1E9E); + bool b = c.isPrint(); + qDebug() << c << b; + // Notify Creator about auto run intention. if (USE_AUTORUN) qWarning("Creator: Switch on magic autorun.");