From 8e21546009518d07f2aab9f1f14d7569beebfb56 Mon Sep 17 00:00:00 2001
From: Robert Loehning <robert.loehning@nokia.com>
Date: Mon, 15 Mar 2010 16:49:03 +0100
Subject: [PATCH] Fixed parsing of Git branches when current checkout is not on
 a branch.

---
 src/plugins/git/branchmodel.cpp | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/plugins/git/branchmodel.cpp b/src/plugins/git/branchmodel.cpp
index a65373b6371..301df702562 100644
--- a/src/plugins/git/branchmodel.cpp
+++ b/src/plugins/git/branchmodel.cpp
@@ -50,7 +50,14 @@ bool RemoteBranchModel::Branch::parse(const QString &lineIn, bool *isCurrent)
     if (lineIn.size() < 3)
         return false;
 
-    const QStringList tokens =lineIn.mid(2).split(QLatin1Char(' '), QString::SkipEmptyParts);
+    const QString branchInfo = lineIn.mid(2);
+    QStringList tokens;
+    if (*isCurrent && branchInfo.startsWith(QLatin1String("(no branch)"))) {
+        tokens += tr("(no branch)");
+        tokens += branchInfo.mid(11).split(QLatin1Char(' '), QString::SkipEmptyParts);
+    } else {
+        tokens = branchInfo.split(QLatin1Char(' '), QString::SkipEmptyParts);
+    }
     if (tokens.size() < 2)
         return false;
     name = tokens.at(0);
-- 
GitLab