diff --git a/src/plugins/coreplugin/editormanager/editormanager.cpp b/src/plugins/coreplugin/editormanager/editormanager.cpp
index 63717baa2fcdcee5280294574fd5a4b41a8aebc1..0f81707992b3f874b044e5d1ff3098907f1b3350 100644
--- a/src/plugins/coreplugin/editormanager/editormanager.cpp
+++ b/src/plugins/coreplugin/editormanager/editormanager.cpp
@@ -1187,8 +1187,10 @@ int extractLineNumber(QString *fileName)
         return -1;
     if (fileName->at(i) == ':' || fileName->at(i) == '+') {
         int result = fileName->mid(i+1).toInt();
-        *fileName = fileName->left(i);
-        return result;
+        if (result) {
+            *fileName = fileName->left(i);
+            return result;
+        }
     }
     return -1;
 }