(back_comment): Add null default in switch for pcc.
[bpt/emacs.git] / src / ChangeLog
index f7ecf01..bf6aa2a 100644 (file)
@@ -1,3 +1,575 @@
+2000-07-14  Kenichi Handa  <handa@etl.go.jp>
+
+       * xfaces.c (realize_x_face): Make fontset using the base of the
+       default'face's fontset, not using the default fontset.
+
+       * coding.c (inhibit_iso_escape_detection): New variable.
+       (syms_of_coding): Make it a Lisp variable.
+       (detect_coding_iso2022): If inhibit_iso_escape_detection is
+       nonzero, ignore ISO2022's escape sequence.
+
+2000-07-14  Gerd Moellmann  <gerd@gnu.org>
+
+       * xfns.c (Fx_show_tip): If frame parameters contain a position,
+       use that instead of the mouse position.  Add parameters DX and DY.
+
+       * dispextern.h (Fx_show_tip): Adjust number of parameters
+       in prototype.
+
+       * keyboard.c (show_help_echo): Add parameters OBJECT and POS.
+       if HELP is a function, call it with OBJECT and POS as parameters
+       to get the help to display.
+       (gen_help_event, kbd_buffer_store_help_event): New functions.
+       (kbd_buffer_get_event): Construct the Lisp help-event differently.
+       (read_char): Call show_help_echo with new parameters.
+
+       * keyboard.h (gen_help_event, kbd_buffer_store_help_event): 
+       Add prototypes.
+
+       * xterm.c (help_echo_object, help_echo_pos): New variables.
+       (note_mode_line_highlight): Store additional information about the
+       help-echo in help_echo_object and help_echo_pos.  Check both
+       `local-map' and `keymap' properties for changing the cursor
+       (note_mouse_highlight): Store additional information about the
+       help-echo in help_echo_object and help_echo_pos.
+       (note_tool_bar_highlight): Set help_echo_object to nil and
+       help_echo_pos to -1.
+       (XTread_socket): Use gen_help_event instead of filling
+       input_events manually.
+       (syms_of_xterm): Staticpro help_echo_object.
+
+       * xmenu.c (menu_highlight_callback): Use
+       kbd_buffer_store_help_event instead of setting up and input_event
+       structure manually.
+
+       * xdisp.c (eval_form): GCPRO argument sexpr.
+       (call_function): New function.
+       (handle_single_display_prop): Use call_function and FUNCTIONP
+       instead of checking whether if font_height is a symbol and
+       using eval_form.
+
+       * eval.c (internal_condition_case_2): New function.
+
+       * lisp.h (FUNCTIONP): New macro.
+       (internal_condition_case_2, call_function): Add prototypes.
+
+       * xterm.c (construct_mouse_click, x_scroll_bar_to_input_event)
+       (x_scroll_bar_handle_click, SET_SAVED_MENU_EVENT, XTread_socket):
+       Always set `arg' member of input_events.
+       (construct_menu_click): Unused function removed.
+
+       * msdos.c (dos_rawgetc): Always set `arg' member of input_events.
+
+       * w32term.c (construct_mouse_click, construct_mouse_wheel)
+       (construct_drag_n_drop, x_scroll_bar_handle_click)
+       (w32_read_socket): Always set `arg' member of input_events.
+
+       * keyboard.c (show_help_echo): Use eval_form.  Add comment.
+
+       * lisp.h (eval_form): Add prototype.
+
+       * xdisp.c (eval_form): Make it externally visible.
+
+2000-07-13  Gerd Moellmann  <gerd@gnu.org>
+
+       * xterm.c (x_handle_tool_bar_click): Store the frame in the
+       frame_or_window slot of TOOL_BAR_EVENT input events instead of
+       consing.  For prefix events, store the frame in the `arg' slot of
+       the event, otherwise store the key there.
+       (XTread_socket): Instead of consing, use the frame_or_window slot
+       of HELP_EVENTs for the frame, and the `arg' slot for the help
+       string.
+
+       * xmenu.c (menu_highlight_callback): Store help string in the
+       `arg' member of the input event; don't cons.
+       (menubar_selection_callback): Use the `arg' slot of input events
+       to queue additional information, instead of consing.
+
+       * msdos.c (dos_rawgetc): Adapt to change of HELP_EVENTs.
+
+       * w32term.c (w32_handle_tool_bar_click): Adapt to changes in
+       TOOL_BAR_EVENTs.
+       (w32_read_socket): Adapt to changes in HELP_EVENTs.
+
+       * w32menu.c (menubar_selection_callback): Use the `arg' slot of
+       input events to queue additional information, instead of consing.
+
+       * keyboard.c (kbd_buffer_gcpro): Renamed from
+       kbd_buffer_frame_or_window.  Now used for all Lisp objects
+       referenced from the input queue.
+       (kbd_buffer_store_event): Always use structure assignment for
+       copying input events.  Record all Lisp objects referenced from
+       events in kbd_buffer_gcpro.
+       (kbd_buffer_get_event): Construct Lisp `help-echo' events
+       differently from input events.  Test for prefix menu_bar_events
+       and TOOL_BAR_EVENTs differently.  Reset all slots used by an input
+       event in kbd_buffer_gcpro to nil.
+       (make_lispy_event) <TOOL_BAR_EVENT>: Treat an input event whose
+       frame_or_window is equal to its arg member as prefix events.
+       (stuff_buffered_input): Reset all slots in kbd_buffer_gcpro
+       used by an input event to nil.
+       (init_keyboard): Use two times the size of the input queue
+       for kbd_buffer_gcpro.
+       (syms_of_keyboard): Likewise.
+
+       * emacs.c (handle_USR2_signal, handle_USR1_signal): Use
+       USER_SIGNAL_EVENT.
+
+       * termhooks.h (struct input_event): Add member `arg'.
+       (MENU_BAR_EVENT): Renamed from menu_bar_event.
+       (USER_SIGNAL_EVENT): Renamed from user_signal.
+
+       * xfaces.c (ASET): Remove definition.
+
+       * lisp.h (AREF, ASET, ASIZE): New macros.
+
+       * fontset.c (AREF, ASIZE): Remove definitions.
+
+       * fns.c (AREF): Remove definition.
+       
+       * composite.c (AREF): Remove definition.
+
+2000-07-12  Gerd Moellmann  <gerd@gnu.org>
+
+       * dispnew.c (redraw_overlapped_rows): Add missing local.
+       (scrolling_window): Remove debug code.
+
+       * xdisp.c (try_window_reusing_current_matrix, try_window_id):
+       Before scrolling, turn off a mouse-highlight in the window
+       being scrolled.
+
+       * xterm.c (x_update_window_end): Add parameter
+       MOUSE_FACE_OVERWRITTEN_P.  If set, arrange for a mouse-highlight
+       redisplay in XTframe_up_to_date.
+       (x_clear_mouse_face): New function.
+       (x_redisplay_interface): Add pointer to x_clear_mouse_face.
+
+       * dispnew.c (make_current): Preserve the mouse_face_p flag of the
+       current glyph row.
+       (update_window_line): Add parameter MOUSE_FACE_OVERWRITTEN_P.  Set
+       it when any row is written to that contains glyphs highlighted in
+       mouse-face.
+       (update_window): Call the window update end hook with new
+       parameter MOUSE_FACE_OVERWRITTEN_P.
+       (direct_output_for_insert): Give up if row contains mouse-face.
+
+       * dispextern.h (struct redisplay_interface): Add parameter
+       MOUSE_FACE_OVERWRITTEN_P to update_window_end_hook function.
+       (clear_mouse_face): New function pointer member.
+
+2000-07-11  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * syntax.c (back_comment): Use one switch rather than a few `if's.
+       Obey open_paren_in_column_0_is_defun_start.
+       When reverting to the `slow' method, try to nicely handle the case
+       of nested comments by checking that the comment-starter we found
+       does indeed match the comment-ender.
+       (scan_sexps_forward, scan_sexps_forward):
+       Ignore excessive opening parenthesis rather than throwing an error.
+
+2000-07-11  Gerd Moellmann  <gerd@gnu.org>
+
+       * doc.c (Fsubstitute_command_keys): Handle case that a GC
+       in Fwhere_is_internal or get_keymap_1 relocates string contents.
+
+       * dispnew.c (direct_output_forward_char): Give up if currently
+       displaying a message instead of the minibuffer contents.
+
+       * xterm.c (x_update_window_begin): No need to turn off the mouse
+       highlight here.
+       (show_mouse_face): Set the mouse_face_p flag of glyph rows
+       depending on whether they contain glyphs highlighted in
+       mouse-face.
+
+       * dispnew.c (row_equal_p): Add parameter MOUSE_FACE_P.  If set,
+       compare the mouse_face_p flags of both rows.
+
+       * dispextern.h (struct glyph_row): Add flag mouse_face_p.
+
+2000-07-11  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * keyboard.c (show_help_echo): Accept additional parameter
+       ok_to_overwrite_keystroke_echo.
+       (read_char): Call show_help_echo with a zero
+       ok_to_overwrite_keystroke_echo argument.
+       * keyboard.h (show_help_echo): Update prototype of
+       show_help_echo.
+       * xmenu.c (menu_help_callback): Call show_help_echo with non-zero
+       ok_to_overwrite_keystroke_echo argument.
+       * w32menu.c (w32_menu_display_help): Call show_help_echo with
+       non-zero ok_to_overwrite_keystroke_echo argument.
+
+2000-07-10  Gerd Moellmann  <gerd@gnu.org>
+
+       * xdisp.c (try_window_id): If changes are all below what is
+       displayed in the window, and point is in the window, we still
+       might have to find point on the display.
+
+       * xterm.c (x_fill_stretch_glyph_string): Consume runs of stretch
+       glyphs instead of a single one.
+       (BUILD_STRETCH_GLYPH_STRING): Call x_fill_stretch_glyph_string
+       with new argument list.
+       (x_set_glyph_string_gc): Make sure the face's GC is valid.
+
+       * keymap.c (get_keymap_1): Add comment that this function can GC.
+       (where_is_internal_2, where_is_internal_1): Add GCPROs, add
+       comment that functions can GC.
+       (Fset_keymap_parent): GCPRO arg KEYMAP.
+
+2000-07-10  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * msdos.c (XMenuActivate): After exiting the menu, restore the
+       echo area message and erase it.
+
+2000-07-10  Kenichi Handa  <handa@etl.go.jp>
+
+       * fontset.c (Ffontset_info): Make the return value more compatible
+       with that of Emacs 20.
+
+2000-07-07  Gerd Moellmann  <gerd@gnu.org>
+
+       * eval.c (Fsignal): Handle case that backtrace_list is null.
+
+2000-07-07  Kenichi Handa  <handa@etl.go.jp>
+
+       * ccl.c (Fccl_execute): Typo fixed.
+
+2000-07-06  Gerd Moellmann  <gerd@gnu.org>
+
+       * window.c (window_loop): Add missing gcpro1 local variable.
+       
+       * window.c (Fwindow_list): Reverse list at the end.
+       (candidate_window_p): Add parameter OWINDOW.  ALL_FRAMES nil
+       means allow windows on OWINDOW's frame, only.
+       (window_loop): Simplified; use Fwindow_list.
+
+       * Makefile.in (TAGS-LISP): Don't pass `$(lispsource)' to make.
+
+2000-07-05  Gerd Moellmann  <gerd@gnu.org>
+
+       * xterm.c (XTread_socket): Increment handling_signal at the start,
+       decrement it at the end.
+
+       * eval.c (handling_signal): New variable.
+       (Fsignal): Abort if handling_signal is non-zero.
+
+       * lisp.h (handling_signal): External declaration.
+       
+       * s/freebsd.h (WAITTYPE, WRETCODE): Put in #if 0.
+
+2000-07-05  Ken Raeburn  <raeburn@gnu.org>
+
+       Sound support for NetBSD through "Linux emulation" support:
+       * config.in (HAVE_SOUNDCARD_H): Undef.
+       (HAVE_SOUND): Define if HAVE_SOUNDCARD_H.
+       * Makefile.in (LIBSOUND): New variable.
+       (LIBES): Include it.
+       * sound.c [HAVE_SOUNDCARD_H]: Include <sys/ioctl.h> and
+       <soundcard.h>.
+       (DEFAULT_SOUND_DEVICE): Define to "/dev/dsp" if not defined
+       elsewhere.
+       (vox_open): Use DEFAULT_SOUND_DEVICE.
+       * s/netbsd.h (DEFAULT_SOUND_DEVICE): Define to /dev/audio.
+
+2000-07-05  Gerd Moellmann  <gerd@gnu.org>
+
+       * print.c (print_error_message): If Vsignaling_function is set,
+       show it in *Messages*.
+
+       * lisp.h (Vsignaling_function): External declaration.
+
+       * eval.c (Vsignaling_function): New variable.
+       (Fsignal): Compute it.
+       (syms_of_eval): Staticpro it.
+
+2000-07-05  Dave Love  <fx@gnu.org>
+
+       * syswait.h: Use the autoconf recommended approach.  Old code
+       #if'd out in case we need to revert.
+
+       * config.in (HAVE_SYS_WAIT_H): Added. 
+
+2000-07-05  Andrew Innes  <andrewi@gnu.org>
+
+       * vm-limit.c (check_memory_limits) [REL_ALLOC]: Use real_morecore
+       when non-NULL instead of __morecore, to take account of buffer
+       memory.  This also solves a problem with spurious memory warnings
+       on Windows.
+
+       * ralloc.c: Make real_morecore non-static.
+
+       * eval.c (internal_condition_case): Comment out abort if
+       interrupt_input_blocked is not zero.
+
+       * makefile.nt: Add support for `bootstrap' and related targets.
+       Include minimal debug info in emacs.exe in release build.
+       Remove all dependencies on lisp.h, and fixup some others.
+
+       * w32.c (init_environment): Install code from 20.7 for providing
+       default values for environment variables, based on the
+       executable's own location.
+       (map_w32_filename): Handle filenames that are longer than
+       MAX_PATH.
+       (sys_socket): Install socket inheritance bug fix from 20.7.
+
+       * alloca.c [emacs]: Include lisp.h (needed by atimer.h included
+       here via blockinput.h).
+
+2000-07-05  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * w32menu.c (w32_menu_display_help):
+       * xmenu.c (menu_help_callback): Use show_help_echo.
+
+       * keyboard.h (show_help_echo): Declare.
+
+       * keyboard.c (show_help_echo): New function, extracted from read_char.
+       Feval its `msg' argument if it's a cons cell.
+       (read_char): Use it.
+       (follow_key): Pass `autoload' to get_keyelt.
+
+       * xterm.c (note_mode_line_highlight, note_mouse_highlight) 
+       (note_tool_bar_highlight, XTread_socket):
+       * msdos.c (IT_note_mode_line_highlight, IT_note_mouse_highlight) 
+       (dos_rawgetc):
+       * w32term.c (note_mode_line_highlight, note_mouse_highlight)
+       (note_tool_bar_highlight, w32_read_socket):
+       Do not gratuitously ignore non-string `help-echo' properties.
+
+2000-07-05  Gerd Moellmann  <gerd@gnu.org>
+
+       * eval.c (Feval): Put check for interrupt_input_block in #if 0.
+
+       * window.c (delete_all_subwindows): Reset Vwindow_list.
+
+       * xterm.c (x_append_glyph, x_append_composite_glyph)
+       (x_produce_image_glyph, x_append_stretch_glyph): Accomodate to
+       changes in struct glyph starting 1999-12-27.  Some bit-fields of
+       struct glyph were not set, which made glyphs unequal when compared
+       with GLYPH_EQUAL_P.  Redisplay outputs such glyphs, and flickering
+       effects were the result.  This also depended on the contents of
+       memory returned by xmalloc.  If flickering happens again, activate
+       the code in clear_glyph_row that's in #if 0.  If the flickering is
+       gone with that, chances are that it is caused by something
+       similar.
+
+       * dispnew.c (clear_glyph_row): Add debug code in #if 0.
+       
+       * dispextern.h: Add some comments.
+
+       * window.c (add_window_to_list): Add parameter LIST.
+       (window_list): Order list so that, for each frame, windows are
+       in canonical order, and so that frames appear in the list in
+       the order given by Vframe_list.
+       (next_window): Reverse the handling of NEXT_P.
+
+2000-07-04  Gerd Moellmann  <gerd@gnu.org>
+
+       * window.c (Vwindow_list): New variable.
+       (make_window, delete_window): Set Vwindow_list to nil.
+       (check_window_containing): New function.
+       (window_from_coordinates): Rewritten.
+       (add_window_to_list, window_list, candidate_window_p)
+       (decode_next_window_args, next_window): New functions.
+       (Fnext_window, Fprevious_window): Rewritten in terms of
+       next_window.
+       (Fwindow_list): New function.
+       (Fother_window): Cleaned up.
+       (foreach_window): Add a longer "variable argument list".  Let
+       callback function return 0 to indicate that cycling over windows
+       should stop.
+       (foreach_window_1): Likewise.
+       (freeze_window_start): Return int.
+       (init_window): New function.
+       (syms_of_window): Staticpro Vwindow_list and defsubr Swindow_list.
+
+       * emacs.c (handle_USR1_signal, handle_USR2_signal) Clear
+       input_event with bzero.
+       (main): Call init_window.
+
+       * keymap.c (get_keyelt): Temporarily inhibit GC while evaluating
+       a menu filter.
+
+2000-07-04  Kenichi Handa  <handa@etl.go.jp>
+
+       * composite.h (make_composition_value_copy): Extern it.
+
+       * composite.c (make_composition_value_copy): New function.
+
+       * editfns.c (Fformat): While copying text properties, make each
+       composition property value a copy.
+
+       * fns.c (concat): While copying text properties, make each
+       composition property value a copy.
+
+2000-07-03  Gerd Moellmann  <gerd@gnu.org>
+
+       * m/macppc.h (LINKER, LD_SWITCH_MACHINE) [LINUX]: Define.
+
+       * fns.c (sweep_weak_table): Mark only objects that are not 
+       marked already.
+
+       * frame.c (next_frame, prev_frame): If MINIBUF is a window,
+       include those frames as candidates which have their focus
+       redirected to the minibuffer frame.
+
+2000-07-03  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * fns.c (Fputhash): Return `value' rather than nil.
+
+2000-06-30  Gerd Moellmann  <gerd@gnu.org>
+
+       * frame.c (next_frame): Don't check focus redirection in case
+       MINIBUF is a window.  Doing so excludes frames using MINIBUF
+       unless their focus is redirected, which contradicts the
+       specification of next-frame, and leads to infinite loops in
+       certain situations when cycling through windows with next-window.
+
+2000-06-30  Kenichi Handa  <handa@etl.go.jp>
+
+       * coding.c (code_convert_region): Even if the length of text is
+       zero, try to convert it if coding->type is coding_type_ccl.
+       (decode_coding_string, encode_coding_string): Likewise.
+
+2000-06-28  Gerd Moellmann  <gerd@gnu.org>
+
+       * xdisp.c (try_window_reusing_current_matrix): Don't try to reuse
+       the display if windows_or_buffers_changed.
+
+       * dispnew.c (struct row_entry): New structure.
+       (row_entry_pool, row_entry_pool_size, row_entry_idx, row_table)
+       (row_table_size, old_lines, new_lines, old_lines_size)
+       (new_lines_size, run_pool, runs_size, runs): New variables.
+       (add_row_entry): New function.
+       (scrolling_window): Use data structures allocated with xmalloc and
+       held in global variables, instead of allocating them with alloca and
+       holding them in local variables.  Use a larger hash table whose
+       size depends on glyph matrix sizes.  Don't use bzero to clear the
+       hash table; instead, clear used slots only.
+
+       * fns.c (next_almost_prime): Make it externally visible.
+
+       * lisp.h (next_almost_prime): Add prototype.
+
+       * s/isc4-0.h (sigunblock): Define.
+
+       * s/sco5.h (sigunblock): Define.
+
+2000-06-27  Dave Love  <fx@gnu.org>
+
+       * s/osf1.h (C_SWITCH_SYSTEM, LIBS_SYSTEM): Revert last change
+       (moved to osf5-0.h).
+       [!NOT_C_CODE]: Protect string.h stuff.
+
+       * s/osf5-0.h (C_SWITCH_SYSTEM, WAIT_USE_INT, SYS_SIGLIST_DECLARED)
+       (sys_siglist, NSIG): Definitions moved here from osf1.h.
+
+2000-06-27  Gerd Moellmann  <gerd@gnu.org>
+
+       * xdisp.c (resize_mini_window): Subtract the extra line spacing
+       below the last line from the needed window height.
+
+2000-06-26  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * fns.c (Fplist_member): Renamed from Fwidget_plist_member.
+       (Fwidget_get): Use it.
+       (syms_of_fns): Defsubr it.
+
+2000-06-26  Gerd Moellmann  <gerd@gnu.org>
+
+       * xterm.c (xim_initialize) [!USE_XIM]: Don't set up the 
+       display info for XIM.
+       (xim_open_dpy): Likewise.
+       (xim_close_dpy): Don't free the display info's XIM.
+
+       * xfns.c (x_window) [!USE_XIM]: Don't call create_frame_ic.
+
+       * config.in (USE_XIM): New define.
+
+       * keymap.c (get_keyelt): For menu-items containing a `:filter
+       FILTER', apply FILTER to the menu-item's definition to get the
+       real definition to use.
+
+       * lisp.h (QCfilter): External declaration.
+
+       * xfns.c (Fimage_size): New function.
+       (syms_of_xfns): Defsubr it.
+
+2000-06-26  Andreas Schwab  <schwab@suse.de>
+
+       * coding.c (decode_coding_string): Re-fetch STRING_BYTES after
+       Fstring_as_unibyte.
+
+2000-06-25  Dave Love  <fx@gnu.org>
+
+       * term.c [!HAVE_TERMCAP_H]: Declare tputs, tgetent, tgetflag,
+       tgetnum.
+
+       * Makefile.in (blockinput.h): Depend on atimer.h.
+       (atimer.h): Depend on systime.h.
+
+       * blockinput.h: Protect against multiple inclusion.  Include
+       atimer.h.
+
+       * atimer.h: Protect against multiple inclusion.  Include
+       systime.h.
+
+       * lisp.h (swap_in_global_binding): Declare.
+
+2000-06-24  Ken Raeburn  <raeburn@gnu.org>
+
+       * process.c (Fopen_network_stream): Turn off atimers for duration
+       of call to connect.  (Patch from Gerd.)
+
+2000-06-23  Dave Love  <fx@gnu.org>
+
+       * ralloc.c: Maybe include unistd.h
+
+       * emacs.c (setgrp): Undefine before defining.
+       (malloc_warning, set_time_zone_rule, index): Prototype.
+
+       * systime.h (EMACS_GET_TIME) [!GETTIMEOFDAY_ONE_ARGUMENT]: Use
+       HAVE_STRUCT_TIMEZONE.
+
+       * s/osf1.h: Move string.h hack here from alpha.h and make it
+       conditional.
+       (C_SWITCH_SYSTEM): Use _OSF_SOURCE, not -BSD, which clashes with
+       _XOPEN_SOURCE.
+       (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist, NSIG): Define.
+       (SOCKLEN_TYPE): Don't define.
+
+       * m/alpha.h: Remove string.h hack.
+
+       * s/osf5-0.h: New file.
+
+       * filelock.c: Use feature tests for fcntl.h, string.h.  Don't
+       include time.h, done by systime.h.
+       [__FreeBSD__]: Remove redundant includes.
+
+       * callproc.c (setpgrp): Undefine before defining.
+       (delete_temp_file): Return Qnil to avoid warning.
+
+       * config.in (HAVE_TERM_H, HAVE_STRUCT_TIMEZONE): Add.
+
+       * xfaces.c: Include fontset.h dependent on HAVE_WINDOW_SYSTEM, not
+       HAVE_X_WINDOWS.
+
+       * fontset.h (free_face_fontset): Renamed from fs_free_face_fontset.
+
+       * composite.h (compose_text): Declare.
+
+       * xterm.c: Don't include sys/types.h unconditionally.  Don't
+       protect its inclusion with !USG (following xmenu.c).
+
+2000-06-23  Gerd Moellmann  <gerd@gnu.org>
+
+       * xfns.c (x_create_tip_frame): Initialize frame's colors like
+       in x_create_frame.
+
+2000-06-23  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * coding.c (decode_eol_post_ccl): Special handling for undecided
+       and inconsistent EOL types.
+
 2000-06-22  Gerd Moellmann  <gerd@gnu.org>
 
        * xrdb.c (x_load_resources): Add default resource for scroll bar's
 2000-05-28  Eli Zaretskii  <eliz@is.elta.co.il>
 
        * term.c (produce_glyphs): Treat characters from the eight-bit-*
