+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.