backport: gcc-ar.c (main): Handle the returning of the sub-process error code correctly.

2012-09-28  Meador Inge  <meadori@codesourcery.com>

	Backport from mainline
	2012-09-27  Meador Inge  <meadori@codesourcery.com>

	* gcc-ar.c (main): Handle the returning of the sub-process error
	code correctly.

From-SVN: r191836
This commit is contained in:
Meador Inge 2012-09-28 18:50:55 +00:00 committed by Meador Inge
parent f10f176780
commit 76690ca027
2 changed files with 24 additions and 1 deletions

View File

@ -1,3 +1,11 @@
2012-09-28 Meador Inge <meadori@codesourcery.com>
Backport from mainline
2012-09-27 Meador Inge <meadori@codesourcery.com>
* gcc-ar.c (main): Handle the returning of the sub-process error
code correctly.
2012-09-28 Georg-Johann Lay <avr@gjlay.de>
Backport from 2012-09-28 trunk r191821.

View File

@ -42,6 +42,7 @@ main(int ac, char **av)
const char *err_msg;
const char **nargv;
bool is_ar = !strcmp (PERSONALITY, "ar");
int exit_code = FATAL_EXIT_CODE;
exe_name = PERSONALITY;
#ifdef CROSS_DIRECTORY_STRUCTURE
@ -96,6 +97,20 @@ main(int ac, char **av)
NULL,NULL, &status, &err);
if (err_msg)
fprintf(stderr, "Error running %s: %s\n", exe_name, err_msg);
else if (status)
{
if (WIFSIGNALED (status))
{
int sig = WTERMSIG (status);
fprintf (stderr, "%s terminated with signal %d [%s]%s\n",
exe_name, sig, strsignal(sig),
WCOREDUMP(status) ? ", core dumped" : "");
}
else if (WIFEXITED (status))
exit_code = WEXITSTATUS (status);
}
else
exit_code = SUCCESS_EXIT_CODE;
return err;
return exit_code;
}