From ee6d7ae3848aa3c23176ff5f4e205b13d71f6b25 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Thorbj=C3=B8rn=20Lindeijer?= <thorbjorn.lindeijer@nokia.com>
Date: Thu, 27 May 2010 14:46:22 +0200
Subject: [PATCH] Fixed position of current argument highlight for constructors

It was broken due to a leading space which was trimmed off, breaking the
begin and end positions. Instead, don't trim, but just make sure not to
add a leading space when it is not necessary.

Done-with: Christian Kamm <christian.d.kamm@nokia.com>
Task-number: QTCREATORBUG-1398
---
 src/libs/cplusplus/TypePrettyPrinter.cpp | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/libs/cplusplus/TypePrettyPrinter.cpp b/src/libs/cplusplus/TypePrettyPrinter.cpp
index 7126ce2ac41..e1277f27261 100644
--- a/src/libs/cplusplus/TypePrettyPrinter.cpp
+++ b/src/libs/cplusplus/TypePrettyPrinter.cpp
@@ -87,7 +87,7 @@ QString TypePrettyPrinter::operator()(const FullySpecifiedType &ty)
     bool previousNeedsParens = switchNeedsParens(false);
     acceptType(ty);
     switchNeedsParens(previousNeedsParens);
-    return switchText(previousName).trimmed();
+    return switchText(previousName);
 }
 
 QString TypePrettyPrinter::operator()(const FullySpecifiedType &type, const QString &name)
@@ -317,8 +317,11 @@ void TypePrettyPrinter::visit(Function *type)
     }
 
     if (_overview->showReturnTypes()) {
-        _text.prepend(QLatin1Char(' '));
-        _text.prepend(_overview->prettyType(type->returnType()));
+        const QString returnType = _overview->prettyType(type->returnType());
+        if (!returnType.isEmpty()) {
+            _text.prepend(QLatin1Char(' '));
+            _text.prepend(returnType);
+        }
     }
 
     if (_overview->showFunctionSignatures()) {
-- 
GitLab