* xselect.c (x_catch_errors_unwind): New function.
[bpt/emacs.git] / src / ChangeLog
index 9829d71..faba78e 100644 (file)
@@ -1,8 +1,497 @@
+2006-02-28  Chong Yidong  <cyd@stupidchicken.com>
+
+       * xselect.c (x_catch_errors_unwind): New function.
+       (x_reply_selection_request): Put x_uncatch_errors in an unwind.
+       (Fx_get_atom_name): Call x_uncatch_errors earlier.
+
+       * window.c (Qscroll_up, Qscroll_down): New syms.
+       (window_scroll_pixel_based): Make preserve_y static to avoid
+       getting point stuck when scrolling 1 line.
+
+2006-02-26  Chong Yidong  <cyd@stupidchicken.com>
+
+       * xterm.h, xterm.c (x_uncatch_errors): Delete unneccessary
+       argument.
+
+       * xterm.c: (x_load_font, x_term_init, XTmouse_position)
+       (handle_one_xevent, x_connection_closed, x_list_fonts): No arg for
+       x_uncatch_errors.
+
+       * xselect.c (x_own_selection, x_decline_selection_request)
+       (x_reply_selection_request, x_get_foreign_selection)
+       (Fx_get_atom_name, Fx_send_client_event): Likewise.
+
+       * xfns.c (x_real_positions, x_set_mouse_color, Fx_focus_frame):
+       Likewise.
+
+2006-02-26  Luc Teirlinck  <teirllm@auburn.edu>
+
+       * lread.c: Declare Vload_file_rep_suffixes instead of
+       deleted variable default_suffixes.
+       (Fget_load_suffixes): New function.
+       (Fload): Use Fget_load_suffixes and Vload_file_rep_suffixes.
+       No longer use deleted variable default_suffixes.  Update docstring.
+       (syms_of_lread): defsubr Sget_load_suffixes.
+       Expand `load-suffixes' docstring.
+       Delete default_suffixes and DEFVAR_LISP the new variable
+       `load-file-rep-suffixes'.
+
+       * w32.c (check_windows_init_file): Use Fget_load_suffixes instead
+       of Vload_suffixes.
+
+       * lisp.h: EXFUN Fget_load_suffixes.
+       Extern Vload_file_rep_suffixes.
+
+       * eval.c (specpdl_ptr): Remove volatile qualifier for consistency
+       with lisp.h.
+
+2006-02-26  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * lisp.h (struct specbinding, specpdl_ptr): Remove the volatile
+       qualifier which was trying to avoid the bug that was fixed by
+       yesterday's changes to xterm.c.
+
+2006-02-25  Chong Yidong  <cyd@stupidchicken.com>
+
+       * xterm.h (x_catch_errors) Return value changed to void.
+       (x_uncatch_errors): Delete unused count argument.
+
+       * xterm.c (x_catch_errors): Don't use record_unwind_protect, since
+       it can be called in a signal handler.
+       (x_catch_errors_unwind): Function deleted.
+       (x_uncatch_errors): Deallocate last x_error_message_stack struct.
+       (x_check_errors): Call x_uncatch_errors before signalling error.
+
+       (x_load_font, x_term_init, XTmouse_position, handle_one_xevent)
+       (x_connection_closed, x_list_fonts): Use new versions of
+       x_catch_errors and x_uncatch_errors.
+
+       * xselect.c (x_own_selection, x_decline_selection_request)
+       (x_reply_selection_request, x_get_foreign_selection)
+       (Fx_get_atom_name, Fx_send_client_event): Likewise.
+
+       * xfns.c (x_real_positions, x_set_mouse_color, Fx_focus_frame):
+       Likewise.
+
+       * eval.c (record_unwind_protect): Add an assertion.
+
+2006-02-25  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * process.c (Fmake_network_process): Init the process's mark.
+
+2006-02-25  Kim F. Storm  <storm@cua.dk>
+
+       * buffer.c (modify_overlay): Force redisplay if we modify an
+       overlay at the end of the buffer.
+
+2006-02-24  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * gtkutil.c (xg_get_image_for_pixmap): If x_find_image_file returns
+       nil the image file has been removed, in that case use the (cached)
+       pixmap.
+
+2006-02-24  Kenichi Handa  <handa@m17n.org>
+
+       * fileio.c (Finsert_file_contents): When a text is replaced
+       partially, be sure to set point before the inserted characters.
+
+2006-02-23  Zhang Wei  <id.brep@gmail.com>  (tiny change)
+
+       * xfns.c (Fx_file_dialog): Return a decoded file name.
+
+2006-02-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
+
+       * dispnew.c (update_text_area): Avoid needless redraw of rightmost
+       glyph whose face is extended to the text area end.
+
+       * macterm.c (x_set_toolkit_scroll_bar_thumb): Don't set control
+       values if control is not visible or values are not changed.
+
+2006-02-22  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * window.c (Fwindow_list): Check `window' before doing XWINDOW.
+       The default `window' should not be "on a different frame".
+
+2006-02-22  Kim F. Storm  <storm@cua.dk>
+
+       * indent.c (Fvertical_motion): Only try to move back if we can.
+
+2006-02-22  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
+
+       * macgui.h (struct _XGC) [!MAC_OSX || !USE_ATSUI]: New member
+       n_clip_rects.
+
+       * macmenu.c (digest_single_submenu): Apply 2006-02-19 change for
+       xmenu.c.
+
+       * macterm.c (GC_CLIP_REGION): Remove macro.
+       (mac_begin_clip, mac_end_clip): Take arg GC instead of REGION.
+       All uses changed.  Don't do clipping if n_clip_rects is zero.
+       (mac_set_clip_rectangles): Use xassert instead of abort.
+       Set n_clip_rects.  Don't make clip_region empty when number of
+       clipping rectangles is zero.
+       (mac_reset_clip_rectangles): Set n_clip_rects directly instead of
+       calling mac_set_clip_rectangles.
+       (x_set_toolkit_scroll_bar_thumb): Temporarily hide scroll bar to
+       avoid multiple redraws.
+
+2006-02-22  Kim F. Storm  <storm@cua.dk>
+
+       * fringe.c (draw_fringe_bitmap): Fix overlay-arrow display.
+
+2006-02-21  Kim F. Storm  <storm@cua.dk>
+
+       * fringe.c (syms_of_fringe) <fringe-bitmaps>: Doc fix.
+
+2006-02-21  Zhang Wei <brep@newsmth.org>
+
+       * xfns.c (Fx_file_dialog, Motif and GTK): DECODE_FILE before
+       returning it.
+
+2006-02-21  Giorgos Keramidas  <keramida@ceid.upatras.gr>  (tiny change)
+
+       * fringe.c (horizontal_bar_bits): Rename from `horisontal_bar_bits'.
+       (standard_bitmaps): Use it.
+
+2006-02-21  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
+
+       * macterm.c (mac_draw_string_common): Remove arg MODE.  New arg
+       BG_WIDTH.  All uses changed.  Draw background if BG_WIDTH is not zero.
+       (mac_draw_image_string, mac_draw_image_string_16): New arg BG_WIDTH.
+       [USE_CG_TEXT_DRAWING] (mac_draw_image_string_cg): Rename from
+       mac_draw_string_cg.  New arg BG_WIDTH.  All uses changed.
+       Draw background if BG_WIDTH is not zero.  Use float constants as
+       divisors instead of double.  Use alloca instead of xmalloc/xfree.
+       (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
+       [!MAC_OS8 || USE_ATSUI]: Background may be drawn using
+       mac_draw_image_string* functions.
+       (XLoadQueryFont) [MAC_OS8 && USE_ATSUI]: Don't adjust heights of
+       some fonts when srcCopy text transfer mode might be used.
+       (mac_begin_clip, mac_end_clip): Check if region is empty.
+       (mac_set_clip_rectangles): When resetting clip region, make it
+       empty instead of disposing of it.
+
+2006-02-20  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * keymap.c (store_in_keymap): Change `def' arg to not be `register'.
+       Seems to trigger a bug in gcc-amd64 4.0.2 20051125 (Red Hat 4.0.2-8).
+
+2006-02-20  Kim F. Storm  <storm@cua.dk>
+
+       * Makefile.in: Add fringe.elc to WINDOW_SUPPORT.
+
+       * buffer.h (struct buffer): New members fringe_indicator_alist and
+       fringe_cursor_alist.
+
+       * buffer.c (init_buffer_once): Set dummy default values for
+       fringe-indicator-alist and fringe-cursor-alist.  The proper
+       default values are set by pre-loading fringe.el.
+       (syms_of_buffer): defvar_per_buffer new fringe-indicator-alist and
+       fringe-cursor-alist buffer-local variables and defvar_lisp_nopro
+       corresponding default- variables.
+
+       * fringe.c (enum fringe_bitmap_type): Remove.  Change all uses
+       to use `int'.
+       (NO_FRINGE_BITMAP, UNDEF_FRINGE_BITMAP, MAX_STANDARD_FRINGE_BITMAPS):
+       Define explicitly.
+       (Qtruncation, Qcontinuation, Qempty_line, Qtop_bottom)
+       (Qhollow_small): New variables.
+       (syms_of_fringe): Intern and staticpro them.
+       (question_mark_bits): Rename from unknown_bits.
+       (left_curly_arrow_bits): Rename from continuation_bits.
+       (right_curly_arrow_bits): Rename from continued_bits.
+       (left_triangle_bits): Rename from ov_bits.
+       (right_triangle_bits): Add.
+       (filled_rectangle_bits): Rename from filled_box_cursor_bits.
+       (hollow_rectangle_bits): Rename from hollow_box_cursor_bits.
+       (filled_square_bits): Add.
+       (vertical_bar_bits): Rename from bar_cursor_bits.
+       (horizontal_bar_bits): Rename from hbar_cursor_bits.
+       (empty_line_bits): Rename from zv_bits.
+       (standard_bitmaps): Update to use new names.
+       (draw_fringe_bitmap_1): Make static.
+       (get_logical_cursor_bitmap, get_logical_fringe_bitmap): New functions
+       to map from logical cursors and indicators to physical bitmaps.
+       (draw_fringe_bitmap): Resolve fringe cursor and overlay-arrow
+       bitmaps using symbol names instead of bitmap numbers.
+       (update_window_fringes): Use logical indicator symbol names
+       instead of bitmap numbers for logical.  Add bitmap cache.
+       (LEFT_FRINGE, RIGHT_FRINGE): New helper macros.
+
+2006-02-20  Chong Yidong  <cyd@stupidchicken.com>
+
+       * regex.c: Revert 2006-02-19 change.
+       (xmalloc, xrealloc): Define these when not linked to Emacs.
+       Redefine malloc -> xmalloc, realloc -> xrealloc as in Emacs case.
+
+2006-02-19  Luc Teirlinck  <teirllm@auburn.edu>
+
+       * regex.c (extend_range_table_work_area): Fix typo.
+
+2006-02-19  Richard M. Stallman  <rms@gnu.org>
+
+       * xterm.c (x_catch_errors): Use xmalloc.
+
+       * regex.c (extend_range_table_work_area): Call xmalloc and xrealloc.
+       (regex_compile): Likewise.
+       (regcomp): Use xmalloc.
+
+       * gtkutil.c (malloc_widget_value): Use xmalloc.
+
+       * vm-limit.c [HAVE_GETRLIMIT]: Include sys/resource.h.
+       (check_memory_limits) [HAVE_GETRLIMIT]: Use getrlimit.
+
+       * xmenu.c (digest_single_submenu): When pane_string is empty,
+       do initialize save_wv.
+
+2006-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
+
+       * xdisp.c (update_menu_bar) [MAC_OS]: Don't set
+       w->update_mode_line if arg F is not the selected frame.
+
+       * macmenu.c (popup_activated_flag, submenu_id)
+       (next_menubar_widget_id): Remove variables.
+       (initialize_frame_menubar): Remove function.
+       (pop_down_menu, mac_menu_show): Simplify save value.
+       (dispose_menus): New function.
+       (pop_down_menu, fill_menubar): Use it.
+       (fill_submenu): Remove function.  All uses changed to fill_menu.
+       (add_menu_item): Remove args SUBMENU and FORCE_DISABLE.  New arg
+       POS.  Don't call SetMenuItemHierarchicalID here.
+       (fill_menu): Add arg SUBMENU_ID.  Return submenu_id that is to be
+       used next.  Call SetMenuItemHierarchicalID here.
+       (fill_menubar): Add arg DEEP_P.  All uses changed.  Clean up menu
+       objects if needed.  Reuse existing menu bar titles if possible.
+       (set_frame_menubar): Don't clean up menu objects here.
+
+2006-02-18  Chong Yidong  <cyd@stupidchicken.com>
+
+       * window.c (window_min_size_1): Ensure room for the scroll bar and
+       fringes.
+
+2006-02-17  Romain Francoise  <romain@orebokech.com>
+
+       * puresize.h (BASE_PURESIZE): Increment to 1200000.
+
+2006-02-17  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * alloc.c (Fmake_symbol): Comment-out left-over assert from before the
+       addition of the BLOCK_INPUTs.
+
+2006-02-17  Juanma Barranquero  <lekktu@gmail.com>
+
+       * window.c (Fset_window_scroll_bars): Doc fix.
+
+2006-02-17  Kenichi Handa  <handa@m17n.org>
+
+       * xdisp.c (display_mode_element): Call display_string with correct
+       PREC arg (which must be a number of characters, not column width).
+
+2006-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
+
+       * frame.c (x_get_arg): Clear out PARAM in ALIST also on Mac.
+
+       * macfns.c (x_set_menu_bar_lines): Menu bar is always shown on Mac.
+
+       * macmenu.c (set_frame_menubar): Don't call DrawMenuBar.
+
+2006-02-14  Richard M. Stallman  <rms@gnu.org>
+
+       * frame.c (x_get_arg): Clear out all occurrences of PARAM in ALIST.
+
+       * m/ibms390x.h: New file.
+
+2006-02-14  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * gtkutil.c (xg_tool_bar_detach_callback): Set show-arrow to the
+       value of x-gtk-whole-detached-tool-bar.
+       (xg_tool_bar_attach_callback): Set show-arrow to TRUE.
+
+       * xfns.c (syms_of_xfns): New variable: x-gtk-whole-detached-tool-bar.
+
+2006-02-14  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * xterm.c (x_x_to_emacs_modifiers): Make non-static.
+
+       * xterm.h: Declare x_x_to_emacs_modifiers.
+
+       * gtkutil.c (xg_tool_bar_button_cb): New function.
+       (xg_tool_bar_callback): Call x_x_to_emacs_modifiers to
+       store modifiers in event.
+       (update_frame_tool_bar): Connect button-release-event to
+       xg_tool_bar_button_cb.
+
+2006-02-13  Richard M. Stallman  <rms@gnu.org>
+
+       * .gdbinit (xwindow): Update the code to show the window box.
+
+2006-02-13  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * xterm.c (note_mouse_movement): Check for NULL FRAME_X_OUTPUT (frame).
+
+2006-02-12  Richard M. Stallman  <rms@gnu.org>
+
+       * cmds.c (internal_self_insert): Handle weird auto-fill-function.
+
+2006-02-11  Eli Zaretskii  <eliz@gnu.org>
+
+       * keyboard.c (Venable_disabled_menus_and_buttons): New variable.
+       (syms_of_keyboard): DEVFAR_LISP and initialize it.
+       (parse_tool_bar_item, parse_menu_item): If that variable is
+       non-nil, don't disable menu items and tool-bar buttons.
+
+2006-02-11  Juanma Barranquero  <lekktu@gmail.com>
+
+       * doc.c (Fsubstitute_command_keys): Doc fix.
+
+2006-02-10  Thien-Thi Nguyen  <ttn@gnu.org>
+
+       * data.c (Findirect_function): Rewrite docstring.
+       Fix omission bug: Declare new arg NOERROR.
+
+2006-02-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
+
+       * macfns.c (x_set_mouse_color): Don't call rif->define_frame_cursor
+       if window_desc is not set yet.
+       (Fx_create_frame): Remove variable x_frame_name.  Apply 2005-12-07
+       and 2006-01-26 changes for xfns.c.  Call x_iconify_frame if frame
+       parameter `visibility' is `icon'.
+       (Fx_create_frame, x_create_tip_frame): Use "fontset-standard"
+       instead of "fontset-mac".
+       (Fx_focus_frame): New defun.
+       (syms_of_macfns): Defsubr it.
+
+       * macterm.c (mac_define_frame_cursor): Don't change pointer shape
+       for unfocused frame.
+       (x_raise_frame): Call BringToFront instead of SelectWindow.
+       (x_lower_frame): Use NULL instead of nil.
+       (x_make_frame_visible): Don't call SelectWindow.
+       (XTread_socket): Increment handling_signal at the start, decrement
+       it at the end.
+       [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): Use
+       CFPreferencesGetAppIntegerValue instead of Fmac_get_preference.
+
+2006-02-10  Kim F. Storm  <storm@cua.dk>
+
+       * data.c (Findirect_function): Add NOERROR arg.  All callers changed
+       to pass Qnil for NOERROR.
+
+       * keymap.c (current_minor_maps_error): Remove.
+       (current_minor_maps): Pass Qt for NOERROR to Findirect_function
+       instead of using internal_condition_case_1+current_minor_maps_error.
+
+2006-02-09  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * xterm.c (handle_one_xevent): Must note mouse movement even for nil
+       frames for GTK, in that case it is the tool bar.  This is so that
+       highlighted text get reset properly.
+
+2006-02-09  Juanma Barranquero  <lekktu@gmail.com>
+
+       * alloc.c (Fmake_bool_vector, Fpurecopy): Doc fixes.
+
+2006-02-08  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * window.c (adjust_window_trailing_edge): Check that shrinking
+       does not set a window to size zero or less.
+
+2006-02-08  Miles Bader  <miles@gnu.org>
+
+       * editfns.c (Fconstrain_to_field): Use Fget_char_property instead
+       of Fget_text_property (other field functions work with overlays as
+       well as text-properties).
+
+2006-02-07  Kenichi Handa  <handa@m17n.org>
+
+       * dispextern.h (unibyte_display_via_language_environment): Extern it.
+
+       * xterm.h (unibyte_display_via_language_environment):
+       * w32term.h (unibyte_display_via_language_environment):
+       * macterm.h (unibyte_display_via_language_environment): Delete extern.
+
+2006-02-07  Kenichi Handa  <handa@m17n.org>
+
+       * term.c (append_glyph): Refer to it->char_to_display instead of it->c.
+       (produce_glyphs): Set the character to print in
+       it->char_to_display.  Handle unibyte-display-via-language-environment.
+       (produce_stretch_glyph): Set character to print in it->char_to_display.
+
+2006-02-06  Kenichi Handa  <handa@m17n.org>
+
+       * lread.c (openp): Initialize encoded_fn before GCPRO it.
+
+2006-02-05  Ken Raeburn  <raeburn@raeburn.org>
+
+       * editfns.c (Fconstrain_to_field): Fix int/Lisp_Object mixup.
+
+       * lisp.h (XPNTR) [!NO_UNION_TYPE && !HAVE_SHM && !DATA_SEG_BITS]:
+       Cast bitfield value to EMACS_INT, to suppress gcc warning.
+
+       * xrdb.c (malloc, realloc, free) [emacs]: Undefine macros before
+       defining.
+
+2006-02-03  Kim F. Storm  <storm@cua.dk>
+
+       * xdisp.c: Cache last merged escape glyph face.
+       (last_escape_glyph_frame, last_escape_glyph_face_id)
+       (last_escape_glyph_merged_face_id): New variables.
+       (get_next_display_element): Use/update them.
+       (redisplay_internal): Reset them before redisplay.
+
+       * xdisp.c (set_iterator_to_next): Optimize 2004-12-13 fix.
+       Only recheck faces after displaying ellipsis.
+
+2006-02-02  Kenichi Handa  <handa@m17n.org>
+
+       * coding.c (decode_composition_emacs_mule): Fix handling of
+       incorrect format data.
+
+2006-01-31  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * gtkutil.c (update_frame_tool_bar): Use new tool bar functions
+       (gtk_toolbar_insert) so we can have tool bars of different sizes.
+
+2006-01-30  Luc Teirlinck  <teirllm@auburn.edu>
+
+       * data.c (Flistp): Doc fix.
+
+2006-01-30  Juanma Barranquero  <lekktu@gmail.com>
+
+       * window.c (Fother_window, Fwindow_vscroll, Fset_window_vscroll):
+       Fix typos in docstrings.
+
+2006-01-28  Luc Teirlinck  <teirllm@auburn.edu>
+
+       * data.c (Fcar, Fcdr): Add links to Elisp manual to the docstrings.
+
+2006-01-27  Chong Yidong  <cyd@stupidchicken.com>
+
+       * alloc.c (make_interval, allocate_string)
+       (allocate_string_data, make_float, Fcons, allocate_vectorlike)
+       (Fmake_symbol, allocate_misc): Use BLOCK_INPUT when accessing
+       global variables.
+
+2006-01-27  Eli Zaretskii  <eliz@gnu.org>
+
+       * dired.c (DIRENTRY_NONEMPTY) [__CYGWIN__]: Don't use d_ino; use
+       the MSDOS definition.
+
+2006-01-26  Richard M. Stallman  <rms@gnu.org>
+
+       * alloc.c (check_pure_size): Make overflow message an "error message".
+
+       * keymap.c (Fmap_keymap): Doc fix.
+
+       * xfns.c (Fx_create_frame): Put all specified parms into f->param_alist
+       unless they were cleared out.
+
+       * frame.c (x_get_arg): "Clear out" the parm in ALIST if found there.
+
 2006-01-26  L\e$,1 q\e(Brentey K\e,Aa\e(Broly  <lorentey@elte.hu>
 
-       * editfns.c (Fconstrain_to_field): Use get_pos_property, not
-       Fget_char_property.  Fix bogus comment.
-       (Fline_beginning_position, Fline_end_position): Clarify 
+       * editfns.c (Fconstrain_to_field): Fix behaviour on field boundaries.
+       (find_field): Set before_field to after_field when pos is at BEGV.
+       (Fline_beginning_position, Fline_end_position): Clarify
        confusing doc string.
 
        * cmds.c (Fbeginning_of_line, Fend_of_line): Clarify confusing doc
@@ -22342,7 +22831,8 @@ See ChangeLog.9 for earlier changes.
 ;; coding: iso-2022-7bit
 ;; End:
 
-    Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+    Copyright (C) 2001, 2002, 2003, 2004, 2005,
+       2006 Free Software Foundation, Inc.
   Copying and distribution of this file, with or without modification,
   are permitted provided the copyright notice and this notice are preserved.