git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 1/2] t/test-lib.sh: support Korn shell by converting GIT_EXIT_OK to GIT_EXIT_CODE

From
Clemens Buchacher <drizzd@aon.at>
Date
Oct 10, 2009, 12:01 UTC
Message-ID
<20091010120121.GA16336@localhost>
In-Reply-To
<1eweIwf5YoFwmLPWwEFN69a2f-EUnj_kgiagVJoVQYfNQeLjlpm12U84RKxhzjh0NJv36SqO12lAX2c_x0WSgA@cipher.nrlssc.navy.mil>
Hi,
On Fri, Oct 09, 2009 at 01:39:56PM -0500, Brandon Casey wrote:
> For the Korn shell, $? has the value of the last executed statement
> _before_ the call to exit.

I just installed ksh/stable (version 93s+ 2008-01-31) on Debian and it behaves correctly. Maybe you need to upgrade? This really looks like a bug in your shell to me.

Show 12 quoted lines
>  die () {
>  	code=$?
> -	if test -n "$GIT_EXIT_OK"
> +	if test -n "$GIT_EXIT_CODE"
>  	then
> -		exit $code
> +		exit $GIT_EXIT_CODE
>  	else
>  		echo >&5 "FATAL: Unexpected exit with code $code"
>  		exit 1
>  	fi
>  }
So in your shell an unexpected exit will always output this?
 FATAL: Unexpected exit with code <some command>
If we can't rely on the value of $?, we should not use it.
Clemens
Previous: Junio C HamanoNext: Andreas Schwab
Message 8 of 11 in “t/test-lib.sh: support Korn shell by converting GIT_EXIT_OK to GIT_EXIT_CODE”
  1. 1/2 t/test-lib.sh: support Korn shell by converting GIT_EXIT_OK to GIT_EXIT_CODEBrandon Casey, Oct 9, 2009
  2. 2/2 Makefile: use the native (Korn) shell on SunOS and IRIX/IRIX64Brandon Casey, Oct 9, 2009
  3. Jonathan NiederOct 9, 2009
  4. Jonathan NiederOct 9, 2009
  5. Junio C HamanoOct 9, 2009
  6. Brandon CaseyOct 9, 2009
  7. Junio C HamanoOct 10, 2009
  8. Clemens BuchacherOct 10, 2009
  9. Andreas SchwabOct 10, 2009
  10. Ben WaltonOct 10, 2009
  11. Jeff KingOct 10, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.