Undo in region after markers in undo history relocated
[bpt/emacs.git] / src / ChangeLog
index 5b75161..cbe10d8 100644 (file)
@@ -1,9 +1,157 @@
+2014-03-24  Barry O'Reilly  <gundaetiapo@gmail.com>
+
+       Have (MARKER . ADJUSTMENT) undo records always be immediately
+       after their corresponding (TEXT . POS) record in undo list.
+       (Bug#16818)
+       * lisp.h (record-delete): New arg record_markers.
+       (record_marker_adjustment): No longer needed outside undo.c.
+       * insdel.c (adjust_markers_for_delete): Move calculation of marker
+       adjustments to undo.c's record_marker_adjustments.  Note that
+       fileio.c's decide_coding_unwind is another caller to
+       adjust_markers_for_delete.  Because it has undo list bound to t,
+       it does not rely on adjust_markers_for_delete to record marker
+       adjustments.
+       (del_range_2): Swap call to record_delete and
+       adjust_markers_for_delete so as undo marker adjustments are
+       recorded before current deletion's adjustments, as before.
+       (adjust_after_replace):
+       (replace_range): Pass value for new record_markers arg to
+       delete_record.
+       * undo.c (record_marker_adjustment): Renamed to
+       record_marker_adjustments and made static.
+       (record_delete): Check record_markers arg and call
+       record_marker_adjustments.
+       (record_change): Pass value for new record_markers arg to
+       delete_record.
+       (record_point): at_boundary calculation no longer needs to account
+       for marker adjustments.
+
+2014-03-24  Martin Rudalics  <rudalics@gmx.at>
+
+       * w32term.c (x_set_window_size): Refine fix from 2014-03-14
+       (Bug#17077).
+
+2014-03-23  Glenn Morris  <rgm@gnu.org>
+
+       * fileio.c (Ffile_symlink_p): Doc fix. (Bug#17073)
+
+2014-03-23  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * buffer.c (struct sortvec): Add field `spriority'.
+       (compare_overlays): Use it.
+       (sort_overlays): Set it.
+
+2014-03-23  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (redisplay_window): If all previous attempts to find the
+       cursor row failed, try a few alternatives before falling back to
+       the top-most row of the window.  Use row_containing_pos.  (Bug#17047)
+
+2014-03-22  Daniel Colascione  <dancol@dancol.org>
+
+       * process.c (conv_sockaddr_to_lisp): When extracting the string
+       names of AF_LOCAL sockets, stop before reading uninitialized
+       memory.
+
+2014-03-23  Daniel Colascione  <dancol@dancol.org>
+
+       * process.c (DATAGRAM_CONN_P): Don't underflow datagram_address
+       array.  (ASAN caught.)
+
+2014-03-21  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
+
+       Fix regression introduced by patch for Bug#10500.
+       * xterm.c (x_draw_image_relief): Respect Vtool_bar_button_margin.
+       * w32term.c (x_draw_image_relief): Likewise.
+
+2014-03-21  Martin Rudalics  <rudalics@gmx.at>
+
+       * w32fns.c (w32_wnd_proc): For WM_WINDOWPOSCHANGING don't
+       constrain frame size in SW_SHOWMAXIMIZED case so we can truly
+       maximize a frame for odd default fonts.
+
+2014-03-20  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * doc.c (store_function_docstring): Fix pointer signedness mismatch.
+
+2014-03-20  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * doc.c (store_function_docstring): Warn when we don't know where to
+       put a docstring.
+       (Fsubstitute_command_keys): Don't advertise the fact that
+       text-properties are dropped, since we think it's a bug that we'll fix
+       in 24.5.
+
+       * frame.h (SET_FRAME_VISIBLE): Keep frame_garbaged up to date.
+       * xterm.c (handle_one_xevent) <MapNotify>: Don't garbage the frame.
+       * frame.c (frame_garbaged): Make "docstring" more precise.
+
+2014-03-20  Glenn Morris  <rgm@gnu.org>
+
+       * charset.c (init_charset): When we cannot find the charsets directory,
+       mention if EMACSDATA is set.
+
+2014-03-19  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * fns.c (Frandom): Fix rare bug where the result isn't random.
+
+       Fix porting inconsistency about rounding to even.
+       * floatfns.c (emacs_rint) [!HAVE_RINT]: Round to even.
+       This way, the unusual !HAVE_RINT case acts like the usual
+       HAVE_RINT case, and we can fix the documentation accordingly.
+
+2014-03-19  Eli Zaretskii  <eliz@gnu.org>
+
+       * w32fns.c (reset_modifiers): Zero out keystate[] before using it.
+       (w32_wnd_proc): Initialize the dwHoverTime member of
+       TRACKMOUSEEVENT structure.
+
+2014-03-17  Teodor Zlatanov  <tzz@lifelogs.com>
+
+       * gnutls.c (Fgnutls_boot): Fix case of :verify-error = t.
+
+2014-03-16  Eli Zaretskii  <eliz@gnu.org>
+
+       * search.c (find_newline): Speed up the function when using the
+       newline cache, by halving the number of calls to
+       region_cache_forward and region_cache_backward.  (Bug#16830)
+
+2014-03-15  Juanma Barranquero  <lekktu@gmail.com>
+
+       * buffer.c (Fset_buffer): Document return value (bug#17015).
+
+2014-03-14  Martin Rudalics  <rudalics@gmx.at>
+
+       * w32term.c (x_set_window_size): When frame-resize-pixelwise is
+       nil, always resize character wise to avoid potential loss of the
+       mode line (Bug#16923 related).
+
+2014-03-12  Martin Rudalics  <rudalics@gmx.at>
+
+       * frame.c (x_set_frame_parameters): Always calculate new sizes
+       pixelwise to avoid potential loss when rounding.
+
+2014-03-11  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       * xfns.c (x_set_mouse_color): Recolor vertical_drag_cursor.
+       * xterm.c (x_free_frame_resources): Free all allocated cursors.
+
+2014-03-10  Eli Zaretskii  <eliz@gnu.org>
+
+       * w32.c (fstatat): Don't add an extra slash if the argument ends
+       with a slash: this fails the subsequent call to stat_worker on
+       Windows 9X.  Reported by oslsachem <oslsachem@gmail.com>.
+
+2014-03-09  Martin Rudalics  <rudalics@gmx.at>
+
+       * xdisp.c (Fwindow_text_pixel_size): Adjust doc-string.
+
 2014-03-08  Jan Djärv  <jan.h.d@swipnet.se>
 
        * nsterm.h (MAC_OS_X_VERSION_10_9): Add.
 
-       * nsterm.m (constrainFrameRect:toScreen:): Constrain normally when frame
-       is only on one screen (Bug#14713).
+       * nsterm.m (constrainFrameRect:toScreen:): Constrain normally
+       when frame is only on one screen (Bug#14713).
 
 2014-03-08  Eli Zaretskii  <eliz@gnu.org>
 
        we eventually back up the iterator to the wrap point.  This avoids
        delusional behavior of move_it_to, whereby it proceeds to the next
        display line, but sets current_x to zero for all the glyphs that
-       without word-wrap would fit on the previous display line.  One
-       result was that visual-order cursor movement behaved erratically
+       without word-wrap would fit on the previous display line.
+       One result was that visual-order cursor movement behaved erratically
        under word-wrap.
        (Fmove_point_visually): Add code to find the x coordinate of the
        last character before wrap point, under word-wrap on a TTY.
        SSDATA (Vx_resource_name), which may be changed from Lisp.
        (xim_close_display): For XUnregisterIMInstantiateCallback,
        always eassert return value and pass exactly the same values
-       as were used for XRegisterIMInstantiateCallback.  Otherwise
-       XUnregisterIMInstantiateCallback will always fail.  See Xlib
+       as were used for XRegisterIMInstantiateCallback.
+       Otherwise XUnregisterIMInstantiateCallback will always fail.  See Xlib
        sources to check why if you are interested.
 
 2014-03-05  Martin Rudalics  <rudalics@gmx.at>