* profiler.c (Fprofiler_cpu_start): Remove unnecessary flag SA_SIGINFO.
[bpt/emacs.git] / src / ChangeLog
index 56a9c0a..445090f 100644 (file)
@@ -1,3 +1,160 @@
+2012-09-26  Tomohiro Matsuyama  <tomo@cx4a.org>
+
+       * profiler.c (Fprofiler_cpu_start): Remove unnecessary flag SA_SIGINFO.
+
+2012-09-26  Juanma Barranquero  <lekktu@gmail.com>
+
+       * makefile.w32-in ($(BLD)/profiler.$(O)): Update dependencies.
+
+2012-09-26  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * 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  <tomo@cx4a.org>
+            Stefan Monnier  <monnier@iro.umontreal.ca>
+            Juanma Barranquero  <lekktu@gmail.com>
+
+       * profiler.c: New file.
+       * Makefile.in (base_obj): Add profiler.o.
+       * makefile.w32-in (OBJ2, GLOBAL_SOURCES): Add profiler.c.
+       ($(BLD)/profiler.$(O)): New target.
+       * emacs.c (main): Call syms_of_profiler.
+       * alloc.c (Qautomatic_gc): New constant.
+       (MALLOC_PROBE): New macro.
+       (xmalloc, xzalloc, xrealloc, lisp_malloc, lisp_align_malloc): Use it.
+       (total_bytes_of_live_objects): New function.
+       (Fgarbage_collect): Use it.  Record itself in backtrace_list.
+       Call malloc_probe for the memory profiler.
+       (syms_of_alloc): Define Qautomatic_gc.
+       * eval.c (eval_sub, Ffuncall): Reorder assignments to avoid
+       race condition.
+       (struct backtrace): Move definition...
+       * lisp.h (struct backtrace): ..here.
+       (Qautomatic_gc, profiler_memory_running): Declare vars.
+       (malloc_probe, syms_of_profiler): Declare functions.
+       * xdisp.c (Qautomatic_redisplay): New constant.
+       (redisplay_internal): Record itself in backtrace_list.
+       (syms_of_xdisp): Define Qautomatic_redisplay.
+
+2012-09-25  Juanma Barranquero  <lekktu@gmail.com>
+
+       * makefile.w32-in ($(BLD)/callproc.$(O)): Update dependencies.
+
+2012-09-25  Paul Eggert  <eggert@cs.ucla.edu>
+
+       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_SIGNAL]: Initialize them.
+
+2012-09-25  Eli Zaretskii  <eliz@gnu.org>
+
+       * 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  <lekktu@gmail.com>
+
+       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] <Vlibrary_cache>: 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) <Vlibrary_cache>: Do not initialize.
+
+       * w32.h (Vlibrary_cache): Do not declare.
+
+2012-09-25  Eli Zaretskii  <eliz@gnu.org>
+
+       * 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
+       for the details.
+
+2012-09-25  Chong Yidong  <cyd@gnu.org>
+
+       * xdisp.c (mode_line_inverse_video): Delete obsolete variable.
+
+2012-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * bytecode.c (exec_byte_code): Signal an error instead of aborting,
+       when encountering an unknown bytecode.
+
+2012-09-24  Paul Eggert  <eggert@cs.ucla.edu>
+
+       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  <cyd@gnu.org>
 
        * chartab.c (Fset_char_table_default): Obsolete function removed.
        (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.
+       (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.
 2012-09-23  Jan Djärv  <jan.h.d@swipnet.se>
 
        * 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  <cyd@gnu.org>
 
        if it is defined.  Arguments and return value changed.
        (valid_image_p, make_image): Callers changed.
        (xbm_type, xpm_type, pbm_type, png_type, jpeg_type, tiff_type)
-       (gif_type, imagemagick_type, svg_type, gs_type): Add
-       initialization functions.
+       (gif_type, imagemagick_type, svg_type, gs_type):
+       Add initialization functions.
        (Finit_image_library): Call lookup_image_type.
        (CHECK_LIB_AVAILABLE): Macro deleted.
        (lookup_image_type): Call define_image_type here, rather than via
        * window.c (Fsplit_window_internal): Handle only Qt value of
        Vwindow_combination_limit separately.
        (Qtemp_buffer_resize): New symbol.
-       (Vwindow_combination_limit): New default value.  Rewrite
-       doc-string.
+       (Vwindow_combination_limit): New default value.
+       Rewrite doc-string.
 
 2012-09-22  Eli Zaretskii  <eliz@gnu.org>
 
        (Fx_create_frame): Call x_set_offset to correctly interpret
        top_pos in geometry.
 
-       * frame.c (read_integer, XParseGeometry): Moved from w32xfns.c.
+       * frame.c (read_integer, XParseGeometry): Move from w32xfns.c.
        (Fx_parse_geometry): If there is a space in string, call
        Qns_parse_geometry, otherwise do as on other terms (Bug#12368).
 
 
 2012-09-16  Martin Rudalics  <rudalics@gmx.at>
 
-       * window.c (Fwindow_parameter, Fset_window_parameter): Accept
-       any window as argument (Bug#12452).
+       * window.c (Fwindow_parameter, Fset_window_parameter):
+       Accept any window as argument (Bug#12452).
 
 2012-09-16  Jan Djärv  <jan.h.d@swipnet.se>
 
 2012-09-14  Dmitry Antipov  <dmantipov@yandex.ru>
 
        Avoid out-of-range marker position (Bug#12426).
-       * insdel.c (replace_range, replace_range_2): Adjust
-       markers before overlays, as suggested by comments.
+       * insdel.c (replace_range, replace_range_2):
+       Adjust markers before overlays, as suggested by comments.
        (insert_1_both, insert_from_buffer_1, adjust_after_replace):
        Remove redundant check before calling offset_intervals.
 
        in the internal border.
        (x_set_window_size): Remove static variables and their usage.
        (ns_redraw_scroll_bars): Fix NSTRACE arg.
-       (ns_after_update_window_line, ns_draw_fringe_bitmap): Remove
-       fringe/internal border adjustment (Bug#11052).
+       (ns_after_update_window_line, ns_draw_fringe_bitmap):
+       Remove fringe/internal border adjustment (Bug#11052).
        (ns_draw_fringe_bitmap): Make code more like other terms (xterm.c).
        (ns_draw_window_cursor): Remove fringe/internal border adjustment.
        (ns_fix_rect_ibw): Remove.
        (init_signals) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it;
        code moved here from emacs.c's main function.
        * sysdep.c, syssignal.h (handle_on_main_thread): New function,
-       replacing the old SIGNAL_THREAD_CHECK.  All uses changed.  This
-       lets callers save and restore errno properly.
+       replacing the old SIGNAL_THREAD_CHECK.  All uses changed.
+       This lets callers save and restore errno properly.
 
 2012-09-05  Dmitry Antipov  <dmantipov@yandex.ru>
 
        * process.c: Include TERM_HEADER instead of listing all possible
        window-system headers.
 
-       * nsterm.h: Remove declarations now in frame.h.  Define
-       FRAME_X_SCREEN, FRAME_X_VISUAL.
+       * nsterm.h: Remove declarations now in frame.h.
+       Define FRAME_X_SCREEN, FRAME_X_VISUAL.
 
        * menu.c: Include TERM_HEADER instead of listing all possible
        window-system headers.
 
        * nsterm.h (NSPanel): New class variable dialog_return.
 
-       * nsmenu.m (initWithContentRect:styleMask:backing:defer:): Initialize
-       dialog_return.
+       * nsmenu.m (initWithContentRect:styleMask:backing:defer:):
+       Initialize dialog_return.
        (windowShouldClose:): Use stop instead of stopModalWithCode.
        (clicked:): Ditto, and also set dialog_return (Bug#12258).
        (timeout_handler:): Use stop instead of abortModal.  Send a dummy