Apparently my earlier suspicion that the file state DD was a bug was
correct. A file which has been deleted from the working directory and
from the index will always get the state of D_ during a rescan. Thus
the only valid state for this to have is D_. We should always use only
D_ internally during our state changes.
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
__ -
A_ -
M_ -
- DD {
+ D_ {
unset file_states($path)
catch {unset selected_paths($path)}
}
AD -
MD -
UD -
- _D {set new DD}
+ _D {set new D_}
_M -
MM -
{AD "Added (but gone)"}
{_D "Missing"}
- {DD "Removed by commit"}
{D_ "Removed by commit"}
{DO "Removed (still exists)"}
{DM "Removed (but modified)"}
switch -glob -- [lindex $file_states($path) 0] {
A_ -
M_ -
- DD -
+ D_ -
DO -
DM {
update_indexinfo \