-        charsets as unibyte, with 1-column screen width.  Sent by Kenichi
-        Handa.
+       charsets as unibyte, with 1-column screen width.  Sent by Kenichi
+       Handa.
 
 2000-05-28  Eli Zaretskii  <eliz@is.elta.co.il>
 
 2000-02-22  Eli Zaretskii  <eliz@is.elta.co.il>
 
        * frame.c (Fdelete_frame): Don't let echo_area_window remain on
-        a deleted frame.
+       a deleted frame.
 
 2000-02-21  Gerd Moellmann  <gerd@gnu.org>
 
        * syntax.h (SYNTAX_COMMENT_NESTED, SYNTAX_FLAGS_COMMENT_NESTED):
        Add support for nested comments.
 
-       * syntax.c (Fforward_comment, scan_lists, scan_sexps_forward):
-       Consolidate the forward comment code into the new `forw_comment'.
-       (forw_comment): New subroutine.  Added support for nested comments.
-       (lisp_parse_state, back_comment, Fmodify_syntax_entry)
-       (Fparse_partial_sexp): Add support for nested comments.
+       * syntax.c (Fforward_comment, scan_lists, scan_sexps_forward):
+       Consolidate the forward comment code into the new `forw_comment'.
+       (forw_comment): New subroutine.  Added support for nested comments.
+       (lisp_parse_state, back_comment, Fmodify_syntax_entry)
+       (Fparse_partial_sexp): Add support for nested comments.
 
 1999-08-28  Ken Raeburn  <raeburn@gnu.org>
 
 1999-08-22  Gerd Moellmann  <gerd@gnu.org>
 
        * xfns.c: Call change_frame_size and do_pending_window_change with
