From 7aecb128779ffd8258f01f4382df963900ae6acd Mon Sep 17 00:00:00 2001 From: Gerrit Pape Date: Fri, 29 Jun 2007 11:32:29 +0000 Subject: [PATCH] git-gui: properly popup error if gitk should be started but is not installed On 'Visualize ...', a gitk process is started. Since it is run in the background, catching a possible startup error doesn't work, and the error output goes to the console git-gui is started from. The most probable startup error is that gitk is not installed; so before trying to start, check for the existence of the gitk program, and popup an error message unless it's found. This was noticed and reported by Paul Wise through http://bugs.debian.org/429810 Signed-off-by: Gerrit Pape Signed-off-by: Shawn O. Pearce --- git-gui.sh | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/git-gui.sh b/git-gui.sh index 4fbc408c4d..6b7321bb03 100755 --- a/git-gui.sh +++ b/git-gui.sh @@ -1042,15 +1042,17 @@ proc do_gitk {revs} { # lets us bypass using shell process on Windows systems. # set cmd [list [info nameofexecutable]] - lappend cmd [gitexec gitk] + set exe [gitexec gitk] + lappend cmd $exe if {$revs ne {}} { append cmd { } append cmd $revs } - if {[catch {eval exec $cmd &} err]} { - error_popup "Failed to start gitk:\n\n$err" + if {! [file exists $exe]} { + error_popup "Unable to start gitk:\n\n$exe does not exist" } else { + eval exec $cmd & set ui_status_value $starting_gitk_msg after 10000 { if {$ui_status_value eq $starting_gitk_msg} { -- 2.11.4.GIT