summaryrefslogtreecommitdiff
path: root/git-gui/lib/diff.tcl
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2025-02-03 16:12:33 -0800
committerJunio C Hamano <gitster@pobox.com>2025-02-03 16:12:33 -0800
commite5a0d5d8bbeed7d0cb21533f9727591e110f50b8 (patch)
treed832eac70fdd06842f431101c655390396fa05ce /git-gui/lib/diff.tcl
parent0cb454c0727efc1e7ef3ea23d7d6391a80769118 (diff)
parentbc204b742735ae06f65bb20291c95985c9633b7f (diff)
Merge branch 'master' into ds/backfill
* master: (446 commits) The seventh batch The sixth batch The fifth batch The fourth batch refs/reftable: fix uninitialized memory access of `max_index` remote: announce removal of "branches/" and "remotes/" The third batch hash.h: drop unsafe_ function variants csum-file: introduce hashfile_checkpoint_init() t/helper/test-hash.c: use unsafe_hash_algo() csum-file.c: use unsafe_hash_algo() hash.h: introduce `unsafe_hash_algo()` csum-file.c: extract algop from hashfile_checksum_valid() csum-file: store the hash algorithm as a struct field t/helper/test-tool: implement sha1-unsafe helper trace2: prevent segfault on config collection with valueless true refs: fix creation of reflog entries for symrefs ci: wire up Visual Studio build with Meson ci: raise error when Meson generates warnings meson: fix compilation with Visual Studio ...
Diffstat (limited to 'git-gui/lib/diff.tcl')
-rw-r--r--git-gui/lib/diff.tcl26
1 files changed, 6 insertions, 20 deletions
diff --git a/git-gui/lib/diff.tcl b/git-gui/lib/diff.tcl
index 871ad488c2..d657bfec05 100644
--- a/git-gui/lib/diff.tcl
+++ b/git-gui/lib/diff.tcl
@@ -63,28 +63,17 @@ proc force_diff_encoding {enc} {
}
proc handle_empty_diff {} {
- global current_diff_path file_states file_lists
- global diff_empty_count
+ global current_diff_path file_states
+ global ui_diff
set path $current_diff_path
set s $file_states($path)
if {[lindex $s 0] ne {_M} || [has_textconv $path]} return
- # Prevent infinite rescan loops
- incr diff_empty_count
- if {$diff_empty_count > 1} return
-
- info_popup [mc "No differences detected.
-
-%s has no changes.
-
-The modification date of this file was updated by another application, but the content within the file was not changed.
-
-A rescan will be automatically started to find other files which may have the same state." [short_path $path]]
-
- clear_diff
- display_file $path __
- rescan ui_ready 0
+ $ui_diff conf -state normal
+ $ui_diff insert end [mc "* No differences detected; stage the file to de-list it from Unstaged Changes.\n"] d_info
+ $ui_diff insert end [mc "* Click to find other files that may have the same state.\n"] d_rescan
+ $ui_diff conf -state disabled
}
proc show_diff {path w {lno {}} {scroll_pos {}} {callback {}}} {
@@ -387,7 +376,6 @@ proc read_diff {fd conflict_size cont_info} {
global ui_diff diff_active is_submodule_diff
global is_3way_diff is_conflict_diff current_diff_header
global current_diff_queue
- global diff_empty_count
$ui_diff conf -state normal
while {[gets $fd line] >= 0} {
@@ -559,8 +547,6 @@ proc read_diff {fd conflict_size cont_info} {
if {[$ui_diff index end] eq {2.0}} {
handle_empty_diff
- } else {
- set diff_empty_count 0
}
set callback [lindex $cont_info 1]