-        new parameter.
+       new parameter.
 
 1999-08-21  Gerd Moellmann  <gerd@gnu.org>
 
 
 1999-07-21  Joe Ramey  <ramey@ti.com>
 
-        * filelock.c (lock_if_free): Return -1 if check_lock_owner
+       * filelock.c (lock_if_free): Return -1 if check_lock_owner
        has returned -1 (lockfile exists but is not a symlink?).
 
 1999-07-20  Gerd Moellmann  <gerd@gnu.org>
@@ -11905,7 +12477,10 @@ Sun Jan  3 08:41:10 1999  Masatake Yamato  <masata-y@is.aist-nara.ac.jp>
 
        * keyboard.c (record_asynch_buffer_change): Return void.
 
-       * xterm.c (XTroï\0ðoï\0ðÃâ\0ðoï\0ðoï\0ðTÿ\0ðLá\0ðoï\0ðterminal_window): Ditto.
+       The first line of the following paragraph was garbled for an
+       unknown reason.  It couldn't be fully reconstructed.
+       
+       * xterm.c (XTread_socket, XTset_terminal_window): Ditto.
        (x_lower_frame): Ditto.
        (x_scroll_bar_clear): Ditto.
        (XTflash): Add default case in switch for -Wall.
@@ -13192,10 +13767,15 @@ Sun Jan  3 08:41:10 1999  Masatake Yamato  <masata-y@is.aist-nara.ac.jp>
        based on text properties for an overlay string.
        (next_element_from_overlay_string): Check invisible and face text
        properties.
