[PATCH] bareboxenv: Return proper exit code on failure.

Marc Kleine-Budde mkl at pengutronix.de
Tue Feb 26 06:36:13 EST 2013


On 02/26/2013 12:20 PM, Christian Kapeller wrote:
> In case environment loading/saving failed, the calling program
> should be informed about that by returning a non zero exit code.
> 
> Signed-off-by: Christian Kapeller <christian.kapeller at cmotion.eu>
> ---
>  scripts/bareboxenv.c |   16 ++++++++++++----
>  1 file changed, 12 insertions(+), 4 deletions(-)
> 
> diff --git a/scripts/bareboxenv.c b/scripts/bareboxenv.c
> index 707d63d..3fd1429 100644
> --- a/scripts/bareboxenv.c
> +++ b/scripts/bareboxenv.c
> @@ -138,7 +138,7 @@ void usage(char *prgname)
>  int main(int argc, char *argv[])
>  {
>  	int opt;
> -	int save = 0, load = 0, pad = 0, fd;
> +	int save = 0, load = 0, pad = 0, err = 0, fd;
>  	char *filename = NULL, *dirname = NULL;
>  	int verbose = 0;
>  
> @@ -191,12 +191,20 @@ int main(int argc, char *argv[])
>  	if (load) {
>  		if (verbose)
>  			printf("loading env from file %s to %s\n", filename, dirname);
> -		envfs_load(filename, dirname, 0);
> +
> +		err = envfs_load(filename, dirname, 0);
> +
> +		if(verbose && err)
                 ^^^

space please

> +			printf("loading env failed: %d\n", err);
>  	}
>  	if (save) {
>  		if (verbose)
>  			printf("saving contents of %s to file %s\n", dirname, filename);
> -		envfs_save(filename, dirname);
> +
> +		err = envfs_save(filename, dirname);
> +
> +		if(verbose && err)

dito

> +			printf("saving env failed: %d\n", err);
>  	}
> -	exit(0);
> +	exit((err)?1:0);
extra spaces, please: err ? 1 : 0
>  }
> 
Marc

-- 
Pengutronix e.K.                  | Marc Kleine-Budde           |
Industrial Linux Solutions        | Phone: +49-231-2826-924     |
Vertretung West/Dortmund          | Fax:   +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686  | http://www.pengutronix.de   |

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 263 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/barebox/attachments/20130226/6a4445e8/attachment-0001.sig>


More information about the barebox mailing list