Merge changes from emacs-23
[bpt/emacs.git] / src / ChangeLog
index 895e3e5..f928373 100644 (file)
@@ -1,8 +1,294 @@
+2011-10-01  Andreas Schwab  <schwab@linux-m68k.org>
+
+       * keymap.c (Fsingle_key_description): Use make_specified_string
+       instead of build_string to build string from push_key_description.
+       (Bug#5193)
+
+2011-09-30  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * buffer.h (struct buffer): Use time_t, not int, for a time stamp.
+       This fixes a Y2038 bug on 64-bit hosts.
+       * buffer.c (reset_buffer):
+       * fileio.c (Fdo_auto_save, Fset_buffer_auto_saved)
+       (Fclear_buffer_auto_save_failure):
+       Use 0, not -1, to represent an unset failure time, since time_t
+       might not be signed.
+
+       Remove dependency on glibc malloc internals.
+       * alloc.c (XMALLOC_OVERRUN_CHECK_OVERHEAD, XMALLOC_OVERRUN_CHECK_SIZE):
+       Move back here from lisp.h, but with their new implementations.
+       (XMALLOC_BASE_ALIGNMENT, COMMON_MULTIPLE, XMALLOC_HEADER_ALIGNMENT)
+       (XMALLOC_OVERRUN_SIZE_SIZE): Move these new lisp.h macros here.
+       * charset.c (charset_table_init): New static var.
+       (syms_of_charset): Use it instead of xmalloc.  This removes a
+       dependency on glibc malloc internals.  See Eli Zaretskii's comment in
+       <http://lists.gnu.org/archive/html/emacs-devel/2011-09/msg00815.html>.
+       * lisp.h (XMALLOC_OVERRUN_CHECK_OVERHEAD, XMALLOC_OVERRUN_CHECK_SIZE):
+       Move back to alloc.c.
+       (XMALLOC_BASE_ALIGNMENT, COMMON_MULTIPLE, XMALLOC_HEADER_ALIGNMENT)
+       (XMALLOC_OVERRUN_SIZE_SIZE): Move to alloc.c.
+
+2011-09-30  Jan Djärv  <jan.h.d@swipnet.se>
+
+       * nsterm.m (windowDidResize): Call x_set_window_size only when
+       ns_in_resize is true.  Otherwise set pixelwidth/height and
+       call change_frame_size (Bug#9628).
+
+2011-09-30  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Port --enable-checking=all to Fedora 14 x86-64.
+       * charset.c (syms_of_charset): Also account for glibc malloc's
+       internal overhead when calculating the initial malloc maximum.
+
+       Port --enable-checking=all to Fedora 14 x86.
+       * alloc.c (XMALLOC_OVERRUN_CHECK_OVERHEAD, XMALLOC_OVERRUN_CHECK_SIZE):
+       Move to lisp.h.
+       (xmalloc_put_size, xmalloc_get_size, overrun_check_malloc)
+       (overrun_check_realloc, overrun_check_free):
+       Use XMALLOC_OVERRUN_SIZE_SIZE, not sizeof (size_t).
+       That way, xmalloc returns a properly-aligned pointer even if
+       XMALLOC_OVERRUN_CHECK is defined.  The old debugging code happened
+       to align OK on typical 64-bit hosts, but not on Fedora 14 x86.
+       * charset.c (syms_of_charset): Take XMALLOC_OVERRUN_CHECK_OVERHEAD
+       into account when calculating the initial malloc maximum.
+       * lisp.h (XMALLOC_OVERRUN_CHECK_OVERHEAD, XMALLOC_OVERRUN_CHECK_SIZE):
+       Move here from alloc.c, so that charset.c can use it too.
+       Properly align; the old code wasn't right for common 32-bit hosts
+       when configured with --enable-checking=all.
+       (XMALLOC_BASE_ALIGNMENT, COMMON_MULTIPLE, XMALLOC_HEADER_ALIGNMENT)
+       (XMALLOC_OVERRUN_SIZE_SIZE): New macros.
+
+2011-09-29  Eli Zaretskii  <eliz@gnu.org>
+
+       * sysdep.c (snprintf) [!EOVERFLOW]: If EOVERFLOW is not defined,
+       use EDOM.
+
+2011-09-28  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (compute_display_string_end): If there's no display
+       string at CHARPOS, return -1.
+
+       * bidi.c (bidi_fetch_char): When compute_display_string_end
+       returns a negative value, treat the character as a normal
+       character not covered by a display string.  (Bug#9624)
+
+2011-09-28  Juanma Barranquero  <lekktu@gmail.com>
+
+       * lread.c (Fread_from_string): Fix typo in docstring.
+
+2011-09-27  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (handle_invisible_prop): If invisible text ends on a
+       newline, reseat the iterator instead of bidi-iterating there one
+       character at a time.  (Bug#9610)
+       (BUFFER_POS_REACHED_P, move_it_in_display_line_to): Bail out when
+       past TO_CHARPOS if the bidi iterator is at base embedding level.
+
+2011-09-27  Andreas Schwab  <schwab@linux-m68k.org>
+
+       * lread.c (readevalloop): Use correct code for NBSP.
+       (read1): Likewise.  (Bug#9608)
+
+2011-09-25  Michael Albinus  <michael.albinus@gmx.de>
+
+       * dbusbind.c (Fdbus_register_signal): When service is not
+       registered, use nil in Vdbus_registered_objects_table.  (Bug#9581)
+
+2011-09-25  Glenn Morris  <rgm@gnu.org>
+
+       * buffer.c (truncate-lines): Doc fix.
+
+2011-09-24  Chong Yidong  <cyd@stupidchicken.com>
+
+       * window.c (Fwindow_prev_buffers, Fset_window_prev_buffers)
+       (Fset_window_next_buffers): Doc fix.
+
+2011-09-24  Glenn Morris  <rgm@gnu.org>
+
+       * minibuf.c (read_minibuf): Disable line truncation.  (Bug#5715)
+
+2011-09-24  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Fix minor problems found by static checking.
+       * xdisp.c (string_from_display_spec): Don't assume vecsize fits in int.
+       * indent.c (Fvertical_motion): Fix == vs = typo.
+
+2011-09-24  Eli Zaretskii  <eliz@gnu.org>
+
+       * dispnew.c (syms_of_display) <redisplay-dont-pause>: Default
+       value is now t.  Doc fix.
+
+       * indent.c (Fvertical_motion): Compute and apply the overshoot
+       logic also when moving up, not only when moving down.  Fix the
+       confusing name and values of the it_overshoot_expected variable;
+       logic changed accordingly.  (Bug#9254) (Bug#9549)
+
+       * xdisp.c (pos_visible_p): Produce correct pixel coordinates when
+       CHARPOS is covered by a display string which includes newlines.
+       (move_it_vertically_backward): Avoid inflooping when START_CHARPOS
+       is covered by a display string with embedded newlines.
+
+2011-09-24  Michael Albinus  <michael.albinus@gmx.de>
+
+       * dbusbind.c (Fdbus_register_signal): Add match rule to
+       Vdbus_registered_objects_table.  (Bug#9581)
+       (Fdbus_register_method, Vdbus_registered_objects_table): Fix
+       docstring.
+
+2011-09-24  Jim Meyering  <meyering@redhat.com>
+
+       Do not ignore write error for any output size.
+       The previous change was incomplete.
+       While it makes emacs --batch detect the vast majority of stdout
+       write failures, errors were still ignored whenever the output size is
+       k * (BUFSIZ+1) - 4.  E.g., on a system with BUFSIZ of 4096,
+         $ emacs --batch --eval '(print (format "%4093d" 0))' > /dev/full \
+             && echo FAIL: ignored write error
+         FAIL: ignored write error
+         $ emacs --batch --eval '(print (format "%20481d" 0))' > /dev/full \
+             && echo FAIL: ignored write error
+         FAIL: ignored write error
+       * emacs.c (Fkill_emacs): Also test ferror.  (Bug#9574)
+
+2011-09-23  Andreas Schwab  <schwab@linux-m68k.org>
+
+       * emacs.c (Fkill_emacs): In noninteractive mode exit
+       non-successfully if a write error occurred on stdout.  (Bug#9574)
+
+2011-09-21  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (pop_it): Allow it->object that is a cons cell to pass
+       the xassert test.
+
+       * dispextern.h (struct it): Update the comment documenting what
+       can it->OBJECT be.
+
+2011-09-20  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (set_cursor_from_row): If the row ends in a newline from
+       a display string, extend search for cursor position to end of row.
+       (find_row_edges): If the row ends in a newline from a display
+       string, increment its MATRIX_ROW_END_CHARPOS by one.  (Bug#9549)
+       Handle the case of a display string with multiple newlines.
+       (Fcurrent_bidi_paragraph_direction): Fix search for previous
+       non-empty line.  Fixes confusing cursor motion with arrow keys at
+       the beginning of a line that starts with whitespace.
+
+2011-09-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+       * lread.c (Fread_from_string): Document what FINAL-STRING-INDEX is
+       (bug#9493).
+
+2011-09-18  Chong Yidong  <cyd@stupidchicken.com>
+
+       * xfns.c (Fx_create_frame): Handle the bitmapIcon resource as
+       boolean (Bug#9154).
+
+2011-09-18  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (display_line): Record maximum and minimum buffer
+       positions even if no glyphs were produced (e.g., by a zero-width
+       stretch).  Fixes bug#9530 on a TTY.  Under word-wrap, don't record
+       buffer positions that will be removed from the glyph row because
+       they don't fit.
+       (produce_stretch_glyph): Fix a bug in :align-to on a TTY when the
+       column is beyond frame width: don't subtract 1 "pixel" when
+       computing width of the stretch.
+       (reseat_at_next_visible_line_start): Undo the change made on
+       2011-09-17 that saved paragraph information and restored it after
+       the call to `reseat'.  (Bug#9545)
+
+2011-09-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
+
+       * xdisp.c (expose_window): Save original value of phys_cursor_on_p
+       and turn window cursor on if cleared (Bug#9415).
+
+2011-09-18  Andreas Schwab  <schwab@linux-m68k.org>
+
+       * search.c (boyer_moore): Take unibyte characters from pattern
+       literally.  (Bug#9458)
+
+2011-09-18  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (reseat_at_next_visible_line_start): Fix last change.
+
+2011-09-18  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Fix minor problem found by static checking.
+       * xdisp.c (reseat_at_next_visible_line_start): Mark locals as
+       initialized, to pacify gcc -Wuninitialized.
+
+       * fileio.c: Report proper errno when syscall falls.
+       (Finsert_file_contents): Save and restore errno,
+       so that report_file_error outputs the correct diagnostic.
+       (Fwrite_region) [CLASH_DETECTION]: Likewise.
+
+2011-09-18  Eli Zaretskii  <eliz@gnu.org>
+
+       * .gdbinit (pgx): Fix references to fields of `struct glyph'.
+
+2011-09-17  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (produce_stretch_glyph): Another fix for changes made on
+       2011-08-30T17:32:44Z!eliz@gnu.org.  (Bug#9530)
+
+2011-09-17  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (reseat_at_next_visible_line_start): Keep information
+       about the current paragraph and restore it after the call to
+       reseat.
+
+       * bidi.c (MAX_PARAGRAPH_SEARCH): New macro.
+       (bidi_find_paragraph_start): Search back for paragraph beginning
+       at most MAX_PARAGRAPH_SEARCH lines; if not found, return BEGV_BYTE.
+       (bidi_move_to_visually_next): Only trigger paragraph-related
+       computations when the last character is a newline or at EOB, not
+       just any NEUTRAL_B.  (Bug#9470)
+
+       * xdisp.c (set_cursor_from_row): Don't invoke special treatment of
+       truncated lines if point is covered by a display string.  (Bug#9524)
+
+2011-09-16  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * xselect.c: Relax test for outgoing X longs (Bug#9498).
+       (cons_to_x_long): New function.
+       (lisp_data_to_selection_data): Use it.  Correct the test for
+       short-versus-long data; it was negated.  Break out of vector
+       loop, for efficiency, when a long datum is discovered.
+
+2011-09-16  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * eval.c (Fquote): Document its non-consing behavior (bug#9482).
+
+2011-09-16  Eli Zaretskii  <eliz@gnu.org>
+
+       * image.c (tiff_handler): Work around a bug in MinGW GCC 3.x (see
+       GCC PR/17406) by declaring this function with external scope.
+
+2011-09-15  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * editfns.c (Fformat): Fix bug in text-property fix (Bug#9514).
+       Don't mishandle (length (format "%%")) and (format "%4000s%%" "").
+
+2011-09-15  Andreas Schwab  <schwab@linux-m68k.org>
+
+       * editfns.c (Fformat): Correctly handle text properties on "%%".
+
+2011-09-15  Eli Zaretskii  <eliz@gnu.org>
+
+       * xterm.c (x_draw_composite_glyph_string_foreground):
+       * w32term.c (x_draw_composite_glyph_string_foreground):
+       * term.c (encode_terminal_code):
+       * composite.c (composition_update_it, get_composition_id):
+       * xdisp.c (get_next_display_element)
+       (fill_composite_glyph_string): Add comments about special meaning
+       of TAB characters in a composition.
+
 2011-09-15  Paul Eggert  <eggert@cs.ucla.edu>
 
        * editfns.c (Fformat): Fix off-by-1 bug for "%%b" (Bug#9514).
-       This occurs when processing a multibyte format, which can happen
-       when using 'eval'.  Problem reported by Wolfgang Jenker.
+       This occurs when processing a multibyte format.
+       Problem reported by Wolfgang Jenker.
 
 2011-09-15  Johan Bockgård  <bojohan@gnu.org>
 
        underline, overline, and strike-through.
        (ns_dumpglyphs_image, ns_dumpglyphs_stretch): Add call to
        ns_draw_text_decoration.  Change treatment of cursor drawing to
-       accomodate underlining, etc.
+       accommodate underlining, etc.
 
 2011-07-28  Eli Zaretskii  <eliz@gnu.org>