+       
        (set_iterator_to_next_overlay_string): Restore face id before
        overlay strings when no more overlay strings are found to return.
        Initialize next_ovstr_.*check_pos for each new overlay string
-       roï\0ðoï\0ðÃâ\0ðoï\0ðoï\0ðTÿ\0ðLá\0ðoï\0ðase_face): Made public.
+       
+       A line in the following paragraph was garbled for an unknown
+       reason.  It couldn't be fully reconstructed.
+       
+       (compute_base_face): Made public.
        (merge_face_list): Ditto.
        (intern_computed_face): Ditto.
 
@@ -13917,10 +14497,10 @@ Sun Aug 24 08:50:52 1997  Gerd Moellmann  <gerd@acm.org>
        (expose_window): Use it.
 
        * xdisp.c (display_string): Catch case that we are called with
-       current_x already beyond max_x.
+       current_x already beyond max_x.
        (global): Fix usage of FRAME_WINDOW_P <-> FRAME_WINDOW_REDISPLAY_P.
        (init_display_info): Subtract vertical border glyph from
-       last_visible_x.
+       last_visible_x.
 
        * scroll.c (scrolling_window_1): Removed.
 
@@ -13951,8 +14531,7 @@ Sun Aug 24 08:50:52 1997  Gerd Moellmann  <gerd@acm.org>
 
 Fri Aug 22 18:46:43 1997  Gerd Moellmann  <gerd@acm.org>
 
