From f18bc27a39107db93afa50e6de24e364e4bdcce2 Mon Sep 17 00:00:00 2001
From: Orgad Shaneh <orgad.shaneh@audiocodes.com>
Date: Tue, 5 Nov 2013 11:59:42 +0200
Subject: [PATCH] Git: Preserve check state for untracked files

Untracked files always appear last, so filename comparison fails for
them.

Change-Id: I6e0addaddec7ca423b3d63e3e71fe00dbc6ca95e
Reviewed-by: Petar Perisin <petar.perisin@gmail.com>
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
---
 src/plugins/git/gitsubmiteditor.cpp | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/plugins/git/gitsubmiteditor.cpp b/src/plugins/git/gitsubmiteditor.cpp
index 0b7b36566c4..a7f2359da15 100644
--- a/src/plugins/git/gitsubmiteditor.cpp
+++ b/src/plugins/git/gitsubmiteditor.cpp
@@ -64,7 +64,9 @@ public:
                     if (isCheckable(i) && source->isCheckable(j))
                         setChecked(i, source->checked(j));
                     break;
-                } else if (stateFile < sourceStateFile) {
+                } else if (((stateFile.first & UntrackedFile)
+                            == (sourceStateFile.first & UntrackedFile))
+                           && (stateFile < sourceStateFile)) {
                     break;
                 }
             }
-- 
GitLab