git-gui: avoid exception upon Ctrl+T in an empty list
commit2365e5b17411d50129462c2a1919bedc4fa64c68
authorJohannes Schindelin <johannes.schindelin@gmx.de>
Tue, 9 Jan 2018 14:32:58 +0000 (9 15:32 +0100)
committerJunio C Hamano <gitster@pobox.com>
Tue, 9 Jan 2018 19:02:40 +0000 (9 11:02 -0800)
treea9b5f58ff2e236ee290747bc07cdc86cf73d872c
parent6d02c1e20471cd8b6923c82e8faacfe43a75b1e1
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 https://github.com/git-for-windows/git/issues/1060

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git-gui.sh