aboutsummaryrefslogtreecommitdiffstats
path: root/src/ChangeLog
diff options
context:
space:
mode:
authorKenichi Handa2012-09-06 10:49:15 +0900
committerKenichi Handa2012-09-06 10:49:15 +0900
commitfca81a8d405cd4c825e144099c54dd163636aa3b (patch)
treeee09be4b0e079b9c8863c8b570496a169227b218 /src/ChangeLog
parentf41d6f9db69ce77fe9b3a637de407e8b589e0dc4 (diff)
parent067b39d4296765e83f9530eca456168f6cda95fc (diff)
downloademacs-fca81a8d405cd4c825e144099c54dd163636aa3b.tar.gz
emacs-fca81a8d405cd4c825e144099c54dd163636aa3b.zip
merge trunk
Diffstat (limited to 'src/ChangeLog')
-rw-r--r--src/ChangeLog101
1 files changed, 101 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 7922a92d0fc..24d290e163d 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,104 @@
12012-09-05 Paul Eggert <eggert@cs.ucla.edu>
2
3 Fix race conditions with signal handlers and errno.
4 Be more systematic about preserving errno whenever a signal
5 handler returns, even if it's not in the main thread. Do this by
6 renaming signal handlers to distinguish between signal delivery
7 and signal handling. All uses changed.
8 * atimer.c (deliver_alarm_signal): Rename from alarm_signal_handler.
9 * data.c (deliver_arith_signal): Rename from arith_error.
10 * dispnew.c (deliver_window_change_signal): Rename from
11 window_change_signal.
12 * emacs.c (deliver_error_signal): Rename from fatal_error_signal.
13 (deliver_danger_signal) [SIGDANGER]: Rename from memory_warning_signal.
14 * keyboard.c (deliver_input_available_signal): Rename from
15 input_available_signal.
16 (deliver_user_signal): Rename from handle_user_signal.
17 (deliver_interrupt_signal): Rename from interrupt_signal.
18 * process.c (deliver_pipe_signal): Rename from send_process_trap.
19 (deliver_child_signal): Rename from sigchld_handler.
20 * atimer.c (handle_alarm_signal):
21 * data.c (handle_arith_signal):
22 * dispnew.c (handle_window_change_signal):
23 * emacs.c (handle_fatal_signal, handle_danger_signal):
24 * keyboard.c (handle_input_available_signal):
25 * keyboard.c (handle_user_signal, handle_interrupt_signal):
26 * process.c (handle_pipe_signal, handle_child_signal):
27 New functions, with the actual signal-handling code taken from the
28 original respective signal handlers, sans the sporadic attempts to
29 preserve errno, since that's now done by handle_on_main_thread.
30 * atimer.c (alarm_signal_handler): Remove unnecessary decl.
31 * emacs.c, floatfns.c, lisp.h: Remove unused FLOAT_CATCH_SIGKILL cruft.
32 * emacs.c (main_thread) [FORWARD_SIGNAL_TO_MAIN_THREAD]:
33 Move to sysdep.c.
34 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]:
35 Move initialization of main_thread to sysdep.c's init_signals.
36 * process.c (waitpid) [!WNOHANG]: #define to wait; that's good enough for
37 our usage, and simplifies the mainline code.
38 (record_child_status_change): New static function, as a helper
39 for handle_child_signal, and with most of the old child handler's
40 contents.
41 (CAN_HANDLE_MULTIPLE_CHILDREN): New constant.
42 (handle_child_signal): Use the above.
43 * sysdep.c (main_thread) [FORWARD_SIGNAL_TO_MAIN_THREAD]:
44 Moved here from emacs.c.
45 (init_signals) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it;
46 code moved here from emacs.c's main function.
47 * sysdep.c, syssignal.h (handle_on_main_thread): New function,
48 replacing the old SIGNAL_THREAD_CHECK. All uses changed. This
49 lets callers save and restore errno properly.
50
512012-09-05 Dmitry Antipov <dmantipov@yandex.ru>
52
53 Remove redundant or unused things here and there.
54 * lisp.h (CYCLE_CHECK, CHAR_TABLE_TRANSLATE): Remove.
55 * conf_post.h (RE_TRANSLATE): Use char_table_translate.
56 * editfns.c (Fcompare_buffer_substrings): Likewise.
57 * frame.h (struct terminal, struct font_driver_list):
58 Remove redundant declarations.
59 * window.h (Qleft, Qright): Likewise.
60
612012-09-05 Dmitry Antipov <dmantipov@yandex.ru>
62
63 Do not mark objects from deleted buffers, windows and frames.
64 * alloc.c (mark_buffer): Mark just the buffer if it is dead.
65 (mark_object): Likewise for windows and frames.
66
672012-09-05 Dmitry Antipov <dmantipov@yandex.ru>
68
69 * alloc.c (valid_lisp_object_p): Treat killed buffers,
70 buffer_defaults and buffer_local_symbols as valid objects.
71 Return special value to denote them.
72
732012-09-05 Paul Eggert <eggert@cs.ucla.edu>
74
75 * fileio.c, filelock.c, floatfns.c, fns.c: Use bool for boolean.
76 * fileio.c (auto_saving, auto_save_error_occurred, make_temp_name)
77 (Fexpand_file_name, barf_or_query_if_file_exists, Fcopy_file)
78 (file_name_absolute_p, Fsubstitute_in_file_name):
79 (check_executable, check_writable, Ffile_accessible_directory_p)
80 (Fset_file_selinux_context, Fdefault_file_modes)
81 (Finsert_file_contents, choose_write_coding_system)
82 (Fwrite_region, build_annotations, a_write, e_write)
83 (Fdo_auto_save):
84 * filelock.c (boot_time_initialized, get_boot_time)
85 (get_boot_time_1, lock_file_1, within_one_second):
86 * floatfns.c (in_float):
87 * fns.c (concat, internal_equal, Frequire, base64_encode_1)
88 (base64_decode_1, cmpfn_eql, cmpfn_user_defined)
89 (sweep_weak_table, sweep_weak_hash_tables, secure_hash):
90 * lisp.h (struct Lisp_Hash_Table.cmpfn):
91 * window.c (compare_window_configurations):
92 Use bool for booleans.
93 * fileio.c (auto_saving_dir_umask, auto_saving_mode_bits)
94 (Fdefault_file_modes): Now mode_t, not int, for modes.
95 (Fdo_auto_save): Set a boolean to 1 rather than using ++.
96 (internal_delete_file): Now returns void, not a (boolean) int,
97 since nobody was looking at the return value.
98 * lisp.h, window.h: Adjust to above API changes.
99
100 * xdisp.c (set_message): Simplify and reindent last change.
101
12012-09-05 Juanma Barranquero <lekktu@gmail.com> 1022012-09-05 Juanma Barranquero <lekktu@gmail.com>
2 103
3 * makefile.w32-in ($(BLD)/sysdep.$(O)): Update dependencies. 104 * makefile.w32-in ($(BLD)/sysdep.$(O)): Update dependencies.