From: Jakub Narebski Date: Sat, 26 Feb 2011 22:32:33 +0000 (+0100) Subject: git-instaweb: Change how gitweb.psgi is made runnable as standalone app X-Git-Tag: v1.7.5-rc0~72^2 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=20e7ab8ae26108e1d8675c375be7f06820da5cb0;p=git.git git-instaweb: Change how gitweb.psgi is made runnable as standalone app According to blog post "FindBin, __FILE__, $0 and PSGI woes" http://bulknews.typepad.com/blog/2011/02/findbin-__file__-0-and-psgi-woes.html by Tatsuhiko Miyagawa, using 'if (__FILE__ eq $0)' in .psgi code (to check if script was run from command line), is not supposed to work since Plack 0.9971. Replace it with one of proposed solutions; while at it return $app explicitely, rather than implicitely by being a last expression. This affects 'plackup' web server. While at it cleanup whitespace. Signed-off-by: Jakub Narebski Acked-by: Eric Wong Signed-off-by: Junio C Hamano --- diff --git a/git-instaweb.sh b/git-instaweb.sh index 10fcebb11..8bfa8a055 100755 --- a/git-instaweb.sh +++ b/git-instaweb.sh @@ -558,12 +558,14 @@ my \$app = builder { # make it runnable as standalone app, # like it would be run via 'plackup' utility -if (__FILE__ eq \$0) { +if (caller) { + return \$app; +} else { require Plack::Runner; my \$runner = Plack::Runner->new(); \$runner->parse_options(qw(--env deployment --port $port), - "$local" ? qw(--host 127.0.0.1) : ()); + "$local" ? qw(--host 127.0.0.1) : ()); \$runner->run(\$app); } __END__