Skip to content

Commit

Permalink
git-gui: fix problem with gui.maxfilesdisplayed
Browse files Browse the repository at this point in the history
gui.maxfilesdisplayed (added in dd6451f)
was applied brute force on the file list in alphabetic order. As a result,
files that had modifications might not be displayed by git-gui. Even
worse, files that are already in the index might not be displayed, which
makes git-gui hard to use in some workflows.

This fix changes the meaning of gui.maxfilesdisplayed, making it a soft
limit that only applies to "_O" files, i.e. files that are "Untracked,
not staged".

Signed-off-by: Csaba Kiraly <kiraly@disi.unitn.it>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
  • Loading branch information
Csaba Kiraly authored and Pat Thoyts committed Jan 5, 2015
1 parent cdc6aba commit a117fa2
Showing 1 changed file with 12 additions and 9 deletions.
21 changes: 12 additions & 9 deletions git-gui.sh
Original file line number Diff line number Diff line change
Expand Up @@ -1965,20 +1965,22 @@ proc display_all_files {} {
set to_display [lsort [array names file_states]]
set display_limit [get_config gui.maxfilesdisplayed]
if {[llength $to_display] > $display_limit} {
if {!$files_warning} {
# do not repeatedly warn:
set files_warning 1
info_popup [mc "Displaying only %s of %s files." \
$display_limit [llength $to_display]]
}
set to_display [lrange $to_display 0 [expr {$display_limit-1}]]
}
set displayed 0
foreach path $to_display {
set s $file_states($path)
set m [lindex $s 0]
set icon_name [lindex $s 1]
if {$displayed > $display_limit && [string index $m 1] eq {O} } {
if {!$files_warning} {
# do not repeatedly warn:
set files_warning 1
info_popup [mc "Display limit (gui.maxfilesdisplayed = %s) reached, not showing all %s files." \
$display_limit [llength $to_display]]
}
continue
}
set s [string index $m 0]
if {$s ne {U} && $s ne {_}} {
display_all_files_helper $ui_index $path \
Expand All @@ -1993,6 +1995,7 @@ proc display_all_files {} {
if {$s ne {_}} {
display_all_files_helper $ui_workdir $path \
$icon_name $s
incr displayed
}
}
Expand Down

0 comments on commit a117fa2

Please sign in to comment.