diff --git a/share/qtcreator/gdbmacros/gdbmacros.cpp b/share/qtcreator/gdbmacros/gdbmacros.cpp
index eca4db27ec3c96d120a026fa4aba1cfd0b8863f4..1da444113ea1f44d557d3ede56bffbf4cb2d6d55 100644
--- a/share/qtcreator/gdbmacros/gdbmacros.cpp
+++ b/share/qtcreator/gdbmacros/gdbmacros.cpp
@@ -2228,9 +2228,11 @@ static void qDumpStdMap(QDumper &d)
                 if (isSimpleKey && isSimpleValue) {
                     P(d, "type", valueType);
                     P(d, "addr", addOffset(node, valueOffset));
+                    P(d, "numchild", 0);
                 } else {
                     P(d, "addr", node);
                     P(d, "type", pairType);
+                    P(d, "numchild", 2);
                 }
             d.endHash();
         }
diff --git a/src/plugins/fakevim/fakevimhandler.cpp b/src/plugins/fakevim/fakevimhandler.cpp
index e23ba991fb071e3b96934509dff8fa4543a96e6e..5a30eac3265bad54776674a4db9239d413bd1139 100644
--- a/src/plugins/fakevim/fakevimhandler.cpp
+++ b/src/plugins/fakevim/fakevimhandler.cpp
@@ -986,6 +986,7 @@ bool FakeVimHandler::Private::handleCommandMode(int key, int unmodified,
         finishMovement();
         m_desiredColumn = savedColumn;
     } else if (key == 'l' || key == Key_Right) {
+        m_moveType = MoveExclusive;
         moveRight(qMin(count(), rightDist()));
         finishMovement();
     } else if (key == 'L') {
@@ -1099,6 +1100,7 @@ bool FakeVimHandler::Private::handleCommandMode(int key, int unmodified,
         moveToNextWord(true);
         finishMovement("W");
     } else if (key == 'x') { // = "dl"
+        m_moveType = MoveExclusive;
         if (atEndOfLine())
             moveLeft();
         recordBeginGroup();