From: Shawn O. Pearce Date: Sat, 20 Jan 2007 23:50:14 +0000 (-0500) Subject: git-gui: Corrected behavior of deleted (but existing in HEAD) files. X-Git-Tag: gitgui-0.6.0~141 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=6b0f3f46293e2f718054e9947e209c0344721a69;p=git.git git-gui: Corrected behavior of deleted (but existing in HEAD) files. Apparently I did not account for the D_ file state. This can occur when a file has been marked for deletion by deleting it from the index, and the file also does not exist in the working directory. Typically this happens when the user deletes the file, hits Rescan, then includes the missing file in the commit, then hits Rescan again. We don't find the file in the working directory but its been removed in the index, so the state becomes D_. This state should be identical with DD. I'm not entirely sure why DD occurs sometimes and D_ others, it would seem like D_ is the state that should be happening instead of DD, leading me to believe there is a quirk in git-gui's state manipulation code. Signed-off-by: Shawn O. Pearce --- diff --git a/git-gui b/git-gui index 95c922b21..04fdb0c1e 100755 --- a/git-gui +++ b/git-gui @@ -1429,6 +1429,7 @@ proc write_update_indexinfo {fd pathList totalCnt batch msg after} { switch -glob -- [lindex $s 0] { A? {set new _O} M? {set new _M} + D_ {set new _D} D? {set new _?} ?? {continue} } @@ -1945,6 +1946,7 @@ foreach i { {_D i question "Missing"} {DD i removed "Removed by commit"} + {D_ i removed "Removed by commit"} {DO i removed "Removed (still exists)"} {DM i removed "Removed (but modified)"}