git-web--browse: recognize any TERM_PROGRAM as a GUI terminal on OS X

It turns out that the presence of SECURITYSESSIONID is not sufficient
for detecting the presence of a GUI under Mac OS X.  SECURITYSESSIONID
appears to only be set when the user has Screen Sharing enabled.
Disabling Screen Sharing and relaunching the shell showed that the
variable was missing, at least under Mac OS X 10.6.8.

On the other hand, TERM_PROGRAM seems to be set for any terminals on
OS X, so just check it is set to something, instead of hardcoding
"Apple_Terminal" and missing other terminals such as iTerm.app.

Signed-off-by: John Szakmeister <john@szakmeister.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
John Szakmeister 2013-03-25 06:13:18 -04:00 коммит произвёл Junio C Hamano
Родитель 7b592fadf1
Коммит be537e43ca
1 изменённых файлов: 2 добавлений и 2 удалений

Просмотреть файл

@ -119,8 +119,8 @@ if test -z "$browser" ; then
browser_candidates="w3m elinks links lynx"
fi
# SECURITYSESSIONID indicates an OS X GUI login session
if test -n "$SECURITYSESSIONID" \
-o "$TERM_PROGRAM" = "Apple_Terminal" ; then
if test -n "$SECURITYSESSIONID" || test -n "$TERM_PROGRAM"
then
browser_candidates="open $browser_candidates"
fi
# /bin/start indicates MinGW