-       * xterm.c (XTupdate_end): Draw horizontal border at right
-       position.
+       * xterm.c (XTupdate_end): Draw horizontal border at right position.
        (expose_window): Draw vertical border.
        (XTclear_end_of_line): Accept width <= 0 and height <= 0 but
        don't do anything.
@@ -13976,9 +14555,8 @@ Fri Aug 22 18:46:43 1997  Gerd Moellmann  <gerd@acm.org>
        * dispnew.c (clear_glyph_matrix): Additional argument specifiying
        that rows should really be cleared.  Used for current matrices.
 
-        * dispnew.c (scrolling_window):  Bug fix.
-       (line_dance_hook):  Formerly line_dance_fn, take only one
-       parameter.
+       * dispnew.c (scrolling_window):  Bug fix.
+       (line_dance_hook):  Formerly line_dance_fn, take only one parameter.
 
        * dispextern.h (struct run): Remove current_vpos.
 
@@ -14038,11 +14616,11 @@ Wed Aug 20 11:23:28 1997  Gerd Moellmann  <gerd@acm.org>
 Tue Aug 19 14:38:05 1997  Gerd Moellmann  <gerd@acm.org>
 
        * xterm.c (x_display_and_set_cursor): Use FONT_WIDTH if width
-       unknown.  Some fonts have min_width zero.
+       unknown.  Some fonts have min_width zero.
        (draw_glyphs): Don't draw underlines to the end of the display
