*** empty log message ***
[bpt/emacs.git] / src / ChangeLog
index 77d4d11..b3d6bbe 100644 (file)
@@ -1,5 +1,467 @@
+2000-10-12  Kenichi Handa  <handa@etl.go.jp>
+
+       * regex.c (regex_compile): Change the way of handling a range from
+       unibyte char to multibyte char.
+
+       * syntax.c (skip_chars): Change the way of handling a range from
+       unibyte char to multibyte char.
+
+       * process.c (read_process_output): Cancel previous change.
+
+2000-10-11  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * search.c (Fsearch_backward, Fsearch_forward): Doc fix.
+
+       * charset.c (Ffind_charset_string): Doc fix.
+       (Ffind_charset_region): Doc fix.
+
+2000-10-11  Kenichi Handa  <handa@mule.m17n.org>
+
+       * process.c (read_process_output): Fix previous change.  Adjust
+       multibyteness of text to insert in a buffer by
+       string_make_unibyte/multibyte instead of
+       Fstring_as_unibyte/multibyte.
+
+2000-10-10  Andreas Schwab  <schwab@suse.de>
+
+       * alloc.c (mark_object): Remove all workarounds installed on
+       1993-08-08.
+
+2000-10-10  Kenichi Handa  <handa@etl.go.jp>
+
+       * fns.c (READ_QUADRUPLET_BYTE): Set *NCHARS_RETURN before
+       returning.
+       (base64_encode_1): Make it work for a text of multibyte form.
+       (Fbase64_decode_region): Allocate sufficient memory for multibyte
+       case.  Don't call str_to_multibyte because base64_decode_1
+       produces correct multibyte form for eight-bit codes.
+       (Fbase64_decode_string): Adjusted for the change of
+       base64_decode_1.
+       (base64_decode_1): New args MULTIBYTE and NCHARS_RETURN.  If
+       MULTIBYTE is nonzero, produce correct multibyte form for eight-bit
+       codes.
+
+       * charset.h (CHAR_STRING): Optimized for single byte characters.
+
+2000-10-09  Andreas Schwab  <schwab@suse.de>
+
+       * process.c (Fopen_network_stream) [HAVE_GETADDRINFO]: Reset S to
+       -1 after socket is closed, to fall through to error processing.
+
+2000-10-09  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * msdos.c (IT_set_frame_parameters): Don't initialize Lisp_Object
+       variables.  If ALIST includes foreground-color or
+       background-color, change also the colors of the default face for
+       this frame.
+
+2000-10-08  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * msdos.c (top-level) <Qbackground_color, Qforeground_color>: Make
+       them extern (they are defined on xfaces.c).
+       (syms_of_msdos): Don't intern and don't staticpro
+       Qbackground_color and Qforeground_color.
+
+2000-10-07  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * frame.c (Fframe_parameter): For non-windowed frames, if
+       f->param_alist says foreground or background color is unspecified,
+       call tty_color_name to return the color name computed from the
+       frame's current colors.
+
+2000-10-06  Dave Love  <fx@gnu.org>
+
+       * terminfo.c (ospeed): Don't declare.
+
+       * sysdep.c: Don't include string.h.
+       (h_errno): Declare conditional also on TRY_AGAIN.
+
+       * charset.c (Ffind_charset_string): Doc fix.
+
+       * fns.c (Fbase64_encode_region, Fbase64_encode_string) 
+       (Fbase64_decode_region, Fbase64_decode_string): More explicit
+       error messages.
+
+2000-10-05  Dave Love  <fx@gnu.org>
+
+       * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Check for tool-bar
+       position like menu-bar.
+
+2000-10-05  Gerd Moellmann  <gerd@gnu.org>
+
+       * keyboard.c (Frecursive_edit): Make sure redisplay can happen.
+
+       * xdisp.c (handle_single_display_prop): Use safe_call1.
+       (safe_call): Renamed from call_function.
+       (safe_call1): New function.
+       (handle_fontified_prop): Use safe_call1 instead of call1.
+       (safe_eval): Renamed from eval_form.
+       (safe_eval_handler): Renamed from eval_handler.
+       (handle_single_display_prop, display_mode_element): Use safe_eval
+       instead of eval_form.
+
+       * xfaces.c (merge_face_heights): Use safe_call instead of
+       call_function.
+
+       * keyboard.c (show_help_echo): Use safe_call instead of
+       call_function; use safe_eval instead of eval_form.
+
+       * lisp.h (safe_call): Renamed from call_function.
+       (safe_eval): Renamed from eval_form.
+       (safe_call1): Add prototype.
+
+2000-10-05  Miles Bader  <miles@lsi.nec.co.jp>
+
+       * xfns.c (image_ascent): Rearrange ascent calculation for the
+       has-a-font case.
+
+2000-10-04  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * keymap.c (Fwhere_is_internal): Ignore `menu-bar' and `tool-bar'.
+       (where_is_internal_1): Don't bother ignoring menu-items any more.
+
+2000-10-04  Gerd Moellmann  <gerd@gnu.org>
+
+       * keyboard.c (update_menu_bindings): New variable.
+       (parse_menu_item): Use AREF.  If update_menu_bindings
+       is 0, don't update menu bindings.
+       (syms_of_keyboard): New Lisp variable `update-menu-bindings'.
+
+2000-10-03  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * alloc.c (Fgarbage_collect): Prevent compiler warning for a call
+       to `mark_object'.
+
+2000-10-02  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * syntax.c (forw_comment): Match nestedness of ender/starter.
+       (Fforward_comment): Treat an unmatched \n comment-ender as whitespace.
+       (prev_char_comstart_first): Remove.
+       (back_comment): Check two-char comment markers more carefully
+       to better handle overlapping cases like *//* or /* */* */ ...
+       Match nestedness of ender/starter.
+
+2000-10-02  Dave Love  <fx@gnu.org>
+
+       * config.in (HAVE_GAI_STRERROR): Add undef.
+
+       * process.c (Fopen_network_stream): Use it.
+
+       * m/alpha.h (NO_REMAP): Don't define.
+
+2000-10-02  Gerd Moellmann  <gerd@gnu.org>
+
+       * lisp.h (wrong_type_argument): Remove NO_RETURN, the function can
+       return with a string converted to an integer or vice versa when
+       Vmocklisp_arguments is t.
+       (Fsignal): Likewise.  The function can return for `quit'.
+       (struct gcpro): Declare member `var' to point to a volatile
+       Lisp_Object.
+
+       * eval.c (error): Prevent compiler warning.
+
+2000-09-30  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * keymap.c (keymap_memberp): New function.
+       (Fset_keymap_parent): Use it.
+       (fix_submap_inheritance): Use get_keyelt, get_keymap_1 and KEYMAPP.
+       Use keymap_memberp to avoid creating cycles.
+       (access_keymap): Use KEYMAPP.
+
+2000-09-30  Gerd Moellmann  <gerd@gnu.org>
+
+       * process.c (Fopen_network_stream) [HAVE_GETADDRINFO]: Use
+       gai_strerror.  Make sure xerrno is set if connect fails.  Improve
+       error recovery.
+
+2000-09-29  Jason Rumney <jasonr@gnu.org>
+
+       * w32term.c (w32_char_font_type, w32_encode_char)
+       (x_produce_glyphs): Distinguish single and multibyte BDF fonts.
+       (w32_bdf_per_char_metric): New function.
+       (w32_per_char_metric): Use it.
+       (x_draw_glyph_string_background): Always draw background for BDF
+       glyphs.
+
+       * w32bdf.h (glyph_struct, cache_bitmap): Cache bitmap data, not
+       GDI object which is a scarce resource.
+
+       * w32bdf.c (search_file_line): Fix skipping of whitespace.
+       (get_quoted_string): Fix limit on memchr search.
+       (set_bdf_font_info): Use unsigned chars. Negate yoffset.
+       (w32_init_bdf_font): Initialize codepoint and bitmap heaps.
+       (w32_free_bdf_font): Free bitmaps and codepoints on heaps.
+       (get_cached_font_char, cache_char_offset): Use macro
+       BDF_CODEPOINT_RANGE_COVER_P.
+       (cache_char_offset): Use HeapAlloc to allocate codepoints on own heap.
+       (clear_cached_bitmap_slots): New function.
+       (GET_HEX_VALUE): G-Z, g-z are not hex.
+       (w32_get_bdf_glyph): Convert to DIB format. Return bytes read.
+       (get_bitmap_with_cache): Use new cache implementation.
+       (create_offscreen_bitmap): New function.
+       (w32_BDF_TextOut): Use it. Draw glyphs as DIBs.
+
+       * w32term.c (x_produce_glyphs):  If the distance from the current
+       position to the next tab stop is less than a canonical character
+       width, use the tab stop after that.
+       (x_draw_glyphs): Handle case START and END are out of bounds more
+       carefully.
+       (x_clear_mouse_face): Block/unblock input.
+       (x_display_and_set_cursor): Don't show a hollow box cursor for
+       buffers whose cursor_type is nil.
+
+2000-09-29  Gerd Moellmann  <gerd@gnu.org>
+
+       * xfns.c (x_set_tool_bar_lines): Clear frame when tool bar
+       disappears.
+
+       * dispextern.h (updating_frame): Declare extern.
+
+2000-09-29  Andreas Schwab  <schwab@suse.de>
+
+       * m/ia64.h: Remove hack of not prototyping bcopy, etc.
+
+2000-09-29  Gerd Moellmann  <gerd@gnu.org>
+
+       * keyboard.c (menu_bar_one_keymap): If KEYMAP is a symbol,
+       use its function definition.
+       (tool_bar_items): Likewise.
+
+       * lisp.h (fatal): Declare NO_RETURN.
+       
+2000-09-29  Kenichi Handa  <handa@etl.go.jp>
+
+       * keymap.c: Remove the line "#undef NULL".
+
+2000-09-28  Gerd Moellmann  <gerd@gnu.org>
+
+       * xterm.c (x_make_frame_visible): Try harder to make the frame
+       visible.
+
+2000-09-28  Dave Love  <fx@gnu.org>
+
+       * s/osf5-0.h: Define USE_MMAP_FOR_BUFFERS, not REL_ALLOC_MMAP.
+
+       * s/sunos413.h (USE_MMAP_FOR_BUFFERS): Define.
+
+       * .gdbinit (xreload): Note its need on GNU/Linux.
+
+       * m/alpha.h (XUINT) [REL_ALLOC && _MALLOC_INTERNAL]: Don't declare
+       r_alloc, r_alloc_free.
+
+2000-09-28  Kenichi Handa  <handa@etl.go.jp>
+
+       * syntax.c (skip_chars): Handle negation correctly.
+
+2000-09-27  Gerd Moellmann  <gerd@gnu.org>
+
+       * xfaces.c (realize_default_face): Call set_lface_from_font_name
+       with non-zero FORCE_P argument.
+
+       * dispnew.c (adjust_glyph_matrix, enable_glyph_matrix_rows): 
+       Add assertions.
+
+       * xdisp.c (window_box_height): Add an assertion.
+
+       * xfns.c (x_set_tool_bar_lines): Don't use more lines for the
+       tool-bar than is available.
+       (x_change_window_heights): Renamed from x_set_menu_bar_lines_1.
+
+2000-09-27  Dave Love  <fx@gnu.org>
+
+       * s/irix6-5.h: Now works 64-bit.  Tidied.
+
+2000-09-26  Gerd Moellmann  <gerd@gnu.org>
+
+       * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND]: Use BITS_PER_EMACS_INT
+       instead of BITS_PER_INT.
+       (XINT, XUINT) [NO_UNION_TYPE]: Cast result to EMACS_INT and
+       EMACS_UINT, respectively.
+       (NO_UNION_TYPE) [USE_LISP_UNION_TYPE]: Undefine.
+
+       * m/sparc.h (BITS_PER_EMACS_INT) [__arch64__]: Don't define.
+
+       * unexelf.c (ELFSIZE) [__NetBSD__ && __sparc_v9__]: Define to 64.
+
+       * window.c (freeze_window_starts): Construct last argument for
+       foreach_window differently.
+
+       * xfns.c (x_decode_color): Don't return a Lisp_Object.
+
+       * lisp.h (union Lisp_Object) [!NO_UNION_TYPE]: Use EMACS_INT and
+       EMACS_UINT instead of `int' and `unsigned int'.
+       (XSET) [EXPLICIT_SIGN_EXTEND]: Use EMACS_INT instead of `int'.
+
+       * frame.h (struct frame): Make the `nothing' member of union
+       output_data an EMACS_INT.
+
+       * alloc.c (GC_CHECK_STRING_BYTES): Temporarily define, for bug
+       hunting.
+       (struct sdata) [GC_CHECK_STRING_BYTES]: Always record the string's
+       size in the sdata structure.
+       (SDATA_NBYTES, SDATA_DATA): New macros.
+       (SDATA_OF_STRING, SDATA_SIZE) [GC_CHECK_STRING_BYTES]: Define
+       differently for the different layout of the sdata structure.
+       (allocate_string_data) [GC_CHECK_STRING_BYTES]: Record string size
+       in sdata.
+       (sweep_strings, compact_small_strings) [GC_CHECK_STRING_BYTES]:
+       Check that size recorded in the string size and size recorded in
+       the sdata structure agree.
+
+2000-09-25  Dave Love  <fx@gnu.org>
+
+       * buffer.c: Include stdio.h.
+
+       Partly suggested by Eduardo Horvath <eeh@netbsd.org>.
+       
+       * ralloc.c (__malloc_extra_blocks): Declare as __malloc_size_t.
+
+       * alloc.c (__malloc_size_t) [DOUG_LEA_MALLOC]: Don't redefine it.
+       (__malloc_size_t) [!DOUG_LEA_MALLOC]: Define unconditionally as
+       size_t.
+       (__malloc_extra_blocks): Declare as __malloc_size_t.
+
+2000-09-25  Gerd Moellmann  <gerd@gnu.org>
+
+       * alloc.c (mark_image): Use GC_NILP instead of NILP.
+
+       * keyboard.c (show_help_echo): Set help_echo_showing_p.
+       (read_char): If help-echo is showing, preserve the echo area
+       when redisplaying.
+
+       * xdisp.c (help_echo_showing_p): New variable.
+       (set_message): Reset it to 0.
+       (init_xdisp): Initialize help_echo_showing_p.
+
+       * dispextern.h (help_echo_showing_p): Declare extern.
+
+       * config.in: Fix typo in __GNUC_MINOR__.
+
+       * keyboard.h (quit_throw_to_read_char): Declare NO_RETURN.
+
+       * s/freebsd.h (POSIX_SIGNALS): Define.
+
+       * xterm.c (x_clear_mouse_face): Block/unblock input.
+
+2000-09-24  Dave Love  <fx@gnu.org>
+
+       * fns.c (base64_encode_1): Fix last change.
+
+2000-09-22  Gerd Moellmann  <gerd@gnu.org>
+
+       * dispnew.c (enable_glyph_matrix_rows): Remove xasserts.
+
+       * xdisp.c (try_window_reusing_current_matrix): More fixes
+       for the case window has a header-line.
+
+2000-09-22  Dave Love  <fx@gnu.org>
+
+       * xdisp.c (syms_of_xdisp): Defvar Vmenu_bar_update_hook to provide
+       a doc string.
+
+       * xterm.c [SOLARIS2]: Remove redundant include of string.h.
+
+       * fns.c (Fstring_as_unibyte, Fstring_as_multibyte): Doc fix.
+
+2000-09-21  Gerd Moellmann  <gerd@gnu.org>
+
+       * config.in (NO_RETURN): Define as `__attribute__((__noreturn__))'
+       for GCC >= 2.5.
+
+       * lisp.h (wrong_type_argument, Fthrow, Fsignal, error): Declare
+       NO_RETURN.
+
+       * window.c, term.c, xmenu.c, xrdb.c, emacs.c, macros.c,
+       * keymap.c, insdel.c, marker.c, minibuf.c, fileio.c, dired.c,
+       * indent.c, search.c, alloc.c, data.c: Avoid some more compiler
+       warnings.
+       
+       * marker.c (byte_char_debug_check): Return void.
+
+       * xfns.c (Fx_create_frame): Set default frame parameter value
+       for tool-bar-lines to 1.
+
+       * dispnew.c (scrolling_window): Compare y-positions of rows
+       equal at the start.  Some simplification.
+
+       * xdisp.c (try_window_reusing_current_matrix): Fix computation of
+       reused rows' y-position in the case window has a header-line, and
+       new window start is greater than old window start.
+
+       * process.c (process_sent_to): New variable.
+       (send_process): Workaround for a crash on sparc-sun-solaris-2.6
+       with GCC 2.95.2 caused by a parameter being clobbered by longjmp.
+       Declare more parameters volatile.
+
+       * lread.c (Vrecursive_load_depth_limit): New variable.
+       (Fload): Check recursive loads whose recursion depth exceeds
+       Vrecursive_load_depth_limit.
+       (syms_of_lread): DERFAR_LISP recursive-load-depth-limit.
+
+2000-09-20  Gerd Moellmann  <gerd@gnu.org>
+
+       * fileio.c (Fread_file_name): Doc fix.
+
+       * editfns.c (Fmessage_or_box): Doc fix.
+
+       * fns.c (Fy_or_n_p, Fyes_or_no_p): Doc fix.
+
+       * xfns.c (xbm_scan): Allow C-style comments.
+       
+       * xfns.c (xpm_init_color_cache) [ALLOC_XPM_COLORS]: If color
+       symbols are specified, add color translations to the cache.
+       (xpm_color_bucket, xpm_cache_color) [ALLOC_XPM_COLORS]: New
+       functions.
+       (xpm_lookup_color) [ALLOC_XPM_COLORS]: Use xpm_color_bucket and
+       xpm_cache_color.
+       (xpm_load) [ALLOC_XPM_COLORS]: Pass frame and XPM attributes
+       structures to xpm_init_color_cache.
+
+2000-09-19  Gerd Moellmann  <gerd@gnu.org>
+
+       * dispnew.c (update_window_line): Make sure to always draw
+       mode-lines.
+
+2000-09-19  Andrew Innes  <andrewi@gnu.org>
+
+       * makefile.nt (bootstrap-emacs): Don't change directory.
+
+2000-09-19  Kenichi Handa  <handa@etl.go.jp>
+
+       * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Fix previous change.
+
+       * ccl.c (Fccl_execute_on_string): Make multibyte string correctly.
+       If output buffer is too small, signal an appropriated error.
+
+2000-09-18  Dave Love  <fx@gnu.org>
+
+       * keyboard.c (menu_bar_items, tool_bar_items) 
+       (current_active_maps): Remove redundant get_local_map call.
+
 2000-09-18  Gerd Moellmann  <gerd@gnu.org>
 
+       * xterm.c (x_display_and_set_cursor): Don't show a hollow box
+       cursor for buffers whose cursor_type is nil.
+       
+       * xterm.c (x_draw_image_glyph_string): Remove a comment describing
+       a feature to implement that is already implemented.
+       (note_mouse_highlight, x_find_ccl_program): Avoid some compiler
+       warnings.
+
+       * xfns.c (x_clear_image_1): New function.
+       (x_clear_image): Use it.
+       (x_from_xcolors): Use x_clear_image_1; don't free the image's
+       mask.
+
+       * dispnew.c (update_window): Move test for invisible lines
+       at the top to update_window_line.
+       (update_window_line): Handle invisible lines here.
+
+       * xfns.c (clear_image_cache): Clear current matrices of all
+       frames sharing an image cache.  Block input while freeing
+       images.  Fix timestamp comparison.
+       (x_clear_image): Also free the mask.
+
        * xfns.c (lookup_image): Block input while loading the image so
        that we won't get interrupted in a state where the image isn't yet
        set up completely.