Skip to content

Commit 61f5956

Browse files
committed
git-gui: avoid exception upon Ctrl+T in an empty list
Previously unstaged files can be staged by clicking on them and then pressing Ctrl+T. Conveniently, the next unstaged file is selected automatically so that the unstaged files can be staged by repeatedly pressing Ctrl+T. When a user hits Ctrl+T one time too many, though, Git GUI used to throw this exception: expected number but got "" expected number but got "" while executing "expr {int([lindex [$w tag ranges in_diff] 0])}" (procedure "toggle_or_diff" line 13) invoked from within "toggle_or_diff toggle .vpane.files.workdir.list " (command bound to event) Let's just avoid that by skipping the operation when there are no more files to stage. This fixes #1060 Signed-off-by: Johannes Schindelin <[email protected]>
1 parent ecba3d3 commit 61f5956

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

git-gui/git-gui.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2505,6 +2505,10 @@ proc toggle_or_diff {mode w args} {
25052505
if {$last_clicked ne {}} {
25062506
set lno [lindex $last_clicked 1]
25072507
} else {
2508+
if {[llength $file_lists($w)] == 0} {
2509+
set last_clicked {}
2510+
return
2511+
}
25082512
set lno [expr {int([lindex [$w tag ranges in_diff] 0])}]
25092513
}
25102514
if {$mode eq "toggle"} {

0 commit comments

Comments
 (0)