-       line if face is merely extended to that point.
+       line if face is merely extended to that point.
        (draw_glyphs): Don't assume background is filled if
-       just_foreground_p but extending to end of line.
+       just_foreground_p but extending to end of line.
 
        * xterm.c (XTclear_end_of_line): Clip only to display_height - 1
        for partially visible last lines.
@@ -14092,7 +14670,7 @@ Sat Aug 16 13:13:32 1997  Gerd Moellmann  <gerd@acm.org>
 
        * dispextern.h (WINDOW_TO_FRAME_HPOS/VPOS): Moved to dispnew.c
 
-        * xfns.c (x_contour_region):  Use pixel coordinates from window
+       * xfns.c (x_contour_region):  Use pixel coordinates from window
        cursor instead of WINDOW_TO_FRAME_H/VPOS.
 
        * dispextern.h (FRAME_TO_WINDOW_HPOS, FRAME_TO_WINDOW_VPOS):
@@ -14234,8 +14812,7 @@ Thu Aug 14 10:41:41 1997  Gerd Moellmann  <gerd@acm.org>
        glyphs for to_pos.
        (start_display): Remove assertion.
 
-       * dispnew.c (direct_output_forward_char): Bug fix, = instead of
-       ==.
+       * dispnew.c (direct_output_forward_char): Bug fix, = instead of ==.
        (update_window): Don't set row->y here.
 
        * xdisp.c (next_display_element): Don't translate control chars
@@ -14257,7 +14834,7 @@ Wed Aug 13 10:46:12 1997  Gerd Moellmann  <gerd@acm.org>
        * xterm.c (x_draw_3d_borders): Use CapRound. Struct rect
        replaced by XRectangle.
 
-        * dispnew.c (scrolling_window): New method.
+       * dispnew.c (scrolling_window): New method.
 
        * xterm.c (do_line_dance): New implementation, new method.
 
@@ -14357,7 +14934,7 @@ Mon Aug 11 12:32:34 1997  Gerd Moellmann  <gerd@acm.org>
        * window.h: phys_cursor_ascent + descent instead of height.
 
        * xterm.c (XTget_char_info): Use per char metrics for multi-byte
-       chars with charset width 1.
+       chars with charset width 1.
 
        * dispnew.c (direct_output_for_insert): Set updated_row.
 
@@ -14438,7 +15015,7 @@ Tue Jul 29 12:52:40 1997  Gerd Moellmann  <gerd@acm.org>
        * dispextern.h (struct char_info ): WHAT field.
 
        * term.c (encode_terminal_code): Don't use GLYPH_CHAR, use
-       FAST_GLYPH_CHAR instead because GLYPH_CHAR won't remove faces.
+       FAST_GLYPH_CHAR instead because GLYPH_CHAR won't remove faces.
 
 Mon Jul 28 14:23:06 1997  Gerd Moellmann  <gerd@acm.org>
 
@@ -14541,7 +15118,7 @@ Mon Jul 21 12:22:02 1997  Gerd Moellmann  <gerd@acm.org>
        * dispextern.h (cursor_in_echo_area): Extern declaration.
 
        * xterm.c (dumpglyphs): 8-bit version to test if my Xserver
-       freezes stem from 16-bit functions.
+       freezes stem from 16-bit functions.
 
        * xterm.c (x_display_and_set_cursor): Don't display hollow
        cursor in mini windows.
@@ -14556,7 +15133,7 @@ Mon Jul 21 12:22:02 1997  Gerd Moellmann  <gerd@acm.org>
        (x_update_window_cursor): Use it.
 
        * xdisp.c (display_text_line): Set cursor for window even if not
-       selected.
+       selected.
 
        * xterm.c (x_display_bar_cursor): Use HPOS and VPOS instead
        of X and Y to denote matrix positions.
@@ -14604,18 +15181,17 @@ Tue Jul 15 13:58:33 1997  Gerd Moellmann  <gerd@acm.org>
        * xterm.h: Prototype for X_DISPLAY_CURSOR.
 
        * xterm.c (XTcursor_to): Void return type.  Test for
-       UPDATED_WINDOW.  Call x_display_cursor with window.
+       UPDATED_WINDOW.  Call x_display_cursor with window.
        (x_display_cursor): Void return type.  Window instead of frame
-       parameter.
+       parameter.
 
-       * window.h (WINDOW_RIGHTMOST_P, WINDOW_TOPMOST_P): Use functions
-       below.
+       * window.h (WINDOW_RIGHTMOST_P, WINDOW_TOPMOST_P): Use functions below.
 
        * window.c (window_rightmost_p, window_topmost_p): Based on
        window tree.
 
        * dispnew.c (adjust_frame_message_buffer): Allocate with
-       FRAME_MESSAGE_BUF_SIZE.
+       FRAME_MESSAGE_BUF_SIZE.
 
        * window.h: PHYS_CURSOR_.* added.
 
@@ -14629,11 +15205,9 @@ Tue Jul 15 13:58:33 1997  Gerd Moellmann  <gerd@acm.org>
        * window.c (window_internal_width): Scroll bars no longer
        part of window.
 
-       * xterm.c (XTclear_end_of_line): FRAME_LEFT_SCROLL_BAR_WIDTH
-       removed.
+       * xterm.c (XTclear_end_of_line): FRAME_LEFT_SCROLL_BAR_WIDTH removed.
 
-       * xfns.c (x_set_scroll_bar_width): FRAME_LEFT_SCROLL_BAR_WIDTH
-       removed.
+       * xfns.c (x_set_scroll_bar_width): FRAME_LEFT_SCROLL_BAR_WIDTH removed.
 
        * xdisp.c (echo_area_display): FRAME_LEFT_SCROLL_BAR_WIDTH removed.
        (redisplay_internal): Ditto.
@@ -14652,7 +15226,7 @@ Tue Jul 15 13:58:33 1997  Gerd Moellmann  <gerd@acm.org>
 Mon Jul 14 12:30:03 1997  Gerd Moellmann  <gerd@acm.org>
 
        * dispnew.c (updated_window): Set by UPDATE_WINDOW to the window
