diff --git a/lib/checkout_op.tcl b/lib/checkout_op.tcl
index 554c107032..cb04d1e57e 100644
--- a/lib/checkout_op.tcl
+++ b/lib/checkout_op.tcl
@@ -266,7 +266,9 @@ The rescan will be automatically started now.
 		return
 	}
 
-	if {[is_config_true gui.trustmtime]} {
+	if {$curHEAD eq $new_hash} {
+		_after_readtree $this
+	} elseif {[is_config_true gui.trustmtime]} {
 		_readtree $this
 	} else {
 		ui_status {Refreshing file status...}