X-Git-Url: http://git.hcoop.net/bpt/emacs.git/blobdiff_plain/fbfb6dd4fd954890fe06ff567b3e14f61dc38380..c8fd3bd078119d43056137316ac16f2f2ccbd6fd:/src/ChangeLog diff --git a/src/ChangeLog b/src/ChangeLog index 97b727929d..9cef045c02 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,279 @@ +2011-10-08 Glenn Morris + + * callint.c (Fcall_interactively): Give a more explicit error for the + 'c' case with a non-character input. (Bug#8479) + +2011-10-08 Eli Zaretskii + + * xdisp.c (hscroll_window_tree): Support hscroll in right-to-left + lines. + (set_cursor_from_row): Fix cursor positioning in mixed L2R+R2L + lines that are hscrolled on the left. + + * dispnew.c (buffer_posn_from_coords): Account for a possible + presence of header-line. (Bug#4426) + +2011-10-07 Stefan Monnier + + * buffer.c (syms_of_buffer) : Don't + advertise functionality which we discourage or doesn't work. + +2011-10-07 Paul Eggert + + * alloc.c (GC_LISP_OBJECT_ALIGNMENT): Use offsetof, not __alignof__ + or sizeof. __alignof__ gives the wrong answer on Fedora x86-64 + with GCC 4.6.1 when configured with CC='gcc -m32' --with-wide-int; + this makes Emacs dump core during garbage collection on rare + occasions. sizeof is obviously inferior to offsetof here, so + stick with offsetof. + (GC_POINTER_ALIGNMENT): New macro. + (mark_memory): Omit 3rd (offset) arg; caller changed. + Don't assume EMACS_INT alignment is the same as pointer alignment. + +2011-10-03 Stefan Monnier + + * keyboard.c (read_key_sequence_remapped): New var. + (read_key_sequence): Compute remapping in the right buffer. + (command_loop_1): Use read_key_sequence's remapping directly. + +2011-10-02 Stefan Monnier + + * dired.c (file_name_completion): Don't expand file name. + (Ffile_name_completion, Ffile_name_all_completions): Expand file name + before checking file name handler. + + * minibuf.c (Finternal_complete_buffer): Only show internal buffers if + they've been requested explicitly (bug#9591). + +2011-10-01 Andreas Schwab + + * 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 + + * 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 + . + * 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 + + * 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 + + 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 + + * sysdep.c (snprintf) [!EOVERFLOW]: If EOVERFLOW is not defined, + use EDOM. + +2011-09-28 Eli Zaretskii + + * 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 + + * lread.c (Fread_from_string): Fix typo in docstring. + +2011-09-27 Eli Zaretskii + + * 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 when past + TO_CHARPOS if the bidi iterator is at base embedding level. + +2011-09-27 Andreas Schwab + + * lread.c (readevalloop): Use correct code for NBSP. + (read1): Likewise. (Bug#9608) + +2011-09-25 Michael Albinus + + * dbusbind.c (Fdbus_register_signal): When service is not + registered, use nil in Vdbus_registered_objects_table. (Bug#9581) + +2011-09-25 Glenn Morris + + * buffer.c (truncate-lines): Doc fix. + +2011-09-24 Chong Yidong + + * window.c (Fwindow_prev_buffers, Fset_window_prev_buffers) + (Fset_window_next_buffers): Doc fix. + +2011-09-24 Glenn Morris + + * minibuf.c (read_minibuf): Disable line truncation. (Bug#5715) + +2011-09-24 Paul Eggert + + 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 + + * dispnew.c (syms_of_display) : + Default value is now t. Doc fix. + + * indent.c (Fvertical_motion): Compute and apply the overshoot + logic when moving up, not only when moving down. Fix the + confusing name and values of the it_overshoot_expected variable; + logic changes 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 + + * 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 + + 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 + + * emacs.c (Fkill_emacs): In noninteractive mode exit + non-successfully if a write error occurred on stdout. (Bug#9574) + +2011-09-21 Eli Zaretskii + + * 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 + + * 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 + + * lread.c (Fread_from_string): Document what FINAL-STRING-INDEX is + (bug#9493). + +2011-09-18 Chong Yidong + + * xfns.c (Fx_create_frame): Handle the bitmapIcon resource as + boolean (Bug#9154). + +2011-09-18 Eli Zaretskii + + * 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 + + * 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 + + * search.c (boyer_moore): Take unibyte characters from pattern + literally. (Bug#9458) + +2011-09-18 Eli Zaretskii + + * xdisp.c (reseat_at_next_visible_line_start): Fix last change. + +2011-09-18 Paul Eggert + + 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 + + * .gdbinit (pgx): Fix references to fields of `struct glyph'. + 2011-09-17 Eli Zaretskii * xdisp.c (produce_stretch_glyph): Another fix for changes made on @@ -384,15 +660,15 @@ * term.c (tty_append_glyph): New function. (produce_stretch_glyph): Static function and its prototype deleted. - * dispextern.h (produce_stretch_glyph, tty_append_glyph): Add - prototypes. + * dispextern.h (produce_stretch_glyph, tty_append_glyph): + Add prototypes. 2011-08-29 Paul Eggert * image.c (parse_image_spec): Check for nonnegative, not for positive, when checking :margin (Bug#9390). (IMAGE_NON_NEGATIVE_INTEGER_VALUE_OR_PAIR): - Renamed from IMAGE_POSITIVE_INTEGER_VALUE_OR_PAIR, + Rename from IMAGE_POSITIVE_INTEGER_VALUE_OR_PAIR, so that the name doesn't mislead. All uses changed. 2011-08-28 Johan Bockgård @@ -594,8 +870,8 @@ (read_char_minibuf_menu_prompt, follow_key, read_key_sequence): Use ptrdiff_t, not int, to count maps. (read_char_minibuf_menu_prompt): Check for overflow in size - calculations. Don't update size until allocation succeeds. Redo - calculations to avoid overflow. + calculations. Don't update size until allocation succeeds. + Redo calculations to avoid overflow. * keyboard.h: Change prototypes to match the above. * keymap.c (cmm_size, current_minor_maps): Use ptrdiff_t, not int, @@ -764,7 +1040,7 @@ * indent.c (MULTIBYTE_BYTES_WIDTH): Use sanitize_char_width to avoid undefined and/or bad behavior with outlandish widths. - * character.h (sanitize_tab_width): Renamed from sanitize_width, + * character.h (sanitize_tab_width): Rename from sanitize_width, now that we have two such functions. All uses changed. (sanitize_char_width): New inline function. @@ -830,8 +1106,8 @@ (png_load, gif_load, svg_load_image): Prefer int to unsigned where either will do. (tiff_handler): New function, combining the cores of the - old tiff_error_handler and tiff_warning_handler. This - function is rewritten to use vsnprintf and thereby avoid + old tiff_error_handler and tiff_warning_handler. + This function is rewritten to use vsnprintf and thereby avoid stack buffer overflows. It uses only the features of vsnprintf that are common to both POSIX and native Microsoft. (tiff_error_handler, tiff_warning_handler): Use it. @@ -860,8 +1136,8 @@ `(space ...)', and specifies display in the text area, return 2 rather than 1. (try_cursor_movement): Check for the need to scroll more - accurately, and prefer exact match for point under bidi. Don't - advance `row' beyond the last row of the window. + accurately, and prefer exact match for point under bidi. + Don't advance `row' beyond the last row of the window. * dispextern.h (struct bidi_it): Rename the disp_prop_p member into disp_prop; all users changed.