-       being updated.
+       being updated.
        (update_window): Set and clear it.
 
        * dispnew.c (update_window_line, update_window, scrolling_window):
@@ -14688,8 +15262,7 @@ Mon Jul 14 12:30:03 1997  Gerd Moellmann  <gerd@acm.org>
        * xterm.c (XTupdate_begin): Set CURS_X/Y from selected window.
        (XTwrite_glyphs): Use cursor position of selected window.
 
-       * xfns.c (x_set_scroll_bar_width): Set cursor pos of selected
-       window.
+       * xfns.c (x_set_scroll_bar_width): Set cursor pos of selected window.
 
        * dispnew.c (set_cursor_to): Set window cursor position.
        (direct_output_for_insert): Use window cursor position.
@@ -14704,8 +15277,7 @@ Mon Jul 14 12:30:03 1997  Gerd Moellmann  <gerd@acm.org>
        * dispnew.c (direct_output_for_insert): LAST_POINT_X removed.
        (direct_output_forward_char): Ditto.
 
-       * xdisp.c (redisplay_internal): LAST_POINT_X and LAST_POINT_Y
-       removed.
+       * xdisp.c (redisplay_internal): LAST_POINT_X and LAST_POINT_Y removed.
 
        * window.c (make_window): LAST_POINT_X and LAST_POINT_Y removed.
 
@@ -14737,8 +15309,8 @@ Sat Jul 12 12:58:48 1997  Gerd Moellmann  <gerd@acm.org>
        * minibuf.c (read_minibuf): Build frame matrix.
 
        * xdisp.c (this_line_start_hpos): Renamed to
-       THIS_LINE_START_WINDOW_HPOS to make it clear that this is window
-       relative.
+       THIS_LINE_START_WINDOW_HPOS to make it clear that this is window
+       relative.
        (this_line_vpos): Renamed to THIS_LINE_WINDOW_VPOS for the same
        reason.
 
@@ -14748,8 +15320,8 @@ Sat Jul 12 12:58:48 1997  Gerd Moellmann  <gerd@acm.org>
        (clear_frame_records): Clear window and frame rows.
        (clear_glyph_matrix): Set all rows of a matrix to empty.
 
-       * xdisp.c (echo_area_display): Parameter UPDATE_FRAME_P.  Update
-       frame if set.
+       * xdisp.c (echo_area_display): Parameter UPDATE_FRAME_P.
+       Update frame if set.
        (message2_nolog): Pass 1 to ECHO_AREA_DISPLAY.  UPDATE_FRAME
        removed.
        (redisplay_internal): Pass 0 to ECHO_AREA_DISPLAY.
@@ -14816,7 +15388,7 @@ Fri Jul 11 13:16:50 1997  Gerd Moellmann  <gerd@acm.org>
        matrix.  Change name to scroll_full_width_window.
 
        * xdisp.c (message2_nolog): Don't fwrite NULL message If
-       NONINTERACTIVE.
+       NONINTERACTIVE.
 
 Mon Jul  7 14:44:38 1997  Gerd Moellmann  <gerd@acm.org>
 
@@ -14836,9 +15408,9 @@ Mon Jul  7 14:44:38 1997  Gerd Moellmann  <gerd@acm.org>
 Sun Jul  6 17:02:26 1997  Gerd Moellmann  <gerd@acm.org>
 
        * dispnew.c (adjust_frame_glyphs): Allocate window matrices from
-       (0, 0).
+       (0, 0).
        (allocate_leaf_matrix): Add FRAME_MENU_BAR_LINES to the height of
-       top-most windows.
+       top-most windows.
 
        * window.h (WINDOW_TOPMOST_P): Added.
 
@@ -14854,12 +15426,11 @@ Sun Jul  6 17:02:26 1997  Gerd Moellmann  <gerd@acm.org>
        (echo_area_display): Work with window matrix for mini window.
        (redisplay_window): Use window marix for mini window.
        (display_text_line): Assume HPOS and VPOS are window relative and
-       use that for DISPLAY_STRING.
+       use that for DISPLAY_STRING.
 
        * dispextern.h: Prototype for prepare_desired_row.
 
-       * dispnew.c (prepare_desired_row): Replacement for
-       GET_DISPLAY_LINE.
+       * dispnew.c (prepare_desired_row): Replacement for GET_DISPLAY_LINE.
 
        * dispnew.c (adjust_window_charstarts): Always allocate window
        matrices.
@@ -14892,20 +15463,20 @@ Sat Jul  5 14:55:44 1997  Gerd Moellmann  <gerd@acm.org>
        (direct_output_for_insert): Don't add null-glyph end marker.
 
        * scroll.c (do_direct_scrolling): Change algorithm to construct
-       vector of lines assigned.  Call MIRRORED_LINE_DANCE:
+       vector of lines assigned.  Call MIRRORED_LINE_DANCE:
        (do_scrolling): Ditto.
 
        * dispnew.c (mirror_line_dance): Mirror line assignments in a
-       frame matrix in window matrices.
+       frame matrix in window matrices.
        (mirrored_line_dance): Do line assignments during scrolling.
-       Maybe do corresponding assignments in window matrices.
+       Maybe do corresponding assignments in window matrices.
        (check_window_matrix_pointers): Check that window rows and frame
-       rows agree about glyph pointers.
+       rows agree about glyph pointers.
        (check_matrix_pointers): Ditto.
        (mirrored_make_current): Make a row of a desired matrix current;
-       maybe mirror the operation in window matrices.
+       maybe mirror the operation in window matrices.
        (mirror_make_current): Make window desired matrix row current when
-       frame matrix row was made current.
+       frame matrix row was made current.
 
 Fri Jul  4 13:27:46 1997  Gerd Moellmann  <gerd@acm.org>
 
@@ -14916,7 +15487,7 @@ Fri Jul  4 13:27:46 1997  Gerd Moellmann  <gerd@acm.org>
        * scroll.c (do_scrolling): Simplified.
        (do_direct_scrolling): Simplified.
        (scrolling_1): Pass CURRENT_MATRIX instead of FRAME to
-       DO_.*SCROLLING.
+       DO_.*SCROLLING.
 
 
        * dispnew.c (ins_del_glyph_rows): Insert/delete rows in a matrix.
