2001-03-16 22:47:14 +00:00
|
|
|
/* vi: set sw=4 ts=4: */
|
|
|
|
/*
|
2003-03-19 09:13:01 +00:00
|
|
|
* fflush_stdout_and_exit implementation for busybox
|
2001-03-16 22:47:14 +00:00
|
|
|
*
|
2003-03-19 09:13:01 +00:00
|
|
|
* Copyright (C) 2003 Manuel Novoa III <mjn3@codepoet.org>
|
2001-03-16 22:47:14 +00:00
|
|
|
*
|
2010-08-16 18:14:46 +00:00
|
|
|
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
2001-03-16 22:47:14 +00:00
|
|
|
*/
|
|
|
|
|
2003-03-19 09:13:01 +00:00
|
|
|
/* Attempt to fflush(stdout), and exit with an error code if stdout is
|
|
|
|
* in an error state.
|
2001-03-16 22:47:14 +00:00
|
|
|
*/
|
|
|
|
|
2006-10-26 23:21:47 +00:00
|
|
|
#include "libbb.h"
|
2001-03-16 22:47:14 +00:00
|
|
|
|
2008-06-27 02:52:20 +00:00
|
|
|
void FAST_FUNC fflush_stdout_and_exit(int retval)
|
2003-03-19 09:13:01 +00:00
|
|
|
{
|
2015-10-09 14:42:57 +00:00
|
|
|
xfunc_error_retval = retval;
|
2007-01-03 02:56:00 +00:00
|
|
|
if (fflush(stdout))
|
2007-08-13 14:10:24 +00:00
|
|
|
bb_perror_msg_and_die(bb_msg_standard_output);
|
2015-10-09 14:42:57 +00:00
|
|
|
/* In case we are in NOFORK applet. Do not exit() directly,
|
|
|
|
* but use xfunc_die() */
|
|
|
|
xfunc_die();
|
2001-03-16 22:47:14 +00:00
|
|
|
}
|