diff options
| author | Orgad Shaneh <orgad.shaneh@audiocodes.com> | 2013-02-10 22:22:40 +0200 |
|---|---|---|
| committer | Orgad Shaneh <orgads@gmail.com> | 2013-02-11 11:10:11 +0100 |
| commit | 2c68c801969c1cf713d9bef8925d6c2580d8730f (patch) | |
| tree | 3ee8bcfdb01b027974b051aca7e215a9120b2893 /src/plugins/git/commitdata.cpp | |
| parent | ae58073080c2bebef359e84e25a5d0beef32fddf (diff) | |
Git: Make file state resolving more accurate
Change-Id: I238ef964df126a341c87dacf9344ff1570f31845
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Diffstat (limited to 'src/plugins/git/commitdata.cpp')
| -rw-r--r-- | src/plugins/git/commitdata.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/plugins/git/commitdata.cpp b/src/plugins/git/commitdata.cpp index fb7092c7b86..cc7c91b1fad 100644 --- a/src/plugins/git/commitdata.cpp +++ b/src/plugins/git/commitdata.cpp @@ -90,7 +90,7 @@ static FileStates stateFor(const QChar &c) { switch (c.unicode()) { case ' ': - return UntrackedFile; + return EmptyFileState; case 'M': return ModifiedFile; case 'A': @@ -103,6 +103,8 @@ static FileStates stateFor(const QChar &c) return CopiedFile; case 'U': return UnmergedFile; + case '?': + return UntrackedFile; default: return UnknownFileState; } @@ -144,11 +146,10 @@ bool CommitData::checkLine(const QString &stateInfo, const QString &file) files.append(qMakePair(xState | UnmergedFile | UnmergedUs, file)); } } else { - xState |= StagedFile; - if (xState != StagedFile) - files.append(qMakePair(xState, file)); + if (xState != EmptyFileState) + files.append(qMakePair(xState | StagedFile, file)); - if (yState != UntrackedFile) { + if (yState != EmptyFileState) { QString newFile = file; if (xState & (RenamedFile | CopiedFile)) newFile = file.mid(file.indexOf(QLatin1String(" -> ")) + 4); |
