From: Martin Rudalics Date: Sat, 21 May 2011 09:14:35 +0000 (+0200) Subject: Merge from trunk X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=709b69904276648ad0a7e363be3e7e0bc19fa963;p=emacs.git Merge from trunk --- 709b69904276648ad0a7e363be3e7e0bc19fa963 diff --cc doc/lispref/ChangeLog index 28d46666049,7d1ce7bff80..57964f811ad --- a/doc/lispref/ChangeLog +++ b/doc/lispref/ChangeLog @@@ -1,10 -1,28 +1,35 @@@ + 2011-05-19 Glenn Morris + + * lists.texi (Sets And Lists): Mention cl provides union etc. + + 2011-05-19 Nix + + * windows.texi (Displaying Buffers): pop-to-buffer is not a command. + + * text.texi (Parsing HTML): Update for function name changes. + + * syntax.texi (Syntax Flags): Small fix. + + * keymaps.texi (Active Keymaps): Typo fix. + (Changing Key Bindings): Grammar fix. + + * frames.texi (Minibuffers and Frames): Grammar fix. + (Window System Selections): x-select-enable-clipboard now defaults to t. + + * customize.texi (Common Keywords): + * display.texi (Abstract Display): + * modes.texi (Auto-Indentation): + * nonascii.texi (Converting Representations): Typo fixes. + + * control.texi (Examples of Catch): Call it "goto" not "go to". + +2011-05-17 Martin Rudalics + + * windows.texi (Basic Windows): Remove description of + window-internal-p. + (Splitting Windows): New nomenclature for window splitting + commands. + 2011-05-14 Eli Zaretskii * nonascii.texi (Character Properties): Fix inconsistencies with diff --cc src/ChangeLog index e4a537a22d1,bcc79800aaf..4aef77b05f7 --- a/src/ChangeLog +++ b/src/ChangeLog @@@ -1,24 -1,162 +1,183 @@@ + 2011-05-21 YAMAMOTO Mitsuharu + + * dispnew.c (scrolling_window): Don't exclude the case that the + last enabled row in the desired matrix touches the bottom boundary. + + 2011-05-21 Glenn Morris + + * Makefile.in ($(etc)/DOC): Make second command line even shorter. + (SOME_MACHINE_OBJECTS): Replace FONT_OBJ by its maximal expansion, + and add some more files. + + 2011-05-20 Eli Zaretskii + + * callproc.c (Fcall_process) [MSDOS]: Fix arguments to + report_file_error introduced by the change from 2011-05-07. + + 2011-05-20 Paul Eggert + + * systime.h (Time): Define only if emacs is defined. + This is to allow ../lib-src/profile.c to be compiled on FreeBSD, + where the include path doesn't have X11/X.h by default. See + . + + 2011-05-20 Kenichi Handa + + * composite.c (find_automatic_composition): Fix previous change. + + 2011-05-20 Glenn Morris + + * lisp.mk: New file, split from Makefile.in. + * Makefile.in (lisp): Move to separate file, inserted by @lisp_frag@. + (shortlisp): Remove. + ($(etc)/DOC): Edit lisp.mk rather than using $shortlisp. + + 2011-05-19 Glenn Morris + + * Makefile.in (MSDOS_SUPPORT_REAL, MSDOS_SUPPORT, NS_SUPPORT) + (REAL_MOUSE_SUPPORT, GPM_MOUSE_SUPPORT, MOUSE_SUPPORT, TOOLTIP_SUPPORT) + (BASE_WINDOW_SUPPORT, X_WINDOW_SUPPORT, WINDOW_SUPPORT): Remove. + (lisp): Set the order to that of loadup.el. + (shortlisp): Make it a copy of $lisp. + (SOME_MACHINE_LISP): Remove. + ($(etc)/DOC): Depend just on $lisp, not $SOME_MACHINE_LISP too. + Use just $shortlisp, not $SOME_MACHINE_LISP too. + + 2011-05-18 Kenichi Handa + + * composite.c (CHAR_COMPOSABLE_P): Add more check for efficiency. + (BACKWARD_CHAR): Wrap the arg STOP by parenthesis. + (find_automatic_composition): Mostly rewrite for efficiency. + + 2011-05-18 Juanma Barranquero + + * makefile.w32-in: Update dependencies. + + 2011-05-18 Christoph Scholtes + + * menu.c: Include limits.h (fixes the MS-Windows build broken by + revision 104625). + + 2011-05-18 Paul Eggert + + Fix some integer overflow issues, such as string length overflow. + + * insdel.c (count_size_as_multibyte): Check for string overflow. + + * character.c (lisp_string_width): Check for string overflow. + Use EMACS_INT, not int, for string indexes and lengths; in + particular, 2nd arg is now EMACS_INT, not int. Do not crash if + the resulting string length overflows an EMACS_INT; instead, + report a string overflow if no precision given. When checking for + precision exhaustion, use a check that cannot possibly have + integer overflow. (Bug#8675) + * character.h (lisp_string_width): Adjust to new signature. + + * alloc.c (string_overflow): New function. + (Fmake_string): Use it. This doesn't change behavior, but saves + a few bytes and will simplify future changes. + * character.c (string_escape_byte8): Likewise. + * lisp.h (string_overflow): New decl. + + Fixups, following up to the user-interface timestamp change. + * nsterm.m (last_mouse_movement_time, ns_mouse_position): Use Time + for UI timestamps, instead of unsigned long. + * msdos.c (mouse_get_pos): Likewise. + * w32inevt.c (movement_time, w32_console_mouse_position): Likewise. + * w32gui.h (Time): Define by including "systime.h" rather than by + declaring it ourselves. (Bug#8664) + + * dispextern.h (struct image): Don't assume time_t <= unsigned long. + * image.c (clear_image_cache): Likewise. + + * term.c (term_mouse_position): Don't assume time_t wraparound. + + Be more systematic about user-interface timestamps. + Before, the code sometimes used 'Time', sometimes 'unsigned long', + and sometimes 'EMACS_UINT', to represent these timestamps. This + change causes it to use 'Time' uniformly, as that's what X uses. + This makes the code easier to follow, and makes it easier to catch + integer overflow bugs such as Bug#8664. + * frame.c (Fmouse_position, Fmouse_pixel_position): + Use Time, not unsigned long, for user-interface timestamps. + * keyboard.c (last_event_timestamp, kbd_buffer_get_event): Likewise. + (button_down_time, make_lispy_position, make_lispy_movement): Likewise. + * keyboard.h (last_event_timestamp): Likewise. + * menu.c (Fx_popup_menu) [!HAVE_X_WINDOWS]: Likewise. + * menu.h (xmenu_show): Likewise. + * term.c (term_mouse_position): Likewise. + * termhooks.h (struct input_event.timestamp): Likewise. + (struct terminal.mouse_position_hook): Likewise. + * xmenu.c (create_and_show_popup_menu, xmenu_show): Likewise. + * xterm.c (XTmouse_position, x_scroll_bar_report_motion): Likewise. + * systime.h (Time): New decl. Pull it in from if + HAVE_X_WINDOWS, otherwise define it as unsigned long, which is + what it was before. + * menu.h, termhooks.h: Include "systime.h", for Time. + + * keyboard.c (make_lispy_event): Fix problem in integer overflow. + Don't assume that the difference between two unsigned long values + can fit into an integer. At this point, we know button_down_time + <= event->timestamp, so the difference must be nonnegative, so + there's no need to cast the result if double-click-time is + nonnegative, as it should be; check that it's nonnegative, just in + case. This bug is triggered when events are more than 2**31 ms + apart (about 25 days). (Bug#8664) + + * xselect.c (last_event_timestamp): Remove duplicate decl. + (x_own_selection): Remove needless cast to unsigned long. + + * xmenu.c (set_frame_menubar): Use int, not EMACS_UINT, for indexes + that always fit in int. Use a sentinel instead of a counter, to + avoid a temp and to allay GCC's concerns about possible int overflow. + * frame.h (struct frame): Use int for menu_bar_items_used + instead of EMACS_INT, since it always fits in int. + + * menu.c (grow_menu_items): Check for int overflow. + + * xmenu.c (set_frame_menubar): Don't mishandle vectors with no nils. + + * xterm.c: Use EMACS_INT for Emacs modifiers, and int for X modifiers. + Before, the code was not consistent. These values cannot exceed + 2**31 - 1 so there's no need to make them unsigned. + (x_x_to_emacs_modifiers): Accept int and return EMACS_INT. + (x_emacs_to_x_modifiers): Accept EMACS_INT and return int. + (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Reject non-integers + as modifiers. + * xterm.h (x_x_to_emacs_modifiers): Adjust to signature change. + + * lisp.h (XINT) [USE_LISP_UNION_TYPE]: Cast to EMACS_INT. + (XUINT) [USE_LISP_UNION_TYPE]: Cast to EMACS_UINT. + Otherwise, GCC 4.6.0 warns about printf (pI, XINT (...)), + presumably because the widths might not match. + + * window.c (size_window): Avoid needless test at loop start. + + 2011-05-18 Courtney Bane (tiny change) + + * term.c (Fresume_tty): Restore hooks before reinitializing (bug#8687). + +2011-05-16 Martin Rudalics + + * frame.c (make_frame): Use other_buffer_safely. + (store_frame_param): Just store val in the buffer_list and + buried_buffer_list slots. + + * window.c: Remove constant Qset. + (Fwindow_new_total_size): Rename to Fwindow_new_total_size. + (Fwindow_new_normal_size): Rename to Fwindow_new_normal. + (replace_window, make_window): Use floats for normal_lines and + normal_cols. + (run_window_configuration_change_hook): Record current buffer + first and selected frame afterwards to assure that the current + buffer is correctly reestablished. Rename count1 to count. + (Fresize_window_total): Rename to Fset_window_new_total. + (Fresize_window_normal): Rename to Fset_window_new_normal. + (resize_window_apply): Remove the Qset related branches + (Fsplit_window_internal): Rename horizontal argument to side. + New optional argument normal_size. Simplify assignment of normal + sizes which is mostly done in split-window itself now. + 2011-05-12 Drew Adams * textprop.c (Fprevious_single_char_property_change): Doc fix (bug#8655).