diff options
| author | Paul Eggert | 2012-11-03 11:54:17 -0700 |
|---|---|---|
| committer | Paul Eggert | 2012-11-03 11:54:17 -0700 |
| commit | 7ccfb720b477df05042729e0e300bae5922f5120 (patch) | |
| tree | d5bfded71b48dfefbc4e3334c0ae586de29ab7bc /src/ChangeLog | |
| parent | 376a8e83bb3438f77dadf2d9910ef7baabcc82c2 (diff) | |
| download | emacs-7ccfb720b477df05042729e0e300bae5922f5120.tar.gz emacs-7ccfb720b477df05042729e0e300bae5922f5120.zip | |
Fix data-loss with --batch.
* admin/merge-gnulib (GNULIB_MODULES): Add close-stream.
* lib/close-stream.c, lib/close-stream.h, lib/fpending.c
* lib/fpending.h, m4/close-stream.m4, m4/fpending.m4:
New files, from gnulib.
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
* src/emacs.c: Include <close-stream.h>.
(close_output_streams): New function.
(main): Pass it to atexit, so that Emacs closes stdout and stderr
and handles errors appropriately.
(Fkill_emacs): Don't worry about flushing, as close_output_stream
does that now.
Fixes: debbugs:9574
Diffstat (limited to 'src/ChangeLog')
| -rw-r--r-- | src/ChangeLog | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 2f040accd9a..be10016fc33 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,5 +1,13 @@ | |||
| 1 | 2012-11-03 Paul Eggert <eggert@cs.ucla.edu> | 1 | 2012-11-03 Paul Eggert <eggert@cs.ucla.edu> |
| 2 | 2 | ||
| 3 | Fix data-loss with --batch (Bug#9574). | ||
| 4 | * emacs.c: Include <close-stream.h>. | ||
| 5 | (close_output_streams): New function. | ||
| 6 | (main): Pass it to atexit, so that Emacs closes stdout and stderr | ||
| 7 | and handles errors appropriately. | ||
| 8 | (Fkill_emacs): Don't worry about flushing, as close_output_stream | ||
| 9 | does that now. | ||
| 10 | |||
| 3 | Fix a race condition that causes Emacs to mess up glib (Bug#8855). | 11 | Fix a race condition that causes Emacs to mess up glib (Bug#8855). |
| 4 | The symptom is a diagnostic "GLib-WARNING **: In call to | 12 | The symptom is a diagnostic "GLib-WARNING **: In call to |
| 5 | g_spawn_sync(), exit status of a child process was requested but | 13 | g_spawn_sync(), exit status of a child process was requested but |