From 0970d85fef9830e3b8e5cbfbdc04dbf00cc4c027 Mon Sep 17 00:00:00 2001 From: Tomohiro Matsuyama Date: Sat, 15 Sep 2012 18:35:24 +0900 Subject: * alloc.c (emacs_blocked_malloc): Remove redundant MALLOC_PROBE. --- src/ChangeLog | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 27e430d7d0d..feb9c6219fb 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2012-09-15 Tomohiro Matsuyama + + * alloc.c (emacs_blocked_malloc): Remove redundant MALLOC_PROBE. + 2012-08-21 Paul Eggert * alloc.c: Use bool for booleans. -- cgit v1.2.1 From cc04a16f0c94cc9b0d18d79ead290f12c3cc4f42 Mon Sep 17 00:00:00 2001 From: Chong Yidong Date: Fri, 21 Sep 2012 11:55:23 +0800 Subject: Backport fix for Bug#12463 from trunk. * image.c (define_image_type): Avoid adding duplicate types to image_types. Suggested by Jörg Walter. --- src/ChangeLog | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index afaa7fd776e..15b47934424 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2012-09-21 Chong Yidong + + * image.c (define_image_type): Avoid adding duplicate types to + image_types (Bug#12463). Suggested by Jörg Walter. + 2012-09-20 YAMAMOTO Mitsuharu * unexmacosx.c: Define LC_DATA_IN_CODE if not defined. -- cgit v1.2.1 From 3296976de2e136851978163be384d34bb683f543 Mon Sep 17 00:00:00 2001 From: Chong Yidong Date: Sun, 23 Sep 2012 16:24:44 +0800 Subject: * keyboard.c (timer_check): Avoid quitting during Fcopy_sequence. --- src/ChangeLog | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 676f4127ba5..b60027880fe 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2012-09-23 Chong Yidong + + * keyboard.c (timer_check): Avoid quitting during Fcopy_sequence. + 2012-09-22 Paul Eggert * .gdbinit: Just stop at fatal_error_backtrace. -- cgit v1.2.1 From 8f4635e97e1587c4026ec83fc1bd9f8954775915 Mon Sep 17 00:00:00 2001 From: Jan Djärv Date: Sun, 23 Sep 2012 10:28:12 +0200 Subject: * nsterm.m (ns_dumpglyphs_image): dr is a new rect to draw image into, background rect may be larger. Fixes: debbugs:12445 --- src/ChangeLog | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index b60027880fe..ee3befaa9ba 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2012-09-23 Jan Djärv + + * nsterm.m (ns_dumpglyphs_image): dr is a new rect to draw image into, + background rect may be larger (Bug#12445). + 2012-09-23 Chong Yidong * keyboard.c (timer_check): Avoid quitting during Fcopy_sequence. -- cgit v1.2.1 From 4d7e6e51dd4acecff466a28d958c50f34fc130b8 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sun, 23 Sep 2012 01:44:20 -0700 Subject: Simplify and avoid signal-handling races. * nt/inc/ms-w32.h (emacs_raise): New macro. * src/alloc.c (die): * src/sysdep.c (emacs_abort) [HAVE_NTGUI]: Avoid recursive loop if there's a fatal error in the function itself. * src/atimer.c (pending_atimers): * src/blockinput.h: Don't include "atimer.h"; no longer needed. (interrupt_input_pending): Remove. All uses removed. pending_signals now counts both atimers and ordinary interrupts. This is less racy than having three separate pending-signal flags. (block_input, unblock_input, totally_unblock_input, unblock_input_to) (input_blocked_p): Rename from their upper-case counterparts BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT, UNBLOCK_INPUT_TO, INPUT_BLOCKED_P, and turn into functions. All uses changed. This makes it easier to access volatile variables more accurately. (BLOCK_INPUT_RESIGNAL): Remove. All uses replaced by unblock_input (). (input_blocked_p): Prefer this to 'interrupt_input_blocked', as that's more reliable if the code is buggy and sets interrupt_input_blocked to a negative value. All uses changed. * src/atimer.c (deliver_alarm_signal): Remove. No need to deliver this to the parent; any thread can handle this signal now. All uses replaced by underlying handler. * src/atimer.c (turn_on_atimers): * src/dispnew.c (handle_window_change_signal): * src/emacs.c (handle_danger_signal): * src/keyboard.c (kbd_buffer_get_event): Don't reestablish signal handler; not needed with sigaction. * src/blockinput.h (UNBLOCK_INPUT_TO, TOTALLY_UNBLOCK_INPUT) (UNBLOCK_INPUT_TO): Rework to avoid unnecessary accesses to volatile variables. (UNBLOCK_INPUT_TO): Now a function. (totally_unblock_input, unblock_input): New decls. * src/data.c (handle_arith_signal, deliver_arith_signal): Move to sysdep.c (init_data): Remove. Necessary stuff now done in init_signal. * src/emacs.c, src/xdisp.c: Include "atimer.h", since we invoke atimer functions. * src/emacs.c (handle_fatal_signal, deliver_fatal_signal): Move to sysdep.c. (fatal_error_code): Remove; no longer needed. (terminate_due_to_signal): Rename from fatal_error_backtrace, since it doesn't always backtrace. All uses changed. No need to reset signal to default, since sigaction and/or die does that for us now. Use emacs_raise (FOO), not kill (getpid (), FOO). (main): Check more-accurately whether we're dumping. Move fatal-error setup to sysdep.c * src/floatfns.c: Do not include "syssignal.h"; no longer needed. * src/gtkutil.c (xg_get_file_name, xg_get_font): Remove no-longer-needed signal-mask manipulation. * src/keyboard.c, src/process.c (POLL_FOR_INPUT): Don't depend on USE_ASYNC_EVENTS, a symbol that is never defined. * src/keyboard.c (read_avail_input): Remove. All uses replaced by gobble_input. (Ftop_level): Use TOTALLY_UNBLOCK_INPUT rather than open code. (kbd_buffer_store_event_hold, gobble_input): (record_asynch_buffer_change) [USABLE_SIGIO]: (store_user_signal_events): No need to mess with signal mask. (gobble_input): If blocking input and there are terminals, simply set pending_signals to 1 and return. All hooks changed to not worry about whether input is blocked. (process_pending_signals): Clear pending_signals before processing them, in case a signal comes in while we're processing. By convention callers now test pending_signals before calling us. (UNBLOCK_INPUT_TO, unblock_input, totally_unblock_input): New functions, to support changes to blockinput.h. (handle_input_available_signal): Now extern. (reinvoke_input_signal): Remove. All uses replaced by handle_async_input. (quit_count): Now volatile, since a signal handler uses it. (handle_interrupt): Now takes bool IN_SIGNAL_HANDLER as arg. All callers changed. Block SIGINT only if not already blocked. Clear sigmask reliably, even if Fsignal returns, which it can. Omit unnecessary accesses to volatile var. (quit_throw_to_read_char): No need to restore sigmask. * src/keyboard.c (gobble_input, handle_user_signal): * src/process.c (wait_reading_process_output): Call signal-handling code rather than killing ourselves. * src/lisp.h: Include , for... (IEEE_FLOATING_POINT): New macro, moved here to avoid duplication. (pending_signals): Now volatile. (syms_of_data): Now const if IEEE floating point. (handle_input_available_signal) [USABLE_SIGIO]: (terminate_due_to_signal, record_child_status_change): New decls. * src/process.c (create_process): Avoid disaster if memory is exhausted while we're processing a vfork, by tightening the critical section around the vfork. (send_process_frame, process_sent_to, handle_pipe_signal) (deliver_pipe_signal): Remove. No longer needed, as Emacs now ignores SIGPIPE. (send_process): No need for setjmp/longjmp any more, since the SIGPIPE stuff is now gone. Instead, report an error if errno is EPIPE. (record_child_status_change): Now extern. PID and W are now args. Return void, not bool. All callers changed. * src/sysdep.c (wait_debugging) [(BSD_SYSTEM || HPUX) && !defined (__GNU__)]: Remove. All uses removed. This bug should be fixed now in a different way. (wait_for_termination_1): Use waitpid rather than sigsuspend, and record the child status change directly. This avoids the need to futz with the signal mask. (process_fatal_action): Move here from emacs.c. (emacs_sigaction_flags): New function, containing much of what used to be in emacs_sigaction_init. (emacs_sigaction_init): Use it. Block nonfatal system signals that are caught by emacs, to make races less likely. (deliver_process_signal): Rename from handle_on_main_thread. All uses changed. (BACKTRACE_LIMIT_MAX): Now at top level. (thread_backtrace_buffer, threadback_backtrace_pointers): New static vars. (deliver_thread_signal, deliver_fatal_thread_signal): New functions, for more-accurate delivery of thread-specific signals. (handle_fatal_signal, deliver_fatal_signal): Move here from emacs.c. (deliver_arith_signal): Handle in this thread, not in the main thread, since it's triggered by this thread. (maybe_fatal_sig): New function. (init_signals): New arg DUMPING so that we can be more accurate about whether we're dumping. Caller changed. Treat thread-specific signals differently from process-general signals. Block all signals while handling fatal error; that's safer. xsignal from SIGFPE only on non-IEEE hosts, treating it as fatal on IEEE hosts. When batch, ignore SIGHUP, SIGINT, SIGTERM if they were already ignored. Ignore SIGPIPE unless batch. (emacs_backtrace): Output backtrace for the appropriate thread, which is not necessarily the main thread. * src/syssignal.h: Include . (emacs_raise): New macro. * src/xterm.c (x_connection_signal): Remove; no longer needed now that we use sigaction. (x_connection_closed): No need to mess with sigmask now. (x_initialize): No need to reset SIGPIPE handler here, since init_signals does this for us now. Fixes: debbugs:12471 --- src/ChangeLog | 134 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 134 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index ee3befaa9ba..37c1ecf8824 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,137 @@ +2012-09-23 Paul Eggert + + Simplify and avoid signal-handling races (Bug#12471). + * alloc.c (die): + * sysdep.c (emacs_abort) [HAVE_NTGUI]: + Avoid recursive loop if there's a fatal error in the function itself. + * atimer.c (pending_atimers): + * blockinput.h: Don't include "atimer.h"; no longer needed. + (interrupt_input_pending): Remove. All uses removed. + pending_signals now counts both atimers and ordinary interrupts. + This is less racy than having three separate pending-signal flags. + (block_input, unblock_input, totally_unblock_input, unblock_input_to) + (input_blocked_p): + Rename from their upper-case counterparts BLOCK_INPUT, + UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT, UNBLOCK_INPUT_TO, + INPUT_BLOCKED_P, and turn into functions. All uses changed. + This makes it easier to access volatile variables more accurately. + (BLOCK_INPUT_RESIGNAL): Remove. All uses replaced by unblock_input (). + (input_blocked_p): Prefer this to 'interrupt_input_blocked', as + that's more reliable if the code is buggy and sets + interrupt_input_blocked to a negative value. All uses changed. + * atimer.c (deliver_alarm_signal): + Remove. No need to deliver this to the parent; any thread can + handle this signal now. All uses replaced by underlying handler. + * atimer.c (turn_on_atimers): + * dispnew.c (handle_window_change_signal): + * emacs.c (handle_danger_signal): + * keyboard.c (kbd_buffer_get_event): + Don't reestablish signal handler; not needed with sigaction. + * blockinput.h (UNBLOCK_INPUT_TO, TOTALLY_UNBLOCK_INPUT) + (UNBLOCK_INPUT_TO): + Rework to avoid unnecessary accesses to volatile variables. + (UNBLOCK_INPUT_TO): Now a function. + (totally_unblock_input, unblock_input): New decls. + * data.c (handle_arith_signal, deliver_arith_signal): Move to sysdep.c + (init_data): Remove. Necessary stuff now done in init_signal. + * emacs.c, xdisp.c: Include "atimer.h", since we invoke atimer functions. + * emacs.c (handle_fatal_signal, deliver_fatal_signal): Move to sysdep.c. + (fatal_error_code): Remove; no longer needed. + (terminate_due_to_signal): Rename from fatal_error_backtrace, since + it doesn't always backtrace. All uses changed. No need to reset + signal to default, since sigaction and/or die does that for us now. + Use emacs_raise (FOO), not kill (getpid (), FOO). + (main): Check more-accurately whether we're dumping. + Move fatal-error setup to sysdep.c + * floatfns.c: Do not include "syssignal.h"; no longer needed. + * gtkutil.c (xg_get_file_name, xg_get_font): + Remove no-longer-needed signal-mask manipulation. + * keyboard.c, process.c (POLL_FOR_INPUT): + Don't depend on USE_ASYNC_EVENTS, a symbol that is never defined. + * keyboard.c (read_avail_input): Remove. + All uses replaced by gobble_input. + (Ftop_level): Use TOTALLY_UNBLOCK_INPUT rather than open code. + (kbd_buffer_store_event_hold, gobble_input): + (record_asynch_buffer_change) [USABLE_SIGIO]: + (store_user_signal_events): + No need to mess with signal mask. + (gobble_input): If blocking input and there are terminals, simply + set pending_signals to 1 and return. All hooks changed to not + worry about whether input is blocked. + (process_pending_signals): Clear pending_signals before processing + them, in case a signal comes in while we're processing. + By convention callers now test pending_signals before calling us. + (UNBLOCK_INPUT_TO, unblock_input, totally_unblock_input): + New functions, to support changes to blockinput.h. + (handle_input_available_signal): Now extern. + (reinvoke_input_signal): Remove. All uses replaced by + handle_async_input. + (quit_count): Now volatile, since a signal handler uses it. + (handle_interrupt): Now takes bool IN_SIGNAL_HANDLER as arg. All + callers changed. Block SIGINT only if not already blocked. + Clear sigmask reliably, even if Fsignal returns, which it can. + Omit unnecessary accesses to volatile var. + (quit_throw_to_read_char): No need to restore sigmask. + * keyboard.c (gobble_input, handle_user_signal): + * process.c (wait_reading_process_output): + Call signal-handling code rather than killing ourselves. + * lisp.h: Include , for... + (IEEE_FLOATING_POINT): New macro, moved here to avoid duplication. + (pending_signals): Now volatile. + (syms_of_data): Now const if IEEE floating point. + (handle_input_available_signal) [USABLE_SIGIO]: + (terminate_due_to_signal, record_child_status_change): New decls. + * process.c (create_process): Avoid disaster if memory is exhausted + while we're processing a vfork, by tightening the critical section + around the vfork. + (send_process_frame, process_sent_to, handle_pipe_signal) + (deliver_pipe_signal): Remove. No longer needed, as Emacs now + ignores SIGPIPE. + (send_process): No need for setjmp/longjmp any more, since the + SIGPIPE stuff is now gone. Instead, report an error if errno + is EPIPE. + (record_child_status_change): Now extern. PID and W are now args. + Return void, not bool. All callers changed. + * sysdep.c (wait_debugging) [(BSD_SYSTEM || HPUX) && !defined (__GNU__)]: + Remove. All uses removed. This bug should be fixed now in a + different way. + (wait_for_termination_1): Use waitpid rather than sigsuspend, + and record the child status change directly. This avoids the + need to futz with the signal mask. + (process_fatal_action): Move here from emacs.c. + (emacs_sigaction_flags): New function, containing + much of what used to be in emacs_sigaction_init. + (emacs_sigaction_init): Use it. Block nonfatal system signals that are + caught by emacs, to make races less likely. + (deliver_process_signal): Rename from handle_on_main_thread. + All uses changed. + (BACKTRACE_LIMIT_MAX): Now at top level. + (thread_backtrace_buffer, threadback_backtrace_pointers): + New static vars. + (deliver_thread_signal, deliver_fatal_thread_signal): + New functions, for more-accurate delivery of thread-specific signals. + (handle_fatal_signal, deliver_fatal_signal): Move here from emacs.c. + (deliver_arith_signal): Handle in this thread, not + in the main thread, since it's triggered by this thread. + (maybe_fatal_sig): New function. + (init_signals): New arg DUMPING so that we can be more accurate + about whether we're dumping. Caller changed. + Treat thread-specific signals differently from process-general signals. + Block all signals while handling fatal error; that's safer. + xsignal from SIGFPE only on non-IEEE hosts, treating it as fatal + on IEEE hosts. + When batch, ignore SIGHUP, SIGINT, SIGTERM if they were already ignored. + Ignore SIGPIPE unless batch. + (emacs_backtrace): Output backtrace for the appropriate thread, + which is not necessarily the main thread. + * syssignal.h: Include . + (emacs_raise): New macro. + * xterm.c (x_connection_signal): Remove; no longer needed + now that we use sigaction. + (x_connection_closed): No need to mess with sigmask now. + (x_initialize): No need to reset SIGPIPE handler here, since + init_signals does this for us now. + 2012-09-23 Jan Djärv * nsterm.m (ns_dumpglyphs_image): dr is a new rect to draw image into, -- cgit v1.2.1 From d07ff9db920196077333148f6db88525c8ba3151 Mon Sep 17 00:00:00 2001 From: Chong Yidong Date: Sun, 23 Sep 2012 17:16:57 +0800 Subject: Remove LIBRARIES arg from w32_delayed_load and friends. These always use Vdynamic_library_alist anyway. * src/image.c (Finit_image_library, lookup_image_type) (define_image_type): Remove now-unneeded second arg. (init_xpm_functions, init_png_functions, init_jpeg_functions) (init_tiff_functions, init_gif_functions, init_svg_functions): Arglist and w32_delayed_load calling convention changed. (gs_type): Remove init_gs_functions; there is no such function. * src/gnutls.c (init_gnutls_functions): Caller changed; remove arg. (Fgnutls_available_p): Caller changed. * src/xml.c (init_libxml2_functions, Flibxml_parse_html_region) (Flibxml_parse_xml_region): Likewise. * src/dispextern.h (struct image_type): Remove arg from init function. * src/w32.c (w32_delayed_load): Remove LIBRARIES argument; always use Vdynamic_library_alist. * lisp/image.el (image-type-available-p): Change caller to init-image-library. --- src/ChangeLog | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 37c1ecf8824..d35092e277f 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,23 @@ +2012-09-23 Chong Yidong + + * w32.c (w32_delayed_load): Remove LIBRARIES argument; always use + Vdynamic_library_alist. + + * gnutls.c (init_gnutls_functions): Caller changed; remove arg. + (Fgnutls_available_p): Caller changed. + + * xml.c (init_libxml2_functions, Flibxml_parse_html_region) + (Flibxml_parse_xml_region): Likewise. + + * dispextern.h (struct image_type): Remove arg from init function. + + * image.c (Finit_image_library, lookup_image_type) + (define_image_type): Remove now-unneeded second arg. + (init_xpm_functions, init_png_functions, init_jpeg_functions) + (init_tiff_functions, init_gif_functions, init_svg_functions): + Arglist and w32_delayed_load calling convention changed. + (gs_type): Remove init_gs_functions; there is no such function. + 2012-09-23 Paul Eggert Simplify and avoid signal-handling races (Bug#12471). -- cgit v1.2.1 From 641cfd145e8d17956c3bf5d357c09fecb24f8e58 Mon Sep 17 00:00:00 2001 From: Chong Yidong Date: Sun, 23 Sep 2012 17:22:38 +0800 Subject: Fix last change. * image.c (valid_image_p, make_image): Fix caller to lookup_image_type. --- src/ChangeLog | 1 + 1 file changed, 1 insertion(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index d35092e277f..d03e208354d 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -17,6 +17,7 @@ (init_tiff_functions, init_gif_functions, init_svg_functions): Arglist and w32_delayed_load calling convention changed. (gs_type): Remove init_gs_functions; there is no such function. + (valid_image_p, make_image): Fix caller to lookup_image_type. 2012-09-23 Paul Eggert -- cgit v1.2.1 From a0942b9a361abdd267a4c6cf2a0edc2a29741db4 Mon Sep 17 00:00:00 2001 From: Jan Djärv Date: Sun, 23 Sep 2012 12:03:35 +0200 Subject: * xterm.c (x_term_init): Call fixup_locale before and after calling gtk_init. Fixes: debbugs:12392 --- src/ChangeLog | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index d03e208354d..0448dab3cab 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2012-09-23 Jan Djärv + + * xterm.c (x_term_init): Call fixup_locale before and after calling + gtk_init (Bug#12392). + 2012-09-23 Chong Yidong * w32.c (w32_delayed_load): Remove LIBRARIES argument; always use -- cgit v1.2.1 From 62a1d6614e574e4c1f2789515a8db0abebd837b4 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sun, 23 Sep 2012 10:05:14 -0700 Subject: Do not use SA_NODEFER. Problem reported by Dani Moncayo in . * alloc.c (die): * sysdep.c (emacs_abort): Do not reset signal handler. * emacs.c (terminate_due_to_signal): Reset signal handler here. * sysdep.c (init_signals): Do not use SA_NODEFER. It wasn't wanted even on POSIXish hosts, and it doesn't work on Windows. --- src/ChangeLog | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 0448dab3cab..9300f8b7264 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,14 @@ +2012-09-23 Paul Eggert + + Do not use SA_NODEFER. + Problem reported by Dani Moncayo in + . + * alloc.c (die): + * sysdep.c (emacs_abort): Do not reset signal handler. + * emacs.c (terminate_due_to_signal): Reset signal handler here. + * sysdep.c (init_signals): Do not use SA_NODEFER. It wasn't + wanted even on POSIXish hosts, and it doesn't work on Windows. + 2012-09-23 Jan Djärv * xterm.c (x_term_init): Call fixup_locale before and after calling -- cgit v1.2.1 From 2c3ee0ad12e4d516ba2661ffd3ff8b356c7bff4f Mon Sep 17 00:00:00 2001 From: Juanma Barranquero Date: Sun, 23 Sep 2012 19:33:16 +0200 Subject: src/w32term.c (w32_read_socket): Remove reference to deleted variable. --- src/ChangeLog | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 9300f8b7264..0329e0c982c 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2012-09-23 Juanma Barranquero + + * w32term.c (w32_read_socket): Remove leftover reference to + interrupt_input_pending. + 2012-09-23 Paul Eggert Do not use SA_NODEFER. -- cgit v1.2.1 From 5101529e98c333b07d17dc891ba0a2e1669d82ac Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Sun, 23 Sep 2012 19:34:30 +0200 Subject: Clean-up left-overs after 2012-09-23T08:44:20Z!eggert@cs.ucla.edu wrt signal handling. src/.gdbinit: Set breakpoint on terminate_due_to_signal, not on fatal_error_backtrace. src/w32proc.c (sys_kill): Undo last change: don't do anything when invoked to deliver SIGABRT to our own process. This is now handled by emacs_raise. nt/inc/ms-w32.h (emacs_raise): Redefine to invoke emacs_abort. Fixes: debbugs:12471 --- src/ChangeLog | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 0329e0c982c..a55a2f5514c 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,12 @@ +2012-09-23 Eli Zaretskii + + * .gdbinit: Set breakpoint on terminate_due_to_signal, not on + fatal_error_backtrace. + + * w32proc.c (sys_kill): Undo last change: don't do anything when + invoked to deliver SIGABRT to our own process. This is now + handled by emacs_raise. + 2012-09-23 Juanma Barranquero * w32term.c (w32_read_socket): Remove leftover reference to -- cgit v1.2.1 From af0e9f75ea016190896133353f49596754e3dc73 Mon Sep 17 00:00:00 2001 From: Juanma Barranquero Date: Sun, 23 Sep 2012 20:03:48 +0200 Subject: src/makefile.w32-in: Update dependencies. --- src/ChangeLog | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index a55a2f5514c..b17cb9ab60d 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,22 @@ +2012-09-23 Juanma Barranquero + + * makefile.w32-in (BLOCKINPUT_H): Remove. + (SYSSIGNAL_H): New macro. + ($(BLD)/alloc.$(O), $(BLD)/atimer.$(O), $(BLD)/buffer.$(O)) + ($(BLD)/callproc.$(O), $(BLD)/data.$(O), $(BLD)/dired.$(O)) + ($(BLD)/dispnew.$(O), $(BLD)/editfns.$(O), $(BLD)/emacs.$(O)) + ($(BLD)/eval.$(O), $(BLD)/fileio.$(O), $(BLD)/floatfns.$(O)) + ($(BLD)/fns.$(O), $(BLD)/fontset.$(O), $(BLD)/frame.$(O)) + ($(BLD)/fringe.$(O), $(BLD)/image.$(O), $(BLD)/insdel.$(O)) + ($(BLD)/keyboard.$(O), $(BLD)/keymap.$(O), $(BLD)/lread.$(O)) + ($(BLD)/menu.$(O), $(BLD)/w32inevt.$(O), $(BLD)/w32proc.$(O)) + ($(BLD)/print.$(O), $(BLD)/process.$(O), $(BLD)/ralloc.$(O)) + ($(BLD)/search.$(O), $(BLD)/sound.$(O), $(BLD)/sysdep.$(O)) + ($(BLD)/term.$(O), $(BLD)/window.$(O), $(BLD)/xdisp.$(O)) + ($(BLD)/xfaces.$(O), $(BLD)/w32fns.$(O), $(BLD)/w32menu.$(O)) + ($(BLD)/w32term.$(O), $(BLD)/w32select.$(O), $(BLD)/w32reg.$(O)) + ($(BLD)/w32xfns.$(O)): Update dependencies. + 2012-09-23 Eli Zaretskii * .gdbinit: Set breakpoint on terminate_due_to_signal, not on -- cgit v1.2.1 From 18e27ea822e42697a32a9757e7931004b86b1188 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sun, 23 Sep 2012 12:36:31 -0700 Subject: gnutls.c, gtkutil.c: Use bool for boolean. * gnutls.c (gnutls_global_initialized, init_gnutls_functions) (emacs_gnutls_handle_error): * gtkutil.c (xg_check_special_colors, xg_prepare_tooltip) (xg_hide_tooltip, xg_create_frame_widgets) (create_dialog, xg_uses_old_file_dialog) (xg_get_file_with_chooser, xg_get_file_with_selection) (xg_get_file_name, xg_have_tear_offs, create_menus, xg_create_widget) (xg_item_label_same_p, xg_update_menubar) (xg_modify_menubar_widgets, xg_event_is_for_menubar) (xg_ignore_gtk_scrollbar, xg_set_toolkit_scroll_bar_thumb) (xg_event_is_for_scrollbar, xg_pack_tool_bar, xg_make_tool_item) (is_box_type, xg_tool_item_stale_p, xg_update_tool_bar_sizes) (update_frame_tool_bar, free_frame_tool_bar): * gtkutil.c, w32term.c, xterm.c (x_wm_set_size_hint): * nsmenu.m (ns_update_menubar): * nsmenu.m, w32menu.c, xmenu.c (set_frame_menubar): * xfns.c (Fx_show_tip) [USE_GTK]: Use bool for boolean. * gtkutil.c (xg_update_frame_menubar): * xmenu.c (update_frame_menubar): Return void, not int, since caller ignores return value. * gtkutil.c (xg_change_toolbar_position): Return void, not 1. --- src/ChangeLog | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index b17cb9ab60d..edf77f55331 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,30 @@ +2012-09-23 Paul Eggert + + gnutls.c, gtkutil.c: Use bool for boolean. + * gnutls.c (gnutls_global_initialized, init_gnutls_functions) + (emacs_gnutls_handle_error): + * gtkutil.c (xg_check_special_colors, xg_prepare_tooltip) + (xg_hide_tooltip, xg_create_frame_widgets) + (create_dialog, xg_uses_old_file_dialog) + (xg_get_file_with_chooser, xg_get_file_with_selection) + (xg_get_file_name, xg_have_tear_offs, create_menus, xg_create_widget) + (xg_item_label_same_p, xg_update_menubar) + (xg_modify_menubar_widgets, xg_event_is_for_menubar) + (xg_ignore_gtk_scrollbar, xg_set_toolkit_scroll_bar_thumb) + (xg_event_is_for_scrollbar, xg_pack_tool_bar, xg_make_tool_item) + (is_box_type, xg_tool_item_stale_p, xg_update_tool_bar_sizes) + (update_frame_tool_bar, free_frame_tool_bar): + * gtkutil.c, w32term.c, xterm.c (x_wm_set_size_hint): + * nsmenu.m (ns_update_menubar): + * nsmenu.m, w32menu.c, xmenu.c (set_frame_menubar): + * xfns.c (Fx_show_tip) [USE_GTK]: + Use bool for boolean. + * gtkutil.c (xg_update_frame_menubar): + * xmenu.c (update_frame_menubar): + Return void, not int, since caller ignores return value. + * gtkutil.c (xg_change_toolbar_position): + Return void, not 1. + 2012-09-23 Juanma Barranquero * makefile.w32-in (BLOCKINPUT_H): Remove. -- cgit v1.2.1 From afea8a8abd2f9ffa46bc0434db70a571318383cf Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sun, 23 Sep 2012 15:25:22 -0700 Subject: Move pid_t related decls out of lisp.h. * lisp.h, syswait.h (record_child_status_change, wait_for_termination) (interruptible_wait_for_termination): Move these decls from lisp.h to syswait.h, since they use pid_t. Needed on FreeBSD; see Herbert J. Skuhra in . * callproc.c: Include syswait.h. --- src/ChangeLog | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index edf77f55331..6cd3183f191 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,13 @@ 2012-09-23 Paul Eggert + Move pid_t related decls out of lisp.h. + * lisp.h, syswait.h (record_child_status_change, wait_for_termination) + (interruptible_wait_for_termination): + Move these decls from lisp.h to syswait.h, since they use pid_t. + Needed on FreeBSD; see Herbert J. Skuhra in + . + * callproc.c: Include syswait.h. + gnutls.c, gtkutil.c: Use bool for boolean. * gnutls.c (gnutls_global_initialized, init_gnutls_functions) (emacs_gnutls_handle_error): -- cgit v1.2.1 From d393cefbbf8f60bf62b94fa775daa8b69e108f49 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Mon, 24 Sep 2012 00:12:35 -0700 Subject: Doc fixes * src/eval.c (Frun_hook_with_args, Frun_hook_with_args_until_success) (Frun_hook_with_args_until_failure): Doc fixes. --- src/ChangeLog | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 15b47934424..96546df6638 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2012-09-24 Glenn Morris + + * eval.c (Frun_hook_with_args, Frun_hook_with_args_until_success) + (Frun_hook_with_args_until_failure): Doc fixes. + 2012-09-21 Chong Yidong * image.c (define_image_type): Avoid adding duplicate types to -- cgit v1.2.1 From a5f2b6ec3b678103c81e14375dd1a8d4bda268d8 Mon Sep 17 00:00:00 2001 From: Chong Yidong Date: Mon, 24 Sep 2012 20:23:25 +0800 Subject: Remove several obsolete vars and functions unlikely to be still in use. * lisp/vc/log-edit.el (cvs-changelog-full-paragraphs) (cvs-commit-buffer-require-final-newline): Obsolete variables removed. * lisp/font-lock.el (font-lock-reference-face): Use define-obsolete-variable-alias. * lisp/international/mule.el (set-char-table-default): Remove. (set-coding-priority, make-coding-system, generic-char-p) (charset-list, charset-bytes, charset-id): Use declare to mark obsolete. * lisp/mail/supercite.el (sc-version): Remove obsolete function. (sc-describe): Don't mark as obsolete, since it is bound. (sc-submit-bug-report): Remove. * lisp/progmodes/compile.el (compile-internal): Remove obsolete function. (compilation-parse-errors-function): Fix typo. * lisp/vc/emerge.el (emerge-mode): Make it an obsolete alias. (emerge-version): Remove. * lisp/vc/pcvs-defs.el (cvs-buffer-name-alist) (cvs-invert-ignore-marks): Remove references to obsolete vars. * lisp/vc/vc-hooks.el (vc-default-registered): Don't use vc-master-templates. * lisp/vc/pcvs-defs.el (cvs-diff-buffer-name, cvs-diff-ignore-marks) * lisp/vc/vc-hooks.el (vc-ignore-vc-files, vc-master-templates) * lisp/vc/vc.el (vc-checkout-carefully): Likewise. * src/chartab.c (Fset_char_table_default): Obsolete function removed. --- src/ChangeLog | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 6cd3183f191..56a9c0a17ce 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2012-09-24 Chong Yidong + + * chartab.c (Fset_char_table_default): Obsolete function removed. + 2012-09-23 Paul Eggert Move pid_t related decls out of lisp.h. -- cgit v1.2.1 From 3d80c99f3817bf5eccd6acc6a79498a4fde979a4 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Mon, 24 Sep 2012 10:38:10 -0400 Subject: Rewrite sampler to use Elisp hash-tables. * src/profiler.c: Remove filtering functionality. (is_in_trace, Qgc): Remove vars. (make_log, record_backtrace, Fsample_profiler_log): Rewrite, using Elisp hash-tables. (approximate_median, evict_lower_half): New functions. (cpu_log): Rename from sample_log. (cpu_gc_count): New var. (Fsample_profiler_reset, Fmemory_profiler_reset): Remove. (sigprof_handler): Add count to cpu_gc_count during GC, detected via backtrace_list. (block_sigprof, unblock_sigprof): Remove. (gc_probe, mark_profiler): Remove functions. (syms_of_profiler): Staticpro cpu_log and memory_log. * lisp/profiler.el (profiler-sample-interval): Move before first use. Change default to 1ms. (profiler-entry=, profiler-backtrace-reverse, profiler-log-fixup-slot) (profiler-calltree-elapsed<, profiler-calltree-elapsed>): Remove functions. (profiler-entry-format): Don't use type-of. (profiler-slot, profiler-log): Remove structs. (profiler-log-timestamp, profiler-log-type, profiler-log-diff-p): Redefine for new log representation. (profiler-log-diff, profiler-log-fixup, profiler-calltree-build-1): Rewrite for new log representation. (profiler-calltree): Remove `elapsed' fields. (profiler-calltree-count<, profiler-report-make-entry-part): Remove gc special case. (profiler-calltree-find): Use equal. (profiler-calltree-walk): Remove `args'; rely on closures instead. (profiler-calltree-compute-percentages-1): Remove; inlined. (profiler-calltree-compute-percentages): Simplify. (profiler-report-log, profiler-report-reversed) (profiler-report-order): Use defvar-local. (profiler-report-line-format): Remove `elapsed', do a bit of CSE. (profiler-report-mode-map): Remove up/down bindings. (profiler-report-make-buffer-name): Simplify by CSE. (profiler-report-mode): Remove redundant code. (profiler-report-expand-entry, profiler-report-collapse-entry): Use inhibit-read-only. (profiler-report-render-calltree-1): Simplify by CSE. (profiler-reset): Rewrite for new subroutines. (profiler--report-cpu): Rename from sample-profiler-report. (profiler--report-memory): Rename from memory-profiler-report. * src/alloc.c (Fgarbage_collect): Record itself in backtrace_list. Don't set is_in_trace any more. Don't call mark_profiler. Only call gc_probe for the memory profiler. (syms_of_alloc): Define Qautomatic_gc. * src/lisp.h (SXHASH_COMBINE): Move back to... * src/fns.c (SXHASH_COMBINE): ...here. * src/xdisp.c (Qautomatic_redisplay): New constant. (redisplay_internal): Record itself in backtrace_list. (syms_of_xdisp): Define Qautomatic_redisplay. * .dir-locals.el (indent-tabs-mode): Remove personal preference. --- src/ChangeLog | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index feb9c6219fb..1b90ae8b976 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,31 @@ +2012-09-24 Stefan Monnier + + * xdisp.c (Qautomatic_redisplay): New constant. + (redisplay_internal): Record itself in backtrace_list. + (syms_of_xdisp): Define Qautomatic_redisplay. + + * profiler.c: Remove filtering functionality. + (is_in_trace, Qgc): Remove vars. + (make_log, record_backtrace, Fsample_profiler_log): + Rewrite, using Elisp hash-tables. + (approximate_median, evict_lower_half): New functions. + (cpu_log): Rename from sample_log. + (cpu_gc_count): New var. + (Fsample_profiler_reset, Fmemory_profiler_reset): Remove. + (sigprof_handler): Add count to cpu_gc_count during GC, detected via + backtrace_list. + (block_sigprof, unblock_sigprof): Remove. + (gc_probe, mark_profiler): Remove functions. + (syms_of_profiler): Staticpro cpu_log and memory_log. + + * lisp.h (SXHASH_COMBINE): Move back to... + * fns.c (SXHASH_COMBINE): ...here. + + * alloc.c (Fgarbage_collect): Record itself in backtrace_list. + Don't set is_in_trace any more. Don't call mark_profiler. + Only call gc_probe for the memory profiler. + (syms_of_alloc): Define Qautomatic_gc. + 2012-09-15 Tomohiro Matsuyama * alloc.c (emacs_blocked_malloc): Remove redundant MALLOC_PROBE. -- cgit v1.2.1 From ad942b63d7a9b984752f46bc2049fe10e488230d Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Mon, 24 Sep 2012 17:15:53 -0400 Subject: Try to let it compile on other platforms * src/profiler.c (evict_lower_half): Fix typo. (PROFILER_CPU_SUPPORT): Check and define if cpu-profiler is supported. Don't compile the cpu-profiler code, if not supported. (malloc_probe): Presume memory_log is non-nil. (syms_of_profiler): Don't defsubr functions when they aren't defined. * src/lisp.h (sample_profiler_running, gc_probe): Don't declare. --- src/ChangeLog | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 1b90ae8b976..19b8afe5d51 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,13 @@ +2012-09-24 Stefan Monnier + + * profiler.c (evict_lower_half): Fix typo. + (PROFILER_CPU_SUPPORT): Check and define if cpu-profiler is supported. + Don't compile the cpu-profiler code, if not supported. + (malloc_probe): Presume memory_log is non-nil. + (syms_of_profiler): Don't defsubr functions when they aren't defined. + + * lisp.h (sample_profiler_running, gc_probe): Don't declare. + 2012-09-24 Stefan Monnier * xdisp.c (Qautomatic_redisplay): New constant. -- cgit v1.2.1 From 578098f346bf9e1f23ca86ed764fc00b035b427f Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Mon, 24 Sep 2012 14:38:23 -0700 Subject: image.c, indent.c: Use bool for booleans. * dispextern.h (struct image_type): Members valid_p, load, init now return bool, not int. All uses changed. * image.c: Omit unnecessary static decls. (x_create_bitmap_mask, x_build_heuristic_mask): Return void, not int, since callers don't care about the return value. (x_create_bitmap_mask, define_image_type, valid_image_p) (struct image_keyword, parse_image_spec, image_spec_value) (check_image_size, image_background) (image_background_transparent, x_clear_image_1) (postprocess_image, lookup_image, x_check_image_size) (x_create_x_image_and_pixmap, xbm_image_p) (Create_Pixmap_From_Bitmap_Data, xbm_read_bitmap_data) (xbm_load_image, xbm_file_p, xbm_load, xpm_lookup_color) (init_xpm_functions, xpm_valid_color_symbols_p, xpm_image_p) (xpm_load, xpm_load_image, lookup_rgb_color, lookup_pixel_color) (x_to_xcolors, x_build_heuristic_mask, pbm_image_p, pbm_load) (png_image_p, init_png_functions, png_load_body, png_load) (jpeg_image_p, init_jpeg_functions, jpeg_load_body, jpeg_load) (tiff_image_p, init_tiff_functions, tiff_load, gif_image_p) (init_gif_functions, gif_load, imagemagick_image_p) (imagemagick_load_image, imagemagick_load, svg_image_p) (init_svg_functions, svg_load, svg_load_image, gs_image_p) (gs_load): * nsimage.m (ns_load_image): * nsterm.m (ns_defined_color): * xfaces.c (tty_lookup_color, tty_defined_color, defined_color): * xfns.c (x_defined_color): * xterm.c (x_alloc_lighter_color_for_widget) (x_alloc_nearest_color_1, x_alloc_nearest_color) (x_alloc_lighter_color): * indent.c (disptab_matches_widthtab, current_column) (scan_for_column, string_display_width, indented_beyond_p) (compute_motion, vmotion, Fvertical_motion): Use bool for booleans. --- src/ChangeLog | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 56a9c0a17ce..500411da531 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,41 @@ +2012-09-24 Paul Eggert + + image.c, indent.c: Use bool for booleans. + * dispextern.h (struct image_type): Members valid_p, load, init + now return bool, not int. All uses changed. + * image.c: Omit unnecessary static decls. + (x_create_bitmap_mask, x_build_heuristic_mask): + Return void, not int, since callers don't care about the return value. + (x_create_bitmap_mask, define_image_type, valid_image_p) + (struct image_keyword, parse_image_spec, image_spec_value) + (check_image_size, image_background) + (image_background_transparent, x_clear_image_1) + (postprocess_image, lookup_image, x_check_image_size) + (x_create_x_image_and_pixmap, xbm_image_p) + (Create_Pixmap_From_Bitmap_Data, xbm_read_bitmap_data) + (xbm_load_image, xbm_file_p, xbm_load, xpm_lookup_color) + (init_xpm_functions, xpm_valid_color_symbols_p, xpm_image_p) + (xpm_load, xpm_load_image, lookup_rgb_color, lookup_pixel_color) + (x_to_xcolors, x_build_heuristic_mask, pbm_image_p, pbm_load) + (png_image_p, init_png_functions, png_load_body, png_load) + (jpeg_image_p, init_jpeg_functions, jpeg_load_body, jpeg_load) + (tiff_image_p, init_tiff_functions, tiff_load, gif_image_p) + (init_gif_functions, gif_load, imagemagick_image_p) + (imagemagick_load_image, imagemagick_load, svg_image_p) + (init_svg_functions, svg_load, svg_load_image, gs_image_p) + (gs_load): + * nsimage.m (ns_load_image): + * nsterm.m (ns_defined_color): + * xfaces.c (tty_lookup_color, tty_defined_color, defined_color): + * xfns.c (x_defined_color): + * xterm.c (x_alloc_lighter_color_for_widget) + (x_alloc_nearest_color_1, x_alloc_nearest_color) + (x_alloc_lighter_color): + * indent.c (disptab_matches_widthtab, current_column) + (scan_for_column, string_display_width, indented_beyond_p) + (compute_motion, vmotion, Fvertical_motion): + Use bool for booleans. + 2012-09-24 Chong Yidong * chartab.c (Fset_char_table_default): Obsolete function removed. -- cgit v1.2.1 From 22e8cf4a89aeb9f0a31f8676f0ab177c28ab473f Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Mon, 24 Sep 2012 18:47:51 -0400 Subject: * src/bytecode.c (exec_byte_code): Signal an error instead of aborting, when encountering an unknown bytecode. --- src/ChangeLog | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 500411da531..f90445045ae 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2012-09-24 Stefan Monnier + + * bytecode.c (exec_byte_code): Signal an error instead of aborting, + when encountering an unknown bytecode. + 2012-09-24 Paul Eggert image.c, indent.c: Use bool for booleans. -- cgit v1.2.1 From 6521894d1aa5a1017dd6f3f55b5e7c11dde5d004 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Mon, 24 Sep 2012 22:30:46 -0400 Subject: * src/profiler.c: Rename sample_profiler_* to profiler_cpu_* and memory_profiler_* to profiler_memory_*. Move sigprof_handler before its first use, inside the PROFILER_CPU_SUPPORT conditional. --- src/ChangeLog | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 19b8afe5d51..d534a3f4104 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9 @@ +2012-09-25 Stefan Monnier + + * profiler.c: Rename sample_profiler_* to profiler_cpu_* and + memory_profiler_* to profiler_memory_*. Move sigprof_handler before + its first use, inside the PROFILER_CPU_SUPPORT conditional. + 2012-09-24 Stefan Monnier * profiler.c (evict_lower_half): Fix typo. -- cgit v1.2.1 From 59f7af816e98a74abf42d724bcfdfa9bfe9964ce Mon Sep 17 00:00:00 2001 From: Chong Yidong Date: Tue, 25 Sep 2012 12:13:02 +0800 Subject: Use declare forms, where possible, to mark obsolete functions. * lisp/allout.el (allout-passphrase-hint-string): Likewise. (allout-init): Use a declare form to mark obsolete. * lisp/calendar/calendar.el (calendar-version): * lisp/calendar/icalendar.el (icalendar-extract-ical-from-buffer) (icalendar-convert-diary-to-ical): * lisp/cus-edit.el (custom-mode): * lisp/ansi-color.el (ansi-color-unfontify-region): * lisp/international/latin1-disp.el (latin1-char-displayable-p): * lisp/progmodes/cwarn.el (turn-on-cwarn-mode): * lisp/progmodes/which-func.el (which-func-update-1): Use define-obsolete-function-alias. * lisp/bookmark.el (bookmark-jump-noselect): Use a declare form to mark this function obsolete. * lisp/calendar/cal-x.el (calendar-two-frame-setup) (calendar-only-one-frame-setup, calendar-one-frame-setup): * lisp/calendar/calendar.el (american-calendar, european-calendar) (calendar-for-loop): * lisp/comint.el (comint-dynamic-simple-complete) (comint-dynamic-complete-as-filename, comint-unquote-filename): * lisp/desktop.el (desktop-load-default): * lisp/dired-x.el (dired-omit-here-always) (dired-hack-local-variables, dired-default-directory): * lisp/emacs-lisp/derived.el (derived-mode-class): * lisp/emacs-lisp/timer.el (timer-set-time-with-usecs): * lisp/emacs-lock.el (toggle-emacs-lock): * lisp/epa.el (epa-display-verify-result): * lisp/epg.el (epg-sign-keys, epg-start-sign-keys) (epg-passphrase-callback-function): * lisp/eshell/esh-util.el (eshell-for): * lisp/eshell/eshell.el (eshell-remove-from-window-buffer-names) (eshell-add-to-window-buffer-names): * lisp/files.el (locate-file-completion): * lisp/imenu.el (imenu-example--create-c-index) (imenu-example--create-lisp-index) (imenu-example--lisp-extract-index-name) (imenu-example--name-and-position): * lisp/international/mule-cmds.el (princ-list): * lisp/international/mule-diag.el (decode-codepage-char): * lisp/international/mule-util.el (detect-coding-with-priority): * lisp/iswitchb.el (iswitchb-read-buffer): * lisp/mail/mailalias.el (mail-complete): * lisp/mail/sendmail.el (mail-sent-via): * lisp/mouse.el (mouse-popup-menubar-stuff, mouse-popup-menubar) (mouse-major-mode-menu): * lisp/password-cache.el (password-read-and-add): * lisp/pcomplete.el (pcomplete-parse-comint-arguments): * lisp/progmodes/sh-script.el (sh-maybe-here-document): * lisp/replace.el (query-replace-regexp-eval): * lisp/savehist.el (savehist-load): * lisp/simple.el (choose-completion-delete-max-match): * lisp/term.el (term-dynamic-simple-complete): * lisp/vc/ediff-init.el (ediff-check-version): * lisp/vc/ediff-wind.el (ediff-choose-window-setup-function-automatically): * lisp/vc/vc.el (vc-diff-switches-list): * lisp/view.el (view-return-to-alist-update): Likewise. * lisp/iswitchb.el (iswitchb-read-buffer): Move code of iswitchb-define-mode-map here, and delete that obsolete function. * lisp/subr.el (eval-next-after-load, makehash, insert-string) (assoc-ignore-representation, assoc-ignore-case): Use declare to mark obsolete. (mode-line-inverse-video): Variable deleted. * lisp/emacs-lisp/byte-run.el (make-obsolete): Doc fix; emphasize that this applies to functions. * lisp/erc/erc.el (erc-send-command): Use define-obsolete-function-alias. * lisp/international/mule-util.el (string-to-sequence): Remove. * lisp/net/newst-backend.el (newsticker-cache-filename): * lisp/net/newst-treeview.el (newsticker-groups-filename): Fix incorrect obsolescence declaration. * lisp/net/snmp-mode.el (snmp-font-lock-keywords-3): Don't use obsolete font-lock-reference-face. * lisp/url/url-parse.el (url-recreate-url-attributes): * lisp/url/url-util.el (url-generate-unique-filename): Use declare to mark obsolete. * src/xdisp.c (mode_line_inverse_video): Delete obsolete variable. --- src/ChangeLog | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index f90445045ae..0f59d6088a5 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2012-09-25 Chong Yidong + + * xdisp.c (mode_line_inverse_video): Delete obsolete variable. + 2012-09-24 Stefan Monnier * bytecode.c (exec_byte_code): Signal an error instead of aborting, -- cgit v1.2.1 From 54d629be4a0dce166762691eba8fd50930225c4f Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Tue, 25 Sep 2012 09:01:52 +0200 Subject: Don't call MAYBE_UNIFY_CHAR while processing buffers and strings. src/character.c (char_string, string_char): Remove calls to MAYBE_UNIFY_CHAR. See the discussion starting at http://lists.gnu.org/archive/html/emacs-devel/2012-09/msg00433.html for the details. --- src/ChangeLog | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 0f59d6088a5..ca9ca808c77 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,10 @@ +2012-09-25 Eli Zaretskii + + * character.c (char_string, string_char): Remove calls to + MAYBE_UNIFY_CHAR. See the discussion starting at + http://lists.gnu.org/archive/html/emacs-devel/2012-09/msg00433.html + for the details. + 2012-09-25 Chong Yidong * xdisp.c (mode_line_inverse_video): Delete obsolete variable. -- cgit v1.2.1 From 16b22fef423afedf034460a0f811abf50d0c5f3e Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Tue, 25 Sep 2012 13:50:01 +0200 Subject: Fix handling of fatal signals and exceptions on MS-Windows. src/w32proc.c (sys_signal): Handle all signals defined by the MS-Windows runtime, not just SIGCHLD. Actually install the signal handlers for signals supported by Windows. Don't override term_ntproc as the handler for SIGABRT. (sigaction): Rewrite to call sys_signal instead of duplicating its code. (sys_kill): Improve commentary. src/w32.c (term_ntproc): Accept (and ignore) one argument, for consistency with a signature of a signal handler. All callers changed. (init_ntproc): Accept an argument DUMPING. If dumping, don't install term_ntproc as a signal handler for SIGABRT, as that should be done by the dumped Emacs. src/w32.h (init_ntproc, term_ntproc): Adjust prototypes. src/w32select.c (term_w32select): Protect against repeated invocation by setting clipboard_owner to NULL after calling DestroyWindow. src/emacs.c (shut_down_emacs, main): Adapt the calls to init_ntproc and term_ntproc to their modified signatures. --- src/ChangeLog | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index ca9ca808c77..9d048beeec1 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,29 @@ 2012-09-25 Eli Zaretskii + * w32proc.c (sys_signal): Handle all signals defined by the + MS-Windows runtime, not just SIGCHLD. Actually install the signal + handlers for signals supported by Windows. Don't override + term_ntproc as the handler for SIGABRT. + (sigaction): Rewrite to call sys_signal instead of duplicating its + code. + (sys_kill): Improve commentary. + + * w32.c (term_ntproc): Accept (and ignore) one argument, for + consistency with a signature of a signal handler. All callers + changed. + (init_ntproc): Accept an argument DUMPING. If dumping, don't + install term_ntproc as a signal handler for SIGABRT, as that + should be done by the dumped Emacs. + + * w32.h (init_ntproc, term_ntproc): Adjust prototypes. + + * w32select.c (term_w32select): Protect against repeated + invocation by setting clipboard_owner to NULL after calling + DestroyWindow. + + * emacs.c (shut_down_emacs, main): Adapt the calls to init_ntproc + and term_ntproc to their modified signatures. + * character.c (char_string, string_char): Remove calls to MAYBE_UNIFY_CHAR. See the discussion starting at http://lists.gnu.org/archive/html/emacs-devel/2012-09/msg00433.html -- cgit v1.2.1 From aa15c6bb4fec3c36efe1c05000e05faa6a483038 Mon Sep 17 00:00:00 2001 From: Juanma Barranquero Date: Tue, 25 Sep 2012 13:57:30 +0200 Subject: Move Vlibrary_cache to emacs.c and reset before dumping. * src/lisp.h (reset_image_types): Declare. [WINDOWSNT] (Vlibrary_cache): Declare. * src/image.c (reset_image_types): New function. * src/emacs.c [WINDOWSNT] (Vlibrary_cache): Move from w32.c. (syms_of_emacs) [WINDOWSNT] : Initialize and staticpro. (Fdump_emacs): Reset Vlibrary_cache and image_types. * src/w32.c (Vlibrary_cache): Do not define; moved to emacs.c (globals_of_w32) : Do not initialize. * src/w32.h (Vlibrary_cache): Do not declare. --- src/ChangeLog | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 9d048beeec1..1b0668860b9 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,21 @@ +2012-09-25 Juanma Barranquero + + Move Vlibrary_cache to emacs.c and reset before dumping. + + * lisp.h (reset_image_types): Declare. + [WINDOWSNT] (Vlibrary_cache): Declare. + + * image.c (reset_image_types): New function. + + * emacs.c [WINDOWSNT] (Vlibrary_cache): Move from w32.c. + (syms_of_emacs) [WINDOWSNT] : Initialize and staticpro. + (Fdump_emacs): Reset Vlibrary_cache and image_types. + + * w32.c (Vlibrary_cache): Do not define; moved to emacs.c + (globals_of_w32) : Do not initialize. + + * w32.h (Vlibrary_cache): Do not declare. + 2012-09-25 Eli Zaretskii * w32proc.c (sys_signal): Handle all signals defined by the -- cgit v1.2.1 From eedec3eec8ea42189032fcde9d5f11a048fa837a Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Tue, 25 Sep 2012 14:44:13 +0200 Subject: Followup to not using maybe_unify_char in processing buffers and strings. src/coding.c (CHAR_STRING_ADVANCE_NO_UNIFY): Make it an alias of CHAR_STRING_ADVANCE. (STRING_CHAR_ADVANCE_NO_UNIFY): Make it an alias of STRING_CHAR_ADVANCE. --- src/ChangeLog | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 1b0668860b9..0679cf18307 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,10 @@ +2012-09-25 Eli Zaretskii + + * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY): Make it an alias of + CHAR_STRING_ADVANCE. + (STRING_CHAR_ADVANCE_NO_UNIFY): Make it an alias of + STRING_CHAR_ADVANCE. + 2012-09-25 Juanma Barranquero Move Vlibrary_cache to emacs.c and reset before dumping. -- cgit v1.2.1 From e26fd2e4a9bdf06d809bdc03db1eb592a4df8177 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Tue, 25 Sep 2012 12:18:05 -0700 Subject: Prefer POSIX timers if available. They avoid a race if the timer is too close to the current time. * atimer.c (alarm_timer, alarm_timer_ok) [SIGEV_SIGNAL]: New static vars. (set_alarm) [SIGEV_SIGNAL]: Use POSIX timers if available. (init_atimer) [SIGEV_SIGAL]: Initialize them. --- src/ChangeLog | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 0679cf18307..efee4321250 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,11 @@ +2012-09-25 Paul Eggert + + Prefer POSIX timers if available. + They avoid a race if the timer is too close to the current time. + * atimer.c (alarm_timer, alarm_timer_ok) [SIGEV_SIGNAL]: New static vars. + (set_alarm) [SIGEV_SIGNAL]: Use POSIX timers if available. + (init_atimer) [SIGEV_SIGAL]: Initialize them. + 2012-09-25 Eli Zaretskii * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY): Make it an alias of -- cgit v1.2.1 From b67238c250b75a4786a58d1688cf02db09516396 Mon Sep 17 00:00:00 2001 From: Juanma Barranquero Date: Wed, 26 Sep 2012 00:07:22 +0200 Subject: src/makefile.w32-in ($(BLD)/callproc.$(O)): Update dependencies. --- src/ChangeLog | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index efee4321250..14be5f87107 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2012-09-25 Juanma Barranquero + + * makefile.w32-in ($(BLD)/callproc.$(O)): Update dependencies. + 2012-09-25 Paul Eggert Prefer POSIX timers if available. -- cgit v1.2.1 From 611b7507a8eb63d0c3fd8b5c6182920453292688 Mon Sep 17 00:00:00 2001 From: Juanma Barranquero Date: Tue, 25 Sep 2012 23:43:26 -0400 Subject: * src/makefile.w32-in (OBJ2, GLOBAL_SOURCES): Add profiler.c. ($(BLD)/profiler.$(O)): New target. --- src/ChangeLog | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index d534a3f4104..f540aef3814 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2012-09-26 Juanma Barranquero + + * makefile.w32-in (OBJ2, GLOBAL_SOURCES): Add profiler.c. + ($(BLD)/profiler.$(O)): New target. + 2012-09-25 Stefan Monnier * profiler.c: Rename sample_profiler_* to profiler_cpu_* and -- cgit v1.2.1 From 234148bf943ffce55121aefc8694889eb08b0daa Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Wed, 26 Sep 2012 00:02:21 -0400 Subject: * lisp/profiler.el (profiler-start): Don't prompt for choice when there isn't any. (profiler-stop): Use new semantics of profiler-*-stop. (profiler-reset, profiler--report-cpu): Don't signal an error if the cpu profiler is not available. * src/profiler.c (Fprofiler_cpu_stop, Fprofiler_memory_stop): Return whether the profiler was running, instead of signaling an error if it wasn't. --- src/ChangeLog | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index f540aef3814..ce6f56fa8fc 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9 @@ +2012-09-26 Stefan Monnier + + * profiler.c (Fprofiler_cpu_stop, Fprofiler_memory_stop): + Return whether the profiler was running, instead of signaling an error + if it wasn't. + 2012-09-26 Juanma Barranquero * makefile.w32-in (OBJ2, GLOBAL_SOURCES): Add profiler.c. @@ -106,8 +112,8 @@ * w32uniscribe.c (uniscribe_shape): Fix producing gstring components for RTL text (Bug#11860). Adjust X-OFFSET of each non-base glyph for the width of the base character, according to - what x_draw_composite_glyph_string_foreground expects. Generate - WADJUST value according to composition_gstring_width's + what x_draw_composite_glyph_string_foreground expects. + Generate WADJUST value according to composition_gstring_width's expectations, to produce correct width of the composed character. Reverse the sign of the DU offset produced by ScriptPlace. -- cgit v1.2.1 From fb39b937b0628f4592b07d0aa61a41cf696abd30 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Wed, 26 Sep 2012 00:07:32 -0700 Subject: Fix bug ref --- src/ChangeLog | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 14be5f87107..942bcf58fc4 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -359,7 +359,7 @@ 2012-09-23 Jan Djärv * nsterm.m (ns_dumpglyphs_image): dr is a new rect to draw image into, - background rect may be larger (Bug#12445). + background rect may be larger (Bug#12245). 2012-09-23 Chong Yidong -- cgit v1.2.1 From 9180598cb164cf32daf0e1761a8143e720460987 Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Wed, 26 Sep 2012 16:44:22 +0200 Subject: Fix a typo in a recent entry in src/ChangeLog. --- src/ChangeLog | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 942bcf58fc4..3e999f3f699 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -8,7 +8,7 @@ They avoid a race if the timer is too close to the current time. * atimer.c (alarm_timer, alarm_timer_ok) [SIGEV_SIGNAL]: New static vars. (set_alarm) [SIGEV_SIGNAL]: Use POSIX timers if available. - (init_atimer) [SIGEV_SIGAL]: Initialize them. + (init_atimer) [SIGEV_SIGNAL]: Initialize them. 2012-09-25 Eli Zaretskii -- cgit v1.2.1 From 41c8bfcfbe028fc559a7eabc0dfe0c6fcafcb7cf Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Wed, 26 Sep 2012 13:00:29 -0700 Subject: * character.h (MAYBE_UNIFY_CHAR): Remove. * charset.c, charset.h (maybe_unify_char): Now static. * charset.c (decode_char): Use maybe_unify_char, not MAYBE_UNIFY_CHAR. Since this stuff is now private to charset.c, there's no need for a public macro and no need to inline by hand. --- src/ChangeLog | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 47e2b7a7fea..23d39a0de66 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,11 @@ +2012-09-26 Paul Eggert + + * character.h (MAYBE_UNIFY_CHAR): Remove. + * charset.c, charset.h (maybe_unify_char): Now static. + * charset.c (decode_char): Use maybe_unify_char, not MAYBE_UNIFY_CHAR. + Since this stuff is now private to charset.c, there's no need for + a public macro and no need to inline by hand. + 2012-09-26 Tomohiro Matsuyama Stefan Monnier Juanma Barranquero -- cgit v1.2.1 From 6a586b7fe4088084022789bd0c122a47cd8ff1ac Mon Sep 17 00:00:00 2001 From: Juanma Barranquero Date: Thu, 27 Sep 2012 00:04:10 +0200 Subject: Fix some profiler stuff on Windows (follow-up to 1995-03-15T21:55:37Z!kwzh@gnu.org). * lib-src/makefile.w32-in (obj): Add profiler.o. * src/makefile.w32-in ($(BLD)/profiler.$(O)): Update dependencies. --- src/ChangeLog | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 23d39a0de66..7a5192ad6bf 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2012-09-26 Juanma Barranquero + + * makefile.w32-in ($(BLD)/profiler.$(O)): Update dependencies. + 2012-09-26 Paul Eggert * character.h (MAYBE_UNIFY_CHAR): Remove. -- cgit v1.2.1 From 3670daf7f9a480d8e87b292ff7051d5be331c6b4 Mon Sep 17 00:00:00 2001 From: Tomohiro Matsuyama Date: Thu, 27 Sep 2012 08:14:13 +0900 Subject: * profiler.c (Fprofiler_cpu_start): Remove unnecessary flag SA_SIGINFO. --- src/ChangeLog | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 7a5192ad6bf..445090fb2a1 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2012-09-26 Tomohiro Matsuyama + + * profiler.c (Fprofiler_cpu_start): Remove unnecessary flag SA_SIGINFO. + 2012-09-26 Juanma Barranquero * makefile.w32-in ($(BLD)/profiler.$(O)): Update dependencies. -- cgit v1.2.1 From a615a3aeef0fb1469dcf89e2217a027a6dce82c1 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Wed, 26 Sep 2012 18:06:23 -0700 Subject: Check more robustly for timer_settime. This should fix an OS X build problem reported by Ivan Andrus in . * admin/merge-gnulib (GNULIB_MODULES): Add timer-time. * configure.ac (gl_THREADLIB): Define to empty, since Emacs does threads its own way. * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate. * m4/timer_time.m4: New file, from gnulib. * src/atimer.c (alarm_timer, alarm_timer_ok, set_alarm, init_atimer): Use HAVE_TIMER_SETTIME, not SIGEV_SIGNAL, to decide whether to call timer_settime. --- src/ChangeLog | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 445090fb2a1..c920f091063 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,10 @@ +2012-09-27 Paul Eggert + + Check more robustly for timer_settime. + * atimer.c (alarm_timer, alarm_timer_ok, set_alarm, init_atimer): + Use HAVE_TIMER_SETTIME, not SIGEV_SIGNAL, to decide whether to + call timer_settime. + 2012-09-26 Tomohiro Matsuyama * profiler.c (Fprofiler_cpu_start): Remove unnecessary flag SA_SIGINFO. -- cgit v1.2.1 From 89d17fd0f291f4ea6d14fe1bc0143554dba6e951 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Thu, 27 Sep 2012 16:02:23 -0700 Subject: Link with LIB_TIMER_TIME as needed. --- src/ChangeLog | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index c920f091063..b0899d67ca8 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,6 +1,8 @@ 2012-09-27 Paul Eggert Check more robustly for timer_settime. + * Makefile.in (LIB_TIMER_TIME): New macro. + (LIBES): Add it. * atimer.c (alarm_timer, alarm_timer_ok, set_alarm, init_atimer): Use HAVE_TIMER_SETTIME, not SIGEV_SIGNAL, to decide whether to call timer_settime. -- cgit v1.2.1 From 757140ff9aca7cce0096604c7e7b9cd5ffca914e Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Fri, 28 Sep 2012 00:40:42 -0700 Subject: * src/lread.c (lisp_file_lexically_bound_p): Handle #! lines. Fixes: debbugs:12528 --- src/ChangeLog | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index b0899d67ca8..601c72a9fd3 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2012-09-28 Glenn Morris + + * lread.c (lisp_file_lexically_bound_p): Handle #! lines. (Bug#12528) + 2012-09-27 Paul Eggert Check more robustly for timer_settime. -- cgit v1.2.1 From 704d3f455f837fd8881c72f82788a282ff093c82 Mon Sep 17 00:00:00 2001 From: Tomohiro Matsuyama Date: Fri, 28 Sep 2012 18:34:20 +0900 Subject: * profiler.c (sigprof_handler): Fix race condition. --- src/ChangeLog | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 601c72a9fd3..d6a6d91b75a 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2012-09-28 Tomohiro Matsuyama + + * profiler.c (sigprof_handler): Fix race condition. + 2012-09-28 Glenn Morris * lread.c (lisp_file_lexically_bound_p): Handle #! lines. (Bug#12528) -- cgit v1.2.1 From 404043ea8821e8902190e2e7d1140224c3ae33ea Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Fri, 28 Sep 2012 16:10:41 +0200 Subject: Rename "Automatic Redisplay" entry in Lisp backtrace. src/xdisp.c (syms_of_xdisp) : Rename from Qautomatic_redisplay and change the symbol name. All users changed. --- src/ChangeLog | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index d6a6d91b75a..92ab8080c9d 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2012-09-28 Eli Zaretskii + + * xdisp.c (syms_of_xdisp) : Rename from + Qautomatic_redisplay and change the symbol name. All users changed. + 2012-09-28 Tomohiro Matsuyama * profiler.c (sigprof_handler): Fix race condition. -- cgit v1.2.1 From e7c1b6ef850e7b4d021fabf4a922010781ed05bd Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Fri, 28 Sep 2012 22:02:34 -0400 Subject: * src/lisp.h (struct backtrace): Remove indirection for `function' field. * src/xdisp.c (redisplay_internal): * src/profiler.c (record_backtrace, sigprof_handler_1): * src/alloc.c (Fgarbage_collect): * src/eval.c (interactive_p, Fsignal, eval_sub, Ffuncall, Fbacktrace) (Fbacktrace_frame): Adjust accordingly. --- src/ChangeLog | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index c30c4ed955b..500522a2feb 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,12 @@ +2012-09-29 Stefan Monnier + + * lisp.h (struct backtrace): Remove indirection for `function' field. + * xdisp.c (redisplay_internal): + * profiler.c (record_backtrace, sigprof_handler_1): + * alloc.c (Fgarbage_collect): + * eval.c (interactive_p, Fsignal, eval_sub, Ffuncall, Fbacktrace) + (Fbacktrace_frame): Adjust accordingly. + 2012-09-28 Glenn Morris * eval.c (Frun_hook_with_args, Frun_hook_with_args_until_success) -- cgit v1.2.1 From 8e5691a0ecd85ea07c423835085ecfffc0013736 Mon Sep 17 00:00:00 2001 From: Juanma Barranquero Date: Sat, 29 Sep 2012 19:07:01 +0200 Subject: src/makefile.w32-in ($(BLD)/profiler.$(O)): Update dependencies. --- src/ChangeLog | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 500522a2feb..3400361bf3a 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2012-09-29 Juanma Barranquero + + * makefile.w32-in ($(BLD)/profiler.$(O)): Update dependencies. + 2012-09-29 Stefan Monnier * lisp.h (struct backtrace): Remove indirection for `function' field. -- cgit v1.2.1 From 9d4dcdc961052a421cc9b97200eb635b29baa13b Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sat, 29 Sep 2012 18:29:53 -0700 Subject: * sysdep.c (handle_fatal_signal): Bump backtrace size to 40. Suggested by Eli Zaretskii in . --- src/ChangeLog | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 3400361bf3a..fd4319eb4b0 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9 @@ +2012-09-30 Paul Eggert + + * sysdep.c (handle_fatal_signal): Bump backtrace size to 40. + Suggested by Eli Zaretskii in + . + 2012-09-29 Juanma Barranquero * makefile.w32-in ($(BLD)/profiler.$(O)): Update dependencies. -- cgit v1.2.1 From d89460ed93e67852a95a597a7a1a7983e8828fb9 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sat, 29 Sep 2012 23:19:33 -0700 Subject: Profiler improvements: more-accurate timers, overflow checks. * profiler.c: Don't include stdio.h, limits.h, sys/time.h, signal.h, setjmp.h. Include systime.h instead. (saturated_add): New function. (record_backtrace, current_sample_interval): Use EMACS_INT, not size_t. (record_backtrace, handle_profiler_signal): Saturate on fixnum overflow. (profiler_timer, profiler_timer_ok) [HAVE_TIMER_SETTIME]: New static vars. (enum profiler_cpu_running): New enumn. (profiler_cpu_running): Now of that enum type, not bool. All uses changed to store the new value. (handle_profiler_signal): Rename from sigprof_handler_1, for consistency with other handlers. Do not check whether cpu_log is a hash-table if garbage collecting, since it doesn't matter in that case. (deliver_profiler_signal): Rename from sigprof_handler, for consistency with other handlers. (setup_cpu_timer): New function, with much of what used to be in Fprofiler_cpu_start. Check for out-of-range argument. Prefer timer_settime if available, and prefer thread cputime clocks, then process cputime clocks, then monotonic clocks, to the old realtime clock. Use make_timeval to round more-correctly when falling back to setitimer. (Fprofiler_cpu_start): Use it. (Fprofiler_cpu_stop): Prefer timer_settime if available. Don't assume that passing NULL as the 2nd argument of setitimer is the same as passing a pointer to all-zero storage. Ignore SIGPROF afterwards. (malloc_probe): Saturate at MOST_POSITIVE_FIXNUM. * sysdep.c (emacs_sigaction_init): Also mask out SIGPROF in non-fatal signal handlers. Ignore SIGPROF on startup. * syssignal.h (PROFILER_CPU_SUPPORT): Define this macro here, not in profiler.c, since sysdep.c now uses it. --- src/ChangeLog | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index fd4319eb4b0..97f955e7136 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,39 @@ 2012-09-30 Paul Eggert + Profiler improvements: more-accurate timers, overflow checks. + * profiler.c: Don't include stdio.h, limits.h, sys/time.h, + signal.h, setjmp.h. Include systime.h instead. + (saturated_add): New function. + (record_backtrace, current_sample_interval): Use EMACS_INT, not size_t. + (record_backtrace, handle_profiler_signal): Saturate on fixnum overflow. + (profiler_timer, profiler_timer_ok) [HAVE_TIMER_SETTIME]: + New static vars. + (enum profiler_cpu_running): New enumn. + (profiler_cpu_running): Now of that enum type, not bool. + All uses changed to store the new value. + (handle_profiler_signal): Rename from sigprof_handler_1, + for consistency with other handlers. Do not check whether + cpu_log is a hash-table if garbage collecting, since it + doesn't matter in that case. + (deliver_profiler_signal): Rename from sigprof_handler, + for consistency with other handlers. + (setup_cpu_timer): New function, with much of what used to be in + Fprofiler_cpu_start. Check for out-of-range argument. + Prefer timer_settime if available, and prefer + thread cputime clocks, then process cputime clocks, then + monotonic clocks, to the old realtime clock. Use make_timeval + to round more-correctly when falling back to setitimer. + (Fprofiler_cpu_start): Use it. + (Fprofiler_cpu_stop): Prefer timer_settime if available. + Don't assume that passing NULL as the 2nd argument of setitimer + is the same as passing a pointer to all-zero storage. + Ignore SIGPROF afterwards. + (malloc_probe): Saturate at MOST_POSITIVE_FIXNUM. + * sysdep.c (emacs_sigaction_init): Also mask out SIGPROF in + non-fatal signal handlers. Ignore SIGPROF on startup. + * syssignal.h (PROFILER_CPU_SUPPORT): Define this macro here, not + in profiler.c, since sysdep.c now uses it. + * sysdep.c (handle_fatal_signal): Bump backtrace size to 40. Suggested by Eli Zaretskii in . -- cgit v1.2.1 From 84f72efd0c52bbae42a5169d9a94ad0feacb789e Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Sun, 30 Sep 2012 09:26:32 +0200 Subject: Fix compilation failure introduced in 2012-09-30T06:19:33Z!eggert@cs.ucla.edu. src/profiler.c (Fprofiler_cpu_stop): Use timer_settime only if HAVE_TIMER_SETTIME is defined. --- src/ChangeLog | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 97f955e7136..cb8692b4589 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2012-09-30 Eli Zaretskii + + * profiler.c (Fprofiler_cpu_stop): Use timer_settime only if + HAVE_TIMER_SETTIME is defined. + 2012-09-30 Paul Eggert Profiler improvements: more-accurate timers, overflow checks. @@ -8,7 +13,7 @@ (record_backtrace, handle_profiler_signal): Saturate on fixnum overflow. (profiler_timer, profiler_timer_ok) [HAVE_TIMER_SETTIME]: New static vars. - (enum profiler_cpu_running): New enumn. + (enum profiler_cpu_running): New enum. (profiler_cpu_running): Now of that enum type, not bool. All uses changed to store the new value. (handle_profiler_signal): Rename from sigprof_handler_1, -- cgit v1.2.1 From cb5b02667a8dcfc00d990103b2fb3236259bd627 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sun, 30 Sep 2012 01:15:11 -0700 Subject: * syssignal.h (PROFILER_CPU_SUPPORT): Don't define if PROFILING. Suggested by Eli Zaretskii in . --- src/ChangeLog | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index cb8692b4589..e07f7e131cb 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9 @@ +2012-09-30 Paul Eggert + + * syssignal.h (PROFILER_CPU_SUPPORT): Don't define if PROFILING. + Suggested by Eli Zaretskii in + . + 2012-09-30 Eli Zaretskii * profiler.c (Fprofiler_cpu_stop): Use timer_settime only if -- cgit v1.2.1 From 5938d5196d09aff887aa74603c102b1f303a613a Mon Sep 17 00:00:00 2001 From: Martin Rudalics Date: Sun, 30 Sep 2012 11:10:59 +0200 Subject: Handle window-height and window-width alist entries in `display-buffer'. In buffer display functions handle window-height/window-width alist entries. Suggested by Juri Linkov as fix for Bug#1806. * window.el (window--display-buffer): New argument ALIST. Obey window-height and window-width alist entries. (window--try-to-split-window): New argument ALIST. Bind window-combination-limit to t when the window's size shall be changed and window-combination-limit equals `window-size'. (display-buffer-in-atom-window) (display-buffer-in-major-side-window) (display-buffer-in-side-window, display-buffer-same-window) (display-buffer-reuse-window, display-buffer-pop-up-frame) (display-buffer-pop-up-window, display-buffer-below-selected) (display-buffer-at-bottom, display-buffer-in-previous-window) (display-buffer-use-some-window): Adjust all callers of window--display-buffer and window--try-to-split-window. (fit-frame-to-buffer): New option. (fit-window-to-buffer): Can resize frames if fit-frame-to-buffer is non-nil. (display-buffer-in-major-side-window): Evaluate window-height / window-width alist entries. * help.el (temp-buffer-resize-frames) (temp-buffer-resize-regexps): Remove options. (temp-buffer-resize-mode): Adjust doc-string. (resize-temp-buffer-window): Don't consult temp-buffer-resize-regexps. Use fit-frame-to-buffer instead of temp-buffer-resize-frames. * dired.el (dired-mark-pop-up): Call display-buffer-below-selected with a fit-window-to-buffer alist entry. * window.c (Vwindow_combination_limit): New default value. (Qwindow_size): New symbol replacing Qtemp_buffer_resize. --- src/ChangeLog | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index e07f7e131cb..12992f1de0a 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2012-09-30 Martin Rudalics + + * window.c (Vwindow_combination_limit): New default value. + (Qwindow_size): New symbol replacing Qtemp_buffer_resize. + 2012-09-30 Paul Eggert * syssignal.h (PROFILER_CPU_SUPPORT): Don't define if PROFILING. @@ -131,6 +136,7 @@ (redisplay_internal): Record itself in backtrace_list. (syms_of_xdisp): Define Qautomatic_redisplay. +2012-09-25 Eli Zaretskii 2012-09-25 Juanma Barranquero * makefile.w32-in ($(BLD)/callproc.$(O)): Update dependencies. -- cgit v1.2.1 From 48de8b12215e22390db1bc822e809708070ab938 Mon Sep 17 00:00:00 2001 From: Chong Yidong Date: Sun, 30 Sep 2012 17:18:38 +0800 Subject: Update docs for a bunch of 24.3 changes. * doc/emacs/killing.texi (Rectangles): Document copy-rectangle-as-kill. * doc/emacs/search.texi (Special Isearch): Document the lax space search feature and M-s SPC. (Regexp Search): Move main search-whitespace-regexp description to Special Isearch. (Replace): Document replace-lax-whitespace. * doc/emacs/basic.texi (Position Info): Document C-u M-=. (Moving Point): Document move-to-column. * doc/emacs/display.texi (Useless Whitespace): Add delete-trailing-lines. * doc/emacs/misc.texi (emacsclient Options): Document the effect of initial-buffer-choice on client frames. Document server-auth-dir. Do not document server-host, which is bad security practice. * doc/emacs/building.texi (Lisp Libraries): Docstring lookups can trigger autoloading. Document help-enable-auto-load. * doc/emacs/mini.texi (Yes or No Prompts): New node. * doc/emacs/ack.texi (Acknowledgments): Remove obsolete packages. * doc/lispref/commands.texi (Click Events): Define "mouse position list". Remove mention of unimplemented horizontal scroll bars. (Drag Events, Motion Events): Refer to "mouse position list". (Accessing Mouse): Document posnp. * doc/lispref/errors.texi (Standard Errors): Tweak arith-error description. Tweak markup. Remove domain-error and friends, which seem to be unused after the floating-point code revamp. * doc/lispref/functions.texi (Obsolete Functions): Obsolescence also affects documentation commands. Various clarifications. (Declare Form): New node. * doc/lispref/loading.texi (Autoload): * doc/lispref/help.texi (Documentation Basics): The special sequences can trigger autoloading. * doc/lispref/macros.texi (Defining Macros): Move description of `declare' to Declare Form node. * doc/lispref/numbers.texi (Integer Basics): Copyedits. (Float Basics): Consider IEEE floating point always available. (Random Numbers): Document actual limits. (Arithmetic Operations): Clarify division by zero. Don't mention the machine-independence of negative division since it does not happen in practice. * doc/lispref/os.texi (Idle Timers): Minor clarifications. (User Identification): Add system-users and system-groups. * doc/lispref/strings.texi (String Basics): Copyedits. * lisp/minibuffer.el (minibuffer-local-filename-syntax): Doc fix. * lisp/server.el (server-host): Document the security implications. (server-auth-key): Doc fix. * lisp/startup.el (initial-buffer-choice): Doc fix. * src/fns.c (Frandom): Doc fix. --- src/ChangeLog | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 12992f1de0a..122dbd903fe 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2012-09-30 Chong Yidong + + * fns.c (Frandom): Doc fix. + 2012-09-30 Martin Rudalics * window.c (Vwindow_combination_limit): New default value. -- cgit v1.2.1 From 427730ebdec426ceaae9ab04c9b0951ac8bbb923 Mon Sep 17 00:00:00 2001 From: Juanma Barranquero Date: Sun, 30 Sep 2012 14:27:58 +0200 Subject: src/makefile.w32-in ($(BLD)/profiler.$(O)): Update dependencies. --- src/ChangeLog | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 122dbd903fe..1f240b219e0 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2012-09-30 Juanma Barranquero + + * makefile.w32-in ($(BLD)/profiler.$(O)): Update dependencies. + 2012-09-30 Chong Yidong * fns.c (Frandom): Doc fix. -- cgit v1.2.1 From dd946752ab8810149a66a3eff469eb128709972d Mon Sep 17 00:00:00 2001 From: Jan Djärv Date: Sun, 30 Sep 2012 14:50:09 +0200 Subject: Add support for fullscreen in the NS port. * etc/NEWS: The NS port supports fullscreen. * src/nsfns.m (ns_frame_parm_handlers): Add x_set_fullscreen. * src/nsterm.h (MAC_OS_X_VERSION_10_7, MAC_OS_X_VERSION_10_8): New. (EmacsView): Add variables for fullscreen. (handleFS, setFSValue, toggleFullScreen): New in EmacsView. (EmacsFSWindow): New interface for fullscreen. * src/nsterm.m (NEW_STYLE_FS): New define. (ns_fullscreen_hook, windowWillEnterFullScreen) (windowDidEnterFullScreen, windowWillExitFullScreen) (windowDidExitFullScreen, toggleFullScreen, handleFS) (setFSValue): New functions. (EmacsFSWindow): New implementation. (canBecomeKeyWindow): New function for EmacsFSWindow. (ns_create_terminal): Set fullscreen_hook to ns_fullscreen_hook. (dealloc): Release nonfs_window if in fullscreen. (updateFrameSize:): Call windowDidMove to update top/left. (windowWillResize:toSize:): Check if frame is still maximized. (initFrameFromEmacs:): Initialize fs_state, fs_before_fs, next_maximized, maximized_width, maximized_height and nonfs_window. Call setCollectionBehavior if NEW_STYLE_FS. Initialize bwidth and tbar_height. (windowWillUseStandardFrame:defaultFrame:): Update frame parameter fullscreen. Set maximized_width/height. Act on next_maximized. --- src/ChangeLog | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 1f240b219e0..6aaa6bc88f8 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,30 @@ +2012-09-30 Jan Djärv + + * nsfns.m (ns_frame_parm_handlers): Add x_set_fullscreen. + + * nsterm.m (NEW_STYLE_FS): New define. + (ns_fullscreen_hook, windowWillEnterFullScreen) + (windowDidEnterFullScreen, windowWillExitFullScreen) + (windowDidExitFullScreen, toggleFullScreen, handleFS) + (setFSValue): New functions. + (EmacsFSWindow): New implementation. + (canBecomeKeyWindow): New function for EmacsFSWindow. + (ns_create_terminal): Set fullscreen_hook to ns_fullscreen_hook. + (dealloc): Release nonfs_window if in fullscreen. + (updateFrameSize:): Call windowDidMove to update top/left. + (windowWillResize:toSize:): Check if frame is still maximized. + (initFrameFromEmacs:): Initialize fs_state, fs_before_fs, + next_maximized, maximized_width, maximized_height and nonfs_window. + Call setCollectionBehavior if NEW_STYLE_FS. Initialize bwidth and + tbar_height. + (windowWillUseStandardFrame:defaultFrame:): Update frame parameter + fullscreen. Set maximized_width/height. Act on next_maximized. + + * nsterm.h (MAC_OS_X_VERSION_10_7, MAC_OS_X_VERSION_10_8): New. + (EmacsView): Add variables for fullscreen. + (handleFS, setFSValue, toggleFullScreen): New in EmacsView. + (EmacsFSWindow): New interface for fullscreen. + 2012-09-30 Juanma Barranquero * makefile.w32-in ($(BLD)/profiler.$(O)): Update dependencies. -- cgit v1.2.1