From 9453a7451d66ee1ea5762a75161bf8a818c01a1f Mon Sep 17 00:00:00 2001 From: Paul Smith Date: Fri, 28 Jun 2013 21:57:59 -0400 Subject: Set O_APPEND mode for stdout/stderr and output-sync temporary files. POSIX does not guarantee that writes will be atomic if a file is opened for normal (non-append) output. That means if multiple processes are writing to the same file, output could be lost. I can't think of a real use-case where we would NOT want append for stdout/stderr, so force it if we can. --- ChangeLog | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'ChangeLog') diff --git a/ChangeLog b/ChangeLog index fe97e4a..b24186a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2013-06-28 Paul Smith + + * misc.c (set_append_mode): Set the O_APPEND flag on a file descriptor. + (open_tmpfd): Set append mode on the temporary file descriptor. + * main.c (main): Set append mode on stdout and stderr. + * makeint.h (set_append_mode): Declare it. + 2013-06-22 Eli Zaretskii * build_w32.bat (LinkGCC): Prevent a comment from being displayed @@ -55,7 +62,7 @@ * main.c (verify_flag): Global variable to determine whether to verify the database or not. (decode_debug_flags): If debug mode, enable verify_flag. - (main): If MAKE_MAINTAINTER_MODE, enable verify_flag, otherwise not. + (main): If MAKE_MAINTAINER_MODE, enable verify_flag, otherwise not. (die): Only verify the database if verify_flag is set. * file.c (enter_file): Don't check caching unless verify_flag. * makeint.h: Export verify_flag. -- cgit v1.2.3