diff --git a/src/plugins/fakevim/fakevimhandler.cpp b/src/plugins/fakevim/fakevimhandler.cpp
index f8a9cce7192bb7b44f9db9cd7061bb6535dd7c44..f42e12339b5498e03111416dbfbd48ac16e9e659 100755
--- a/src/plugins/fakevim/fakevimhandler.cpp
+++ b/src/plugins/fakevim/fakevimhandler.cpp
@@ -2751,7 +2751,7 @@ void FakeVimHandler::Private::handleFfTt(int key)
     if (forward)
         n += block.length();
     int pos = m_tc.position();
-    while (true) {
+    while (pos != n) {
         pos += forward ? 1 : -1;
         if (pos == n)
             break;