Provisional fix for bug #16479 with client connecting while in a TTY menu.
[bpt/emacs.git] / src / ChangeLog
index 42f79d2..d36e60a 100644 (file)
@@ -1,5 +1,115 @@
+2014-01-17  Eli Zaretskii  <eliz@gnu.org>
+
+       * menu.c (Fx_popup_menu): When invoking tty_menu_show, temporarily
+       switch to single keyboard.  Prevents daemon crashes when a new
+       client connects while we show a TTY menu in an existing client.
+       (Bug#16479)
+
+2014-01-14  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Fix MinGW64 porting problem with _setjmp.
+       Reported by Eli Zaretskii in:
+       http://lists.gnu.org/archive/html/emacs-devel/2014-01/msg01297.html
+       * image.c (FAST_SETJMP, FAST_LONGJMP): New macros, replacing
+       the old _setjmp and _longjmp.  All uses changed.
+
+2014-01-13  Daniel Colascione  <dancol@dancol.org>
+
+       * textprop.c (Fremove_list_of_text_properties): Correctly
+       handle reaching the end of the interval tree. (Bug#15344)
+
+2014-01-13  Martin Rudalics  <rudalics@gmx.at>
+
+       * xdisp.c (resize_mini_window): Round height to a multiple of
+       frame's line height.  Fix bug in calculation of window start
+       position (Bug#16424).
+
+2014-01-13  Jan Djärv  <jan.h.d@swipnet.se>
+
+       * macfont.m: Include termchar.h.
+       (CG_SET_FILL_COLOR_WITH_FACE_FOREGROUND)
+       (CG_SET_FILL_COLOR_WITH_FACE_BACKGROUND)
+       (CG_SET_STROKE_COLOR_WITH_FACE_FOREGROUND): Modified from
+       *_WITH_GC_* to take face and f as parameters.
+       (macfont_draw): Check for DRAW_MOUSE_FACE and set face accordingly.
+       Use *_WITH_FACE_*, and pass face as parameter (Bug#16425).
+
+2014-01-13  Daniel Colascione  <dancol@dancol.org>
+
+       Fix menu item updating in the presence of the Unity global menu
+       GTK+ module.
+
+       * gtkutil.h (xg_have_tear_offs): Add frame parameter
+       * gtkutil.c (xg_have_tear_offs): Count the global menu as a
+       tear-off.
+       (xg_update_menubar,xg_update_menu_item): Call g_object_notify when
+       updating menus; explain why.
+       (xg_update_frame_menubar): Remove the 23px hack: I can't repro the
+       problem it's supposed to solve and it interferes with detecting
+       the presence of a global menu.
+       * xmenu.c (set_frame_menubar): Call xg_have_tear_offs with new
+       parameter.
+
+2014-01-11  K. Handa  <handa@gnu.org>
+
+       * composite.c (composition_update_it): Fix indexing of
+       LGSTRING_CHAR (Bug#15984).
+
+2014-01-11  Fabrice Popineau  <fabrice.popineau@gmail.com>
+
+       * unexw32.c (_start) [__MINGW64__]: Define to __start.
+
+2014-01-11  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (try_window_id): Don't use this function's optimizations
+       if overlays in the buffer displayed by the window have changed
+       since last redisplay.  (Bug#16347)
+       (message_dolog): Fix indentation.
+
+2014-01-11  Martin Rudalics  <rudalics@gmx.at>
+
+       * frame.c (frame_resize_pixelwise): Fix doc-string.
+
+2014-01-10  Martin Rudalics  <rudalics@gmx.at>
+
+       Fix handling of internal borders (Bug#16348).
+       * dispnew.c (adjust_frame_glyphs_for_window_redisplay): Remove
+       internal border width from pixel width of windows.
+       (change_frame_size_1): Don't return early when frame's pixel
+       size changes - we still have to record the new sizes in the
+       frame structure.
+       * w32fns.c (x_set_tool_bar_lines): Clear internal border width
+       also when toolbar gets larger.
+       * window.c (check_frame_size): Include internal_border_width in
+       check.
+       * xdisp.c (Ftool_bar_height): Fix doc-string typo.
+       * xfns.c (x_set_menu_bar_lines, x_set_tool_bar_lines): In
+       non-toolkit/non-GTK version clear internal border.
+       * xterm.c (x_clear_under_internal_border): New function for
+       non-toolkit/non-GTK version.
+       (x_after_update_window_line): In non-toolkit/non-GTK version
+       don't do that.
+       (handle_one_xevent, x_set_window_size): Call
+       x_clear_under_internal_border in non-toolkit/non-GTK version.
+       * xterm.h (x_clear_under_internal_border): Extern it.
+
+2014-01-07  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Fix misdisplay of interlaced GIFs with libgif5 (Bug#16372).
+       * image.c (gif_load): libgif5 deinterlaces for us, so don't do
+       it again.
+
+2014-01-06  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (redisplay_window): Don't skip window redisplay if the
+       last value of point is not equal to buffer's point.  (Bug#16129)
+
 2014-01-05  Paul Eggert  <eggert@cs.ucla.edu>
 
+       Spelling fixes.
+       * nsterm.h (updateCollectionBehavior): Rename from
+       updateCollectionBehaviour.  All uses changed.
+
        Port to GNU/Linux with recent grsecurity/PaX patches (Bug#16343).
        * Makefile.in (SETFATTR): New macro.
        (temacs$(EXEEXT)): Use it.
        * conf_post.h: Include <stdbool.h>.
        (bool_bf): New type.
        * dispextern.h (TRACE, PREPARE_FACE_FOR_DISPLAY):
-       * interval.h (RESET_INTERVAL, COPY_INTERVAL_CACHE, MERGE_INTERVAL_CACHE)
+       * intervals.h (RESET_INTERVAL, COPY_INTERVAL_CACHE, MERGE_INTERVAL_CACHE)
        Surround statement macro with proper 'do { ... } while (false)' brackets.
        * dispextern.h (IF_DEBUG): Properly parenthesize and convert to void.
        Args must now be expressions; all callers changed.
 
        Don't run timers in input-pending-p.  Its new check-timers param
        provides the prior behavior.  (Bug#15045).
-       * src/keyboard.c (Finput_pending_p): Accept optional check-timers
-       param.
+       * keyboard.c (Finput_pending_p): Accept optional check-timers param.
 
 2013-10-17  Paul Eggert  <eggert@cs.ucla.edu>
 
        (Qbool_vector_p): Declare.
        (CHECK_BOOL_VECTOR, ROUNDUP, BITS_PER_SIZE_T): New macros.
        (swap16, swap32, swap64): New inline functions.
-       * macfont.c (macfont_shape): Change lint_assume to assume.
+       * macfont.m (macfont_shape): Change lint_assume to assume.
        * ralloc.c: Rename ROUNDUP to PAGE_ROUNDUP throughout.
        * xsettings.c (parse_settings): Use new swap16 and
        swap32 from lisp.h instead of file-specific macros.
        * process.h, process.c (PROCESS_INLINE):
        * syntax.h, syntax.c (SYNTAX_INLINE):
        * systime.h, sysdep.c (SYSTIME_INLINE):
-       * termhooks.h, terminal.h (TERMHOOKS_INLINE):
+       * termhooks.h, terminal.c (TERMHOOKS_INLINE):
        * window.h, window.c (WINDOW_INLINE):
        Remove.  All uses replaced with INLINE.
 
        (x_handle_dnd_message):
        * xsettings.c (xft_settings_event):
        Use 'const XEvent * const' where appropriate.
-       * xterm.h, gtkutil.h, xsettngs.h: Adjust related prototypes.
+       * xterm.h, gtkutil.h, xsettings.h: Adjust related prototypes.
 
 2013-09-16  Dmitry Antipov  <dmantipov@yandex.ru>
 
        (Fx_create_frame): Register macfont driver, make a better default font.
        (Fns_popup_font_panel): Get font from macfont driver, if used.
 
-       * macfont.m, macfont.h, maccuvs.h: New files.
+       * macfont.m, macfont.h, macuvs.h: New files.
 
        * font.h: Declare syms_of_macfont.
 
        New unwind-protect flavors to better type-check C callbacks.
        This also lessens the need to write wrappers for callbacks,
        and the need for make_save_pointer.
-       * alloca.c (free_save_value):
+       * alloc.c (free_save_value):
        * atimer.c (run_all_atimers):
        Now extern.
        * alloc.c (safe_alloca_unwind):
        * menu.c (cleanup_popup_menu) [HAVE_NS]:
        * minibuf.c (choose_minibuf_frame_1):
        * process.c (make_serial_process_unwind):
-       * xdisp.h (pop_message_unwind):
+       * xdisp.c (pop_message_unwind):
        * xselect.c (queue_selection_requests_unwind):
        Remove no-longer-needed wrapper.  All uses replaced by the wrappee.
-       * alloca.c (record_xmalloc):
+       * alloc.c (record_xmalloc):
        Prefer record_unwind_protect_ptr to record_unwind_protect with
        make_save_pointer.
-       * alloca.c (Fgarbage_collect):
+       * alloc.c (Fgarbage_collect):
        Prefer record_unwind_protect_void to passing a dummy.
        * buffer.c (restore_buffer):
        * window.c (restore_window_configuration):
        Use emacs_open more consistently when opening files.
        This handles EINTR more consistently now, and makes it easier
        to introduce other uniform changes to file descriptor handling.
-       * src/systdio.h: New file.
-       * src/buffer.c (mmap_init):
+       * sysstdio.h: New file.
+       * buffer.c (mmap_init):
        * cygw32.c (chdir_to_default_directory):
        * dispnew.c (Fopen_termscript):
        * emacs.c (Fdaemon_initialized):
 2013-03-28  Dmitry Antipov  <dmantipov@yandex.ru>
 
        * window.h (struct window): Replace hchild, vchild and buffer slots
-       with the only contents slot.  This is possible because each valid
+       with a single slot 'contents'.  This is possible because each valid
        window may have either the child window (in vertical or horizontal
        combination) or buffer to display (for the leaf window).  Using that,
-       a lof of operations to traverse and/or change window hierarchies may
+       a lot of operations to traverse and/or change window hierarchies may
        be simplified.  New member horizontal is used to distinguish between
        horizontal and vertical combinations of internal windows.
        (WINDOW_LEAF_P, WINDOW_HORIZONTAL_COMBINATION_P)