@@ -14947,7 +15518,7 @@ Wed Jul  2 13:43:35 1997  Gerd Moellmann  <gerd@acm.org>
        * all files: use above new names.
 
        * dispnew.c (scroll_frame_lines): Simplified.  Use
-       SCROLL_GLYPH_MATRIX.
+       SCROLL_GLYPH_MATRIX.
        (make_glyph_row_empty): Mark a glyph row empty.
        (increment_glyph_row_buffer_positions): Increment
        buffer positions in a glyph row.
@@ -14986,7 +15557,7 @@ Tue Jul  1 13:49:55 1997  Gerd Moellmann  <gerd@acm.org>
        (direct_output_for_insert): Ditto.
 
        * dispextern.h (struct glyph_row): Use a vector of pointers
-       instead of individual members.  Use a vector of used counters.
+       instead of individual members.  Use a vector of used counters.
        (MATRIX_ROW_SWAP_CONTENTS): Use vectors.
        (MATRIX_ROW_GLYPH_START): Ditto.
        (MATRIX_ROW_GLYPH_END): Ditto.
@@ -15009,16 +15580,16 @@ Mon Jun 30 20:39:38 1997  Gerd Moellmann  <gerd@acm.org>
        (syms_of_display): Ditto.
 
        * dispextern.h: add prototypes for REDRAW_FRAME,
-       REDRAW_GARBAGED_FRAMES, CANCEL_LINE, CLEAR_FRAME_RECORDS,
-       INIT_DESIRED_GLYPHS, SCROLL_FRAME_LINES, PRESERVE_OTHER_COLUMNS,
-       ADJUST_WINDOW_CHARSTARTS, CANCEL_MY_COLUMNS,
-       DIRECT_OUTPUT_FOR_INSERT, DIRECT_OUTPUT_FORWARD_CHAR,
-       UPDATE_FRAME, SCROLLING, BUFFER_POSN_FROM_COORDS,
-       DO_PENDING_WINDOW_CHANGE, CHANGE_FRAME_SIZE, BITCH_AT_USER,
+       REDRAW_GARBAGED_FRAMES, CANCEL_LINE, CLEAR_FRAME_RECORDS,
+       INIT_DESIRED_GLYPHS, SCROLL_FRAME_LINES, PRESERVE_OTHER_COLUMNS,
+       ADJUST_WINDOW_CHARSTARTS, CANCEL_MY_COLUMNS,
+       DIRECT_OUTPUT_FOR_INSERT, DIRECT_OUTPUT_FORWARD_CHAR,
+       UPDATE_FRAME, SCROLLING, BUFFER_POSN_FROM_COORDS,
+       DO_PENDING_WINDOW_CHANGE, CHANGE_FRAME_SIZE, BITCH_AT_USER,
        SIT_FOR, INIT_DISPLAY, SYMS_OF_DISPLAY,
 
        * dispnew.c (redraw_frame): FRAME_PTR -> struct frame.  Return
-       void.
+       void.
        (cancel_line): Return void.
        (clear_frame_records):  Return void.
 
@@ -15040,10 +15611,10 @@ Mon Jun 30 20:39:38 1997  Gerd Moellmann  <gerd@acm.org>
        * term.c (reassert_line_highlight): Check CHARS_WASTED == 0.
 
        * window.h (struct window): Add comment that no Lisp data may
-       come below CURRENT_MATRIX.
+       come below CURRENT_MATRIX.
 
        * alloc.c (mark_object): Change window mark code to stop with
-       member CURRENT_MATRIX.
+       member CURRENT_MATRIX.
 
 Sat Jun 28 13:54:55 1997  Gerd Moellmann  <gerd@acm.org>
 
@@ -15054,16 +15625,16 @@ Sat Jun 28 13:54:55 1997  Gerd Moellmann  <gerd@acm.org>
        (new_glyph_pool): Formerly new_FRAME_GLYPH_MATRIX.
        (free_glyph_pool): Formerly FREE_FRAME_GLYPH_MATRIX
        (realloc_glyph_pool): Formerly REALLOC_FRAME_GLYPH_MATRIX.
-       Returns 1 if pool changed.
+       Returns 1 if pool changed.
        (matrix_row): Additional check for lost pointers to glyph rows.
        (compute_matrices): Additional parameter DIM_P set means that no
-       allocation should take place.  Addtional parameter
-       ANY_WINDOWS_CHANGED_P set if any windows matrix has changed.
+       allocation should take place.  Addtional parameter
+       ANY_WINDOWS_CHANGED_P set if any windows matrix has changed.
        (compute_leaf_matrix): Additional parameter CHANGED_P set to 1
-       when window matrix changes.  Additional parameter DIM_ONLY_P set
-       to 1 to indicate that no allocation should take place.
+       when window matrix changes.  Additional parameter DIM_ONLY_P set
+       to 1 to indicate that no allocation should take place.
        (adjust_frame_glyphs): Construct new glyph pools and glyph
-       matrices.  Optimize frame redraws.
+       matrices.  Optimize frame redraws.
        (free_glyphs): Free pools.
        (check_glyph_memory): Check pools not freed.
        (rotate_pointers): Rotate pointers in a vector of glyph rows.
@@ -15072,7 +15643,7 @@ Sat Jun 28 13:54:55 1997  Gerd Moellmann  <gerd@acm.org>
 
        * dispextern.h (struct glyph_row): Use pointers to areas in a row.
        (global): All macro names changed from prefix FRAME_MATRIX to
-       MATRIX.
+       MATRIX.
 
 Fri Jun 27 14:51:15 1997  Gerd Moellmann  <gerd@acm.org>
 
@@ -15410,8 +15981,8 @@ Wed Jun 25 15:22:58 1997  Gerd Moellmann  <gerd@acm.org>
        * w32term.c (cancel_mouse_face): New function. See equiv
        changes to xterm.c on 1996-10-31.
        (x_set_window_size): Use cancel_mouse_face.
-        (w32_read_socket): Use cancel_mouse_face.
-        Update frame position when size is restored.
+       (w32_read_socket): Use cancel_mouse_face.
+       Update frame position when size is restored.
 
 1999-06-04  Richard M. Stallman  <rms@gnu.org>