summaryrefslogtreecommitdiff
path: root/ChangeLog
diff options
context:
space:
mode:
authorPaul Smith <psmith@gnu.org>2013-06-28 21:57:59 -0400
committerPaul Smith <psmith@gnu.org>2013-06-28 21:57:59 -0400
commit26fe1a1e362602f333750e7a0c7a85293263ec1b (patch)
treefc76410d37ff3b464dd1da10a4ab4b90e1331354 /ChangeLog
parent2d1e73b8653911082b0f9670ff9460e4eb051b4f (diff)
downloadmake-26fe1a1e362602f333750e7a0c7a85293263ec1b.tar.gz
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.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog9
1 files changed, 8 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index fe97e4ab..b24186af 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2013-06-28 Paul Smith <psmith@gnu.org>
+
+ * 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 <eliz@gnu.org>
* 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.