XEmacs 21.4.4 "Artificial Intelligence".
[chise/xemacs-chise.git.1] / src / ChangeLog
index 787e141..4da413d 100644 (file)
-1999-07-13  XEmacs Build Bot <builds@cvs.xemacs.org>
+2001-07-28  Stephen J. Turnbull  <stephen@xemacs.org>
 
-       * XEmacs 21.2.18 is released
+       * XEmacs 21.4.4 "Artificial Intelligence" is released.
 
-1999-07-08  SL Baur  <steve@mule.m17n.org>
+2001-07-22  Stephen J. Turnbull  <stephen@xemacs.org>
 
-       * event-Xt.c (handle_focus_event_1): Guard FRAME_X_XIC with
-       XIM_XLIB.
-       (emacs_Xt_handle_magic_event): Ditto.
-       * redisplay-x.c (x_output_string): Ditto.
-       (x_output_eol_cursor): Ditto.
+       * event-msw.c (mswindows_wnd_proc): Add GC debugging assert.
 
-1999-06-30  Kazuyuki IENAGA <kazz@imasy.or.jp>
+2001-07-22  Stephen J. Turnbull  <stephen@xemacs.org>
 
-       *  event-Xt.c, input-method-xlib.c, redisplay-x.c: Avoid the
-       problem that when XIM is destroyed or missed with some reason,
-       xemacs will die.  Now xim=xlib waits the XIM will be ready and
-       endures the case of XIM end up.
+       * config.h.in (IPV6_CANONICALIZE): New #define for --with-ipv6-lookup.
+       * process-unix.c (unix_canonicalize_host_name):
+       sysdep.c (init_system_name):
+       Use it to conditionally support IPv6 canonicalization.
 
-1999-07-03  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+2001-05-31  Paul Stodghill  <stodghil@cs.cornell.edu>
 
-        * tooltalk.c (init_tooltalk): save signal actions for SIGQUIT,
-        SIGINT and SIGCHLD before calling tt_open and restore the
-        afterwards. This fixes e.g. the zombie subprocesses on Solaris
+       * event-msw.c:
+       Cygwin does not define WM_IME_xxx. Modify the #if's accordingly.
 
-1999-07-06  SL Baur  <steve@xemacs.org>
+2001-05-19  Paul Krause  <paulkrause1@mediaone.net>
 
-       * s/linux.h: gcc-2.8 changes for powerpc
-       From Justin Vallon <vallon@mindspring.com>
+       * scrollbar-msw.c: Fixes a crash that occurs on Windows when an
+       attempt is made to scroll when no scroll bar is available.
 
-1999-07-05  Didier Verna  <verna@inf.enst.fr>
+2001-04-19  Glynn Clements  <glynn.clements@virgin.net>
 
-       * indent.c: new symbol Qcoerce.
-       (Fmove_to_column): use it + doc string update.
+       * input-method-motif.c (XIM_delete_frame): New callback.
+       (XIM_init_frame): Register it.  (Reapplied by SJT, it somehow
+       got deleted from 21.4.3.)
 
-1999-07-04  Andy Piper  <andy@xemacs.org>
+2001-06-01  Ben Wing  <ben@xemacs.org>
 
-       * console.c: undo earlier Fprovide changes.
-       * fns.c: ditto.
-       * console.h: ditto.
+       * nt.c (mswindows_utime):
+       * nt.c (close_file_data):
+       fix off-by-one-indirection error.
 
-       * console-tty.c (image_instantiator_format_create_glyphs_tty): new
-       function. validate appropriate image formats for tty.
+2001-05-29  Adrian Aichner  <adrian@xemacs.org>
 
-       * glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM):
-       initialize consoles parameter.
-       (struct image_instantiator_methods): add consoles parameter.
-       (IIFORMAT_VALID_CONSOLE): new function. validate the format on the
-       console.
-       (INITIALIZE_DEVICE_IIFORMAT): validate the format on the given
-       console.
+       * fileio.c: Include nt.h.  Remove lisp_string_set_file_times()
+       because set_file_times() now takes Lisp_Object path, instead of
+       char*.
+       * nt.c: Include buffer.h.
+       * nt.c (convert_from_time_t): New.
+       * nt.c (mswindows_utime): New.  Use utime, since SetFileTime does
+       not set mtime correctly.
+       * nt.h: Declare mswindows_utime().
+       * sysdep.c (set_file_times): set_file_times() now takes Lisp_Object
+       path, instead of char*.
+       * systime.h: Include <sys/utime.h> on WIN32_NATIVE.
 
-       * glyphs-msw.c: declare instantiators for later use.
-       (image_instantiator_format_create_glyphs_mswindows): validate xpm
-       and friends on the mswindows console.
-       * glyphs-x.c: ditto.
+2001-05-30  Ben Wing  <ben@xemacs.org>
 
-       * glyphs.c (valid_image_instantiator_format_p): disallow glyphs
-       that have not been registered on the supplied device.
-       (Fvalid_image_instantiator_format_p): add locale argument.
-       (instantiate_image_instantiator): valid image instantiator on the
-       device.
+       For 21.4:
 
-       * symsinit.h: add image_instantiator_format_create_glyphs_tty()
-       declaration.
+       (Stephen, just take all event-msw.c patches.  This includes
+       the "iconify" fix below.)
 
-       * emacs.c (main_1): add call to
-       image_instantiator_format_create_glyphs_tty().
+       * event-msw.c:
+       * event-msw.c (mswindows_dequeue_dispatch_event):
+       * event-msw.c (assert):
+       * event-msw.c (emacs_mswindows_quit_p):
+       * event-msw.c (debug_mswin_messages):
+       * event-msw.c (debug_output_mswin_message):
+       * event-msw.c (vars_of_event_mswindows):
+       Fix yet more problems with C-g handling.
+       Implement debug-mswindows-events.
+       
+2001-05-24  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
 
-1999-06-29  Olivier Galibert  <galibert@pobox.com>
+       * event-msw.c (WM_DROPFILES): Use correct type for OLE characters.
+       
+2001-05-23  Ben Wing  <ben@xemacs.org>
 
-       * lisp.h: Add #include <stddef.h>.
+       * event-msw.c (winsock_writer):
+       * event-msw.c (winsock_closer):
+       prior kludgy code was clobbering the buffer, thinking it was
+       "unused" space to store an unneeded return value; instead, use
+       the variable we've already got staring us in the face.
 
-       * sysdep.c: Remove #include <stddef.h>.
-       * symbols.c: Remove #include <stddef.h>.
-       * sheap.c: Remove #include <stddef.h>.
-       * opaque.c: Remove #include <stddef.h>.
-       * nt.c: Remove #include <stddef.h>.
-       * mule-charset.c: Remove #include <stddef.h>.
-       * marker.c: Remove #include <stddef.h>.
-       * file-coding.c: Remove #include <stddef.h>.
-       * extents.c: Remove #include <stddef.h>.
-       * elhash.c: Remove #include <stddef.h>.
-       * data.c: Remove #include <stddef.h>.
-       * chartab.c: Remove #include <stddef.h>.
-       * bytecode.c: Remove #include <stddef.h>.
-       * alloc.c: Remove #include <stddef.h>.  Fix vector description
+2001-05-17  Andy Piper  <andy@xemacs.org>
 
-1999-06-30  SL Baur  <steve@miho.m17n.org>
+       * sysfile.h: don't assume that file attributes are boolean
 
-       * editfns.c: Document "%s" format spec.
-       Suggested by Bob Weiner <weiner@altrasoft.com>
+2001-05-23  Ben Wing  <ben@xemacs.org>
 
-1999-06-29  Andy Piper  <andy@xemacs.org>
+       * device-msw.c (msprinter_init_device):
+       signal an error rather than crash with an unavailable network
+       printer (from Mike Alexander).
+       
+       * event-msw.c:
+       * event-msw.c (struct winsock_stream):
+       * event-msw.c (winsock_writer):
+       * event-msw.c (winsock_closer):
+       * event-msw.c (make_winsock_stream_1):
+       cleanup headers.  fix (hopefully) an error with data corruption
+       when sending to a network connection.
+
+       * fileio.c (Fexpand_file_name): Fix evil code that attempts
+       to handle the ~user prefix by (a) always assuming we're referencing
+       ourselves and not even verifying the user -- hence any file with
+       a tilde as its first char is invalid! (b) if there wasn't a slash
+       following the filename, the pointer was set *past* the end of
+       file and we started reading from uninitialized memory.  Now we
+       simply treat these as files, always.
+
+       * buffer.c (common_init_complex_vars_of_buffer): comment change.
+       
+2001-05-19  Ben Wing  <ben@xemacs.org>
+
+       * eval.c: doc comment about gcpro'ing in record_unwind_protect.
 
-       * event-msw.c: fix definition booboo.
+       * process-nt.c:
+       * process-nt.c (vars_of_process_nt):
+       remove unused mswindows-quote-process-args.  rec for 21.4.
+       
+2001-05-12  Ben Wing  <ben@xemacs.org>
 
-1999-06-28  Andy Piper  <andy@xemacs.org>
+       * event-msw.c (mswindows_dde_callback):
+       * event-msw.c (mswindows_wnd_proc):
+       eliminate cygwin warnings.
 
-       * glyphs-x.c: change tree -> tree-view, progress ->
-       progress_gauge, edit -> edit-field, tab -> tab-control, combo ->
-       combo-box.
-       (complex_vars_of_glyphs_x): provide-on-console the implemented
-       widget types.
+2001-05-06  Ben Wing  <ben@xemacs.org>
 
-       * glyphs-msw.c: ditto.
-       (complex_vars_of_glyphs_mswindows): ditto.
+       * console-msw.h:
+       * device-msw.c:
+       * device-msw.c (print_dialog_worker):
+       * device-msw.c (mswindows_handle_print_dialog_box):
+       * device-msw.c (syms_of_device_mswindows):
+       * dialog-msw.c (mswindows_make_dialog_box_internal):
+       * general-slots.h:
+       implement printing the selection when it's selected.
 
-       * lisp.h: add Fprovide_on_console.
+2001-05-20  Drazen Kacar  <dave@arsdigita.com>
 
-       * fns.c (Ffeaturep): add extra optional console argument.
-       (Fprovide_on_console): like Fprovide but provides only on the
-       specified console-type.
-       (Frequire): check console-features as well as global features.
+       * glyphs-gtk.c (gtk_resource_instantiate): C++ comment -> #if 0
 
-       * console.c (Fconsole_features): new function. return features for
-       this console.
-       (syms_of_console): add Fconsole_features.
+2001-05-11  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-       * console.h (CONMETH_FEATURES): new function for accessing features.
-       (CONSOLE_FEATURES): ditto.
-       (struct console_methods): add features slot.
-       (INITIALIZE_CONSOLE_TYPE): initialize features slot.
+       * lisp.h (EMACS_INT_MAX): This should be one bit less since
+       EMACS_INT is signed.
 
-1999-06-28  Andy Piper  <andy@xemacs.org>
+2001-04-15  Michael Lausch  <mla@1012surf.net>
 
-       * event-Xt.c (handle_focus_event_1): conditionally compile for
-       X11R5.
+       * scrollbar-gtk.c (gtk_create_scrollbar_instance): Call
+       gtk_widget_request_size() to give scrollbar >0 width for
+       GTK >1.2.8.
 
-       * s/cygwin32.h: fix me website address.
+2001-05-30  William M. Perry  <wmperry@gnu.org>
 
-       * event-msw.c: add NMHDR for pre b20 cygwin builds.
+       * event-gtk.c: Check for buttons as modifier keys.
 
-       * gui-x.c (button_item_to_widget_value): only add callback if it
-       is non-nil.
+2001-05-25  Craig Lanning  <CraigL@Knology.net>
 
-       * glyphs-x.c: add progress, edit and combo instantiators.
-       (x_widget_set_property): new function. uses lwlib to set widget
-       values.
-       (x_widget_property): new function. uses lwlib to get widget
-       values.
-       (x_button_instantiate): support images in buttons.
-       (x_button_property): new function. use lwlib to get the selected
-       state.
-       (x_progress_instantiate): new function for instantiating progress
-       gauges.
-       (x_progress_set_property): new function. sets the progress gauge
-       position.
-       (x_edit_instantiate): new function. for instantiating edit fields.
-       (x_combo_instantiate): new function. for instantiating combo
-       boxes.
-       (image_instantiator_format_create_glyphs_x): add new device ii
-       formats.
+       * s\mingw32.h:
+       Properly find MinGW's <process.h> inside Cygwin's restructured
+       include directories.  Don't try to include <cygwin/version.h>
+       since we are dropping support for MinGW in versions of Cygwin
+       earlier than b21.
+       * nt.c:
+       Drop support for MinGW in versions of Cygwin before b21.
+       * sysdep.c:
+       Properly find MinGW's <process.h> inside Cygwin's restructured
+       include directories.
+       * syswindows.h:
+       Drop support for MinGW in versions of Cygwin before b21.
+       * unexcw.c:
+       Even though a.out.h is no longer detected by configure, allow
+       MinGW to use it until we figure out how to do the job with Win32.
 
-       * glyphs-msw.c (mswindows_tab_instantiate): remove redundant var.
+2001-07-11  Matt Tucker  <tuck@whistlingfish.net>
 
-       * console.h (CONSOLE_FEATURES): new features accesor.
+       * syntax.c (find_start_of_comment):
+       Fix `unbalanced parentheses' bug when dealing with mixed comment
+       styles in c++/java/etc. mode
 
-       * conslots.h (MARKED_SLOT): add features entry.
+2001-05-29  Mike Alexander  <mta@arbortext.com>
 
-1999-06-25  Andy Piper  <andy@xemacs.org>
+       * console-msw.h (FRAME_MSPRINTER_CHARHEIGHT): Unswap
+       FRAME_MSPRINTER_CHARWIDTH and FRAME_MSPRINTER_CHARHEIGHT
 
-       * menubar-x.c (menu_item_descriptor_to_widget_value_1): use new
-       gui functions.
+2001-05-17  Andrew Begel  <abegel@eecs.berkeley.edu>
 
-       * menubar-msw.c: move MAX_MENUITEM_LENGTH to gui.h
+       * lrecord.h (INIT_EXTERNAL_LRECORD_IMPLEMENTATION): Add needed cast.
 
-       * gui.h (struct Lisp_Gui_Item): add accelerator.
+2001-03-31  Mike Sperber <mike@xemacs.org>
 
-       * gui.c (gui_item_add_keyval_pair): deal with accelerators.
-       (gui_item_init): ditto.
-       (gui_add_item_keywords_to_plist): ditto.
-       (mark_gui_item): ditto.
-       (gui_item_hash): ditto.
-       (gui_item_accelerator): new function.
-       (gui_name_accelerator): new function stolen from gui-x.c
+       * search.c (Freplace_match): Support FSF-style specification of
+       match subexpression when applied to a buffer.
 
-       * gui-x.c (popup_selection_callback): always define. mark
-       subwindows changed after calling a callback.
-       (menu_name_to_accelerator): deleted.
-       (button_item_to_widget_value): forward gui_item things to gui_item
-       functions.
+2001-05-27  Karl M. Hegbloom  <karlheg@hegbloom.net>
 
-       * glyphs-x.h (struct x_subwindow_data): add data for widgets. add
-       appropriate accesors.
-
-       * glyphs-x.c: declare new glyph formats.
-       (x_finalize_image_instance): unmanage and destroy widgets if they
-       exist.
-       (x_unmap_subwindow): handle widgets specially.
-       (x_map_subwindow): ditto. offset display of widgets by offset of
-       text widget within container.
-       (x_update_subwindow): new function. call lw_modify_all_widgets
-       when we are a widget.
-       (x_widget_instantiate): new function for generically creating
-       widgets-glyphs. toolkit specifics forwarded to lwlib.
-       (x_button_instantiate): new function for instantiating
-       widgets-glyph buttons.
-       (console_type_create_glyphs_x): register update_subwindow.
-       (image_instantiator_format_create_glyphs_x): register widget and
-       button types.
-
-       * event-msw.c (mswindows_wnd_proc): remove redundant variable.
-
-       * event-Xt.c (x_event_to_emacs_event): call handle_focus_event_1
-       when we get a button press in case we do not have the focus.
-       (handle_focus_event_1): set the keyboard focus to the text widget
-       if we do not have it.
-
-       * dialog-x.c (dbox_descriptor_to_widget_value): use new gui_item
-       functions.
-
-1999-06-24  SL Baur  <steve@miho.m17n.org>
-
-       * syntax.c (scan_words): Restore non-Mule code.
-       (word_constituent_p): Restore.
-
-1999-06-23  Olivier Galibert  <galibert@pobox.com>
-
-       * config.h.in: Add missing #undef *_USER_DEFINED.
-
-1999-06-23  SL Baur  <steve@miho.m17n.org>
-
-       * lisp.h (set_bit_vector_bit): Force promotion to unsigned long
-       int (fixes a 64-bit problem).
-
-       * chartab.c (word_boundary_p): Use EQ not == for lisp_object
-       comparison.
-
-1999-03-23  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
-
-       * paths.h.in (PATH_DOC): Made doc-directory configurable.
-
-1999-06-22  Olivier Galibert  <galibert@pobox.com>
-
-       * lrecord.h: Added basic external description system.
-
-       * symbols.c: Added symbol, symbol-value-buffer-local,
-       symbol-value-lisp-magic and symbol-value-varalias description.
-       * mule-charset.c: Added charset description.
-       * marker.c: Added marker description.
-       * keymap.c: Added keymap description.
-       * glyphs.c: Added glyph description.
-       * floatfns.c: Added float description.
-       * file-coding.c: Added coding-system description.
-       * extents.c: Added extent description.
-       * elhash.c: Added hash-table description.
-       * data.c: Added weak-list desciption.
-       * chartab.c: Added char-table-entry and char-table description.
-       * bytecode.c: Added compiled-function description.
-       * alloc.c: Added cons, vector and string description.
-
-1999-06-22  Olivier Galibert  <galibert@pobox.com>
-
-       * lrecord.h (struct lrecord_header): Reduced size to 4 bytes.
-       Updated everything to the removal of the "flags" substructure.
-
-       * lisp.h (subr_lheader_initializer): Updated.
-       * symeval.h (symbol_value_forward_lheader_initializer): Updated.
-
-1999-06-20  MORIOKA Tomohiko  <tomo@etl.go.jp>
-
-       * syntax.c (word_constituent_p): Deleted.
-       (scan_words): Use `WORD_BOUNDARY_P'.
-
-       * chartab.c (Vword_combining_categories): New variable.
-       (Vword_separating_categories): Likewise.
-       (CATEGORYP): New macro.
-       (CATEGORY_SET): Likewise.
-       (CATEGORY_MEMBER): Likewise.
-       (word_boundary_p): New function.
-       (complex_vars_of_chartab): Set up new variable
-       `word-combining-categories' and `word-separating-categories'.
-
-1999-06-18  Olivier Galibert  <galibert@pobox.com>
-
-       * lrecord.h: Added description as a placehold in the lrecord
-       implementation structures.  Added the parameter to all constructor
-       defines.
-
-       * alloc.c: Added placeholders.
-       * buffer.c: Ditto.
-       * bytecode.c: Ditto.
-       * chartab.c: Ditto.
-       * console.c: Ditto.
-       * data.c: Ditto.
-       * database.c: Ditto.
-       * device.c: Ditto.
-       * eldap.c: Ditto.
-       * elhash.c: Ditto.
-       * eval.c: Ditto.
-       * event-stream.c: Ditto.
-       * events.c: Ditto.
-       * extents.c: Ditto.
-       * faces.c: Ditto.
-       * file-coding.c: Ditto.
-       * floatfns.c: Ditto.
-       * fns.c: Ditto.
-       * frame.c: Ditto.
-       * glyphs.c: Ditto.
-       * gui-x.c: Ditto.
-       * keymap.c: Ditto.
-       * lstream.c: Ditto.
-       * marker.c: Ditto.
-       * mule-charset.c: Ditto.
-       * objects.c: Ditto.
-       * opaque.c: Ditto.
-       * process.c: Ditto.
-       * rangetab.c: Ditto.
-       * specifier.c: Ditto.
-       * symbols.c: Ditto.
-       * toolbar.c: Ditto.
-       * tooltalk.c: Ditto.
-       * window.c: Ditto.
-
-1999-06-22  XEmacs Build Bot <builds@cvs.xemacs.org>
+       * event-stream.c (is_scrollbar_event): add missing semicolon
 
-       * XEmacs 21.2.17 is released
-
-1999-06-13  Oscar Figueiredo  <oscar@xemacs.org>
-
-       * config.h.in (HAVE_LDAP_SET_OPTION): New define
-       (HAVE_LDAP_GET_LDERRNO): Ditto
-       (HAVE_LDAP_RESULT2ERROR): Ditto
-       (HAVE_LDAP_PARSE_RESULT): Ditto
-       (HAVE_UMICH_LDAP): Removed
-       (HAVE_NS_LDAP): Removed
-
-       * eldap.h (struct Lisp_LDAP): Removed the `livep' member as
-       suggested by Olivier Galibert
-       (CHECK_LIVE_LDAP): Test on `ld' instead of `livep'
-
-       * eldap.c: Take the removal of `livep' into account in all the
-       necessary functions
-       (signal_ldap_error): Take two additional parameters
-       Added new finer compilation conditions in order to use
-       ldap_parse_result or ldap_result2error if available
-       (Fldap_open): Conform to this new API
-       (Fldap_search_internal): Ditto
-
-1999-06-17  SL Baur  <steve@miho.m17n.org>
-
-       * data.c (struct int_or_double): Should use EMACS_INT not int.
-
-1999-06-16  Norbert Koch  <n.koch@eai-delta.de>
-
-       * redisplay-msw.c: Run 'ccl_driver' with 'CCL_MODE_ENCODING' as in
-       redisplay-x.c
-
-1999-06-12  MORIOKA Tomohiko  <tomo@etl.go.jp>
-
-       * redisplay-x.c (separate_textual_runs): Run `ccl_driver' with
-       `CCL_MODE_ENCODING'.
-
-       * file-coding.c (mule_decode): Run `ccl_driver' with
-       `CCL_MODE_DECODING'.
-       (mule_encode): Run `ccl_driver' with `CCL_MODE_ENCODING'.
-
-       * mule-ccl.c (CCL_WRITE_CHAR): Refer `conversion_mode'.
-       (ccl_driver): Add new argument `conversion_mode'.
-       (Fccl_execute): Run `ccl_driver' with `CCL_MODE_ENCODING'.
-       (Fccl_execute_on_string): Likewise [perhaps it is better to add
-       new optional argument].
-
-       * mule-ccl.h (CCL_MODE_ENCODING): New macro.
-       (CCL_MODE_DECODING): New macro.
-       (ccl_driver): Add new argument `conversion_mode'.
-
-1999-06-15  SL Baur  <steve@miho.m17n.org>
-
-       * mule-charset.c (Fsplit_char): New subr.
-       (Fchar_octet): delete.
-       (syms_of_mule_charset): DEFSUBR it.
-
-1999-06-13  Andy Piper  <andy@xemacs.org>
-
-       * menubar.h: update declarations involving gui_items.
-
-       * lisp.h: declare Lisp_Gui_Item.
-
-       * glyphs.h (struct Lisp_Image_Instance): update type of gui_item.
-
-       * glyphs.c (mark_image_instance): modify for new lisp-based gui_items.
-       (print_image_instance): ditto.
-       (image_instance_equal): ditto.
-       (image_instance_hash): ditto.
+2001-05-22  Isaac Hollander  <ysh@mindspring.com>
 
-       * event-msw.c (mswindows_need_event): assert badly_p status.
-       (mswindows_wnd_proc): modify WM_NOTIFY handling to cope with
-       callbacks in tree-view and tab-control widgets.
-       (emacs_mswindows_next_event): modify use of
-       mswindows_dequeue_dispatch_event.
+       * Makefile.in.in: Use TAR macro instead of hardcoding
+         tar.  Allows use of GNU tar instead of system tar
 
-       * dialog-msw.c (mswindows_popup_dialog_box): modify for new
-       lisp-based gui_items.
+2001-05-27  Karl M. Hegbloom  <karlheg@hegbloom.net>
 
-       * glyphs-msw.c (mswindows_update_subwindow): update use of
-       gui_items.
-       (mswindows_register_gui_item): new function.
-       (mswindows_register_gui_item): fix to use lisp gui_items.
-       (mswindows_widget_instantiate): ditto.
-       (mswindows_button_instantiate): ditto.
-       (add_tree_item): new function to recursively add tree view
-       elements.
-       (add_tree_item_list): ditto.
-       (mswindows_tree_instantiate): new function. instantiate tree view
-       controls.
-       (add_tab_item): new function to add tabs to a tab control.
-       (mswindows_tab_instantiate): new function. instantiate tab
-       controls.
-       (image_instantiator_format_create_glyphs_mswindows): add tree view
-       and tab controls.
-       (vars_of_glyphs_mswindows): ditto.
-
-       * glyphs-widget.c (check_valid_item_list_1): allow nested lists in
-       item lists.
-       (check_valid_item_list): ditto.
-       (initialize_widget_image_instance): fix to use new lisp gui_item.
-       (widget_instantiate_1): allow the setting of default textwidth in
-       characters.
-       (widget_instantiate): change to use new widget_instantiate_1
-       signature.
-       (combo_instantiate): ditto.
-       (static_instantiate): ditto.
-       (tab_instantiate): new function for tab widgets.
-       (image_instantiator_format_create_glyphs_widget): add tab and tree
-       view widgets.
-
-       * menubar-msw.c (displayable_menu_item): convert to use lisp
-       gui_items.
-       (populate_menu_add_item): ditto.
-       (populate_or_checksum_helper): ditto.
-
-       * menubar.c (menu_parse_submenu_keywords): convert to use lisp
-       gui_items.
-       (Fmenu_find_real_submenu): ditto.
-
-       * gui.h (struct Lisp_Gui_Item): make gui_item a lisp oebjct.
-
-       * gui.c (gui_item_add_keyval_pair): gui_items are now lisp
-       objects, convert functions that use them accordingly.
-       (gui_item_init): ditto.
-       (gui_item_active_p): ditto.
-       (gui_item_selected_p): ditto.
-       (gui_item_included_p): ditto.
-       (gui_item_display_flush_left): ditto.
-       (gui_item_display_flush_right): ditto.
-       (mark_gui_item): ditto.
-       (allocate_gui_item): new function to create a gui_item.
-       (make_gui_item_from_keywords_internal): ditto. create and return a
-       gui_item as well as setting keywords.
-       (gui_parse_item_keywords): ditto.
-       (gui_parse_item_keywords_no_errors): ditto.
-       (gui_add_item_keywords_to_plist): new function, not yet used.
-       (gui_item_hash): new function.
-       (gui_item_id_hash): use gui_item_hash.
-       (gui_item_equal): new function.
-       (print_gui_item): new function.
+       * event-stream.c (is_scrollbar_event): add missing semicolon
+
+2001-05-17  Stephen J. Turnbull  <stephen@xemacs.org>
 
-1999-06-11  XEmacs Build Bot <builds@cvs.xemacs.org>
+       * XEmacs 21.4.3 "Academic Rigor" is released.
 
-       * XEmacs 21.2.16 is released
+2001-05-17  Stephen J. Turnbull  <stephen@xemacs.org>
 
-1999-06-10  Andy Piper  <andy@xemacs.org>
+       * regex.c: Define DECLARE_NOTHING when "lisp.h" is not included.
 
-       * select-msw.c (mswindows_own_selection): only set the clipboard
-       if asked.
-       (mswindows_get_foreign_selection): only get the clipboard if
-       asked.
-       (mswindows_disown_selection): only disown the clipboard if asked.
+2001-05-08  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-1999-06-03  MORIOKA Tomohiko  <tomo@etl.go.jp>
+       * buffer.c (Vcase_fold_search): Remove obsolete
+         comment about non ASCII case-fold-search.  This
+         bug has been fixed by case-table changes.
 
-       * file-coding.c (coding_system_from_mask): Use `raw-text' instead
-       of `no-conversion'.
-       (complex_vars_of_mule_coding): Use `raw-text' as the coding-system
-       of coding-category `no-conversion'.
+2001-05-11  Stephen J. Turnbull  <stephen@xemacs.org>
 
-1999-06-03  MORIOKA Tomohiko  <tomo@etl.go.jp>
+       * event-msw.c: Restore include of events-mod.h.
 
-       * file-coding.c (Qraw_text): New variable.
-       (syms_of_mule_coding): Add new symbol `raw-text'.
-       (complex_vars_of_mule_coding): Add new coding-system `raw-text';
-       define coding-system `binary' independently; define coding-system
-       `no-conversion' as an alias for `raw-text'.
+2001-04-22   zhaoway  <zw@debian.org>
 
-       * file-coding.h (Qraw_text): New variable.
+       * event-stream.c (is_scrollbar_event): Noop returning 0 if
+       !HAVE_SCROLLBARS.
 
-1999-06-08  SL Baur  <steve@xemacs.org>
+2001-05-10  Stephen J. Turnbull  <stephen@xemacs.org>
 
-       * s/decosf4-0.h: Explicitly #undef SYSTEM_MALLOC.
+       * XEmacs 21.4.2 "Developer-Friendly Unix APIs" is released.
 
-1999-06-06  Hrvoje Niksic  <hniksic@srce.hr>
+2001-05-08  Yoshiaki Kasahara  <kasahara@nc.kyushu-u.ac.jp>
 
-       * fns.c (MIME_LINE_LENGTH): Default to 72, as in mimencode and
-       base64.el.
-       (base64_decode_1): Signal errors instead of returning -1.
+       * mule-charset.c (Fmake_charset): Add missing else.
 
-1999-06-07  Hrvoje Niksic  <hniksic@srce.hr>
+2001-04-23  Ben Wing  <ben@xemacs.org>
 
-       * mule-charset.c (Fmake_char): Update docstring.
+       * event-msw.c (FAKE_MOD_QUIT):
+       * event-msw.c (mswindows_dequeue_dispatch_event):
+       * event-msw.c (mswindows_wnd_proc):
+       * event-msw.c (emacs_mswindows_quit_p):
+       Get critical quit working.
 
-1999-06-07  Hrvoje Niksic  <hniksic@srce.hr>
+2001-05-05  Ben Wing  <ben@xemacs.org>
 
-       * fns.c (Fstring_lessp): Actually increment the Bufbyte pointers.
+       * console-msw.h:
+       * device-msw.c:
+       * device-msw.c (mswindows_get_default_margin):
+       * frame-msw.c (mswindows_size_frame_internal):
+       * frame-msw.c (msprinter_init_frame_1):
+       * frame-msw.c (vars_of_frame_mswindows):
+       Change top/bottom margin defaults to 0.5 inches.
 
-1999-06-05  Hrvoje Niksic  <hniksic@srce.hr>
+2001-05-01  Martin Buchholz  <martin@xemacs.org>
 
-       * fns.c (base64_decode_1): Allow and ignore any non-base64
-       characters in input.
+       Fix link error with gcc 3.0 on Linux.
+       * terminfo.c (UP): Remove.
+       * terminfo.c (BC): Remove.
+       * terminfo.c (PC): Remove.
+       They weren't used, and in any case, these symbols should be
+       defined in the *library*.
 
-1999-05-27  Olivier Galibert  <galibert@pobox.com>
+2001-05-03  Martin Buchholz  <martin@xemacs.org>
 
-       * emacs.c (Fdump_emacs): Add clear_message() lost with the removal
-       of report_pure_usage().
+       * s/aix4.h: Fix crash with xlc -O3.
+       Improve comment explaining how -O3 works.
 
-1999-06-04  Hrvoje Niksic  <hniksic@srce.hr>
+2001-04-15  Ben Wing  <ben@xemacs.org>
 
-       * fns.c (Fstring_lessp): Remove O(n^2) under Mule.
+       * event-stream.c:
+       * event-stream.c (Fnext_event):
+       * event-stream.c (is_scrollbar_event):
+       * event-stream.c (execute_command_event):
+       Better fix for Yoshiki's `C-x @ h <scrollbar-drag> x causes a
+       crash' problem.  His fix introduces other problems.  We filter
+       out scrollbar events specifically, making them somewhat invisible
+       to command-building, and not appearing in `this-command-keys'.
+       More work is still needed (see comments in event-stream.c), but
+       this fixes all the major problems.
 
-1999-06-04  XEmacs Build Bot <builds@cvs.xemacs.org>
+2001-04-20  Ben Wing  <ben@xemacs.org>
 
-       * XEmacs 21.2.15 is released
+       * .cvsignore: Added stuff for Windows.
 
-1999-06-01  Hirokazu FUKUI  <fukui@atesoft.advantest.co.jp>
+2001-04-28  Ben Wing  <ben@xemacs.org>
 
-       * frame.c (Fset_mouse_position):
-       (Fset_mouse_pixel_position):
-       * window.c (Fsplit_window):
-       (Fmove_to_window_line):
-       Fix crash when invoking functions with an already-deleted window
-       argument.
+       * buffer.c (Ferase_buffer):
+       * editfns.c (buffer_insert1):
+       * editfns.c (Finsert_before_markers):
+       * editfns.c (Finsert_string):
+       * editfns.c (Finsert_char):
+       * editfns.c (Fdelete_region):
+       * editfns.c (Fwiden):
+       * editfns.c (Fnarrow_to_region):
+       remove bogus lines setting zmacs_region_stays to 0.
+       
+2001-04-15  Gunnar Evermann  <ge204@eng.cam.ac.uk>
 
-       * indent.c (vertical_motion_1):
-       (vmotion_pixels):
-       (Fvertical_motion_pixels):
-       * window.c (Fwindow_displayed_text_pixel_height):
-       Fix error message when invoking functions with an already-deleted
-       window argument.
+       * process-unix.c (unix_open_network_stream): If connect() fails
+       invalidate file descriptor after closing it.
 
-1999-06-01  Jan Vroonhof  <vroonhof@math.ethz.ch>
+2001-03-08  Mike Alexander  <mta@arbortext.com>
 
-       * sysdep.c (request_sigio_on_device): Guard against glibc
-       2.1's stub streams implementation.
+       * event-msw.c (mswindows_need_event_in_modal_loop):
+       Don't dispatch a message if we didn't get one.
+       (mswindows_need_event):
+       Terminate the correct process when one exits instead of the first
+       one on Vprocess_list and look for process termination when in
+       mswindows_protect_modal_loop.
 
-1999-06-03  SL Baur  <steve@xemacs.org>
+2001-04-19  Stephen J. Turnbull  <stephen@xemacs.org>
 
-       * config.h.in:
-       * emacs.c:  Implement x.y.z version numbers
-       From Jan Vroonhof <vroonhof@math.ethz.ch>
+       * XEmacs 21.4.1 "Copyleft" is released.
 
-1999-05-20  MORIOKA Tomohiko  <tomo@etl.go.jp>
+2001-04-19  Glynn Clements  <glynn.clements@virgin.net>
 
-       * mule-charset.c (complex_vars_of_mule_charset): Registry of
-       japanese-jisx0208-1978 should not match with "jisx0208.1983" nor
-       "jisc6226.1983".
+       * input-method-motif.c (XIM_delete_frame): New callback.
+       (XIM_init_frame): Register it.
 
-1999-06-03  SL Baur  <steve@xemacs.org>
+2001-04-16  Stephen J. Turnbull  <stephen@xemacs.org>
 
-       * frame-x.c:
-       * device-x.c: rename session option to wmcommand.
-       From Oliver Graf <ograf@rhein-zeitung.de>
+       * XEmacs 21.4.0 "Solid Vapor" is released.
 
-1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
+2001-04-15  Ben Wing  <ben@xemacs.org>
 
-       * fns.c (Fsubstring): Don't traverse the same region twice with
-       charcount_to_bytecount().
+       * cmdloop.c (call_command_loop):
+       Fix braino in bit-rotting code.
+       
+2001-04-07  Hrvoje Niksic  <hniksic@arsdigita.com>
 
-1999-06-03  SL Baur  <steve@steve1.m17n.org>
+       * extents.c (Fset_extent_endpoints): Force creation of extent info
+       in buffer_or_string.
 
-       * m/alpha.h (SYSTEM_MALLOC): Fix indented preprocessor directive
-       garbage.
+       * extents.c (process_extents_for_insertion_mapper): Correctly
+       check for open-open zero-length extents.
 
-       * s/decosf4-0.h: Defining ORDINARY_LINK here is redundant (and it
-       doesn't really work as is implied by the commentary).
-       Don't define SYSTEM_MALLOC so the old GNU malloc can be used.
+2001-04-16  Stephen J. Turnbull  <stephen@xemacs.org>
 
-1999-06-02  SL Baur  <steve@steve1.m17n.org>
+       * lisp.h: New typedefs Memory_count, Element_count.
+       * regex.c:
+       * regex.h:
+       Sign-compare warning elimination: several unsigned -> signed.
+       Based on work by Ben Wing <ben@xemacs.org>.
 
-       * symsinit.h: Declare vars_of_ntproc.
-       * emacs.c (main_1): Call it.
+2001-04-14  Stephen J. Turnbull  <stephen@xemacs.org>
 
-       * ntproc.c (syms_of_ntproc): Move variable initializations from
-       here ...
-       (vars_of_ntproc): ... to here [new function].
+       * XEmacs 21.2.47 "Zephir" is released.
 
-       * file-coding.c (syms_of_file_coding): Rename.
-       (vars_of_file_coding): Ditto.
-       (complex_vars_of_file_coding): Ditto.
+2001-04-02  Jan Vroonhof  <jan@xemacs.org>
 
-       * symsinit.h: Rename *_mule_coding to *_file_coding.
+       * redisplay.c (add_bufbyte_string_runes): Update data->bytepos
 
-       * emacs.c (main_1): Call them by the proper name.
+2001-04-03  Mike Sperber <mike@xemacs.org>
 
-       * device-msw.c (syms_of_device_mswindows): Move variable
-       initializations from here ...
-       (vars_of_device_mswindows): ... to here.
+       * search.c: Revert previous patch due because of release.
 
-       * chartab.c (vars_of_chartab): New function.
+2001-03-30  Ben Wing  <ben@xemacs.org>
 
-       * symsinit.h: New function, vars_of_chartab.
+       * s\cygwin32.h:
+       Add missing killpg prototype.
 
-       * emacs.c (main_1): Call it.
+       * elhash.c:
+       Add a comment about fixing problems when a new entry is added
+       while mapping.
+
+       * frame-msw.c (mswindows_init_frame_1):
+       Fix compile warnings.
+
+       * menubar.c (vars_of_menubar):
+       Provide `menu-accelerator-support' to indicate that we properly
+       support %_ in menu specifications, so that package code can
+       conditionalize on this (and remove %_ from menu specifications
+       on older versions).
 
-       * mule-canna.c (syms_of_mule_canna): Move CANNA initialization ...
-       (vars_of_mule_canna): ... to here.
+       * event-msw.c:
+       * scrollbar-msw.c:
+       * scrollbar-msw.c (can_scroll):
+       * scrollbar-msw.h:
+       Fix handling of mouse wheel under Windows to follow standards --
+       now scrolls window under pointer, not selected window.
 
-       * mule-ccl.c (vars_of_mule_ccl): New function.  Move variable
-       initializations out of syms_of_mule_ccl.
+2001-03-31  Mike Sperber <mike@xemacs.org>
 
-       * symsinit.h: Declare new function vars_of_mule_ccl.
+       * search.c (Freplace_match): Support FSF-style specification of
+       match subexpression when applied to a buffer.
 
-       * emacs.c (main_1): Call it.
+2001-03-15  Martin Buchholz  <martin@xemacs.org>
+
+       * keymap.c (Fmap_keymap): map-keymap explicitly allows a mapping
+       function to modify KEYMAP, so map over a copy of the hash table.
 
-1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
+2001-03-21  Martin Buchholz <martin@xemacs.org>
 
-       * fns.c (base64_decode_1): Ignore whitespace.
+       * XEmacs 21.2.46 "Urania" is released.
 
-1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
+2001-03-20  Dan Holmsand  <dan@eyebee.com>
 
-       * mule-charset.c (Fmake_char): Strip the eighth bit off ARG1 and
-       ARG2.
+       * realpath.c (xrealpath): Make file-truename work with symlinks to
+       /cygdrive paths on cygwin. Always lowercase drive-letters on
+       native windows.
+       (cygwin_readlink): Don't try to find canonical filename unless
+       file exists.
 
-1999-05-21  Andy Piper  <andy@xemacs.org>
+2001-03-15  Stephen J. Turnbull  <stephen@xemacs.org>
 
-       * xselect.c: deleted.
+       * ChangeLog: Log GTK merge.
 
-       * symsinit.h: declare select initialisation.
+       * dumper.c:
+       * select-x.c:
+       * specifier.c:
+       * symeval.h:
+       Revert gratuitous whitespace changes from GTK merge.
 
-       * select.h: new file. declare commonly used select functions and
-       variables.
+       * emacs.c: Document end of complex #ifdef @ l. 1495.
 
-       * select.c: new file. generalised from xselect.c.
-       (clean_local_selection_data): moved from xselect.c.
-       (get_local_selection): ditto. device specific pieces called via a
-       devmeth.
-       (handle_selection_clear): ditto.
-       (Fown_selection_internal): renamed and generalised from
-       Fx_own_selection_internal. moved from xselect.c.
-       (Fdisown_selection_internal): ditto.
-       (Fselection_owner_p): ditto.
-       (Fselection_exists_p): ditto.
-       (Fget_selection_internal): ditto.
-       (syms_of_select): new function. QXXXX values moved from xselect.c
-       (vars_of_select): new function. selection_converter_alist,
-       lost_selection_hooks moved and renamed from xselect.c
 
-       * select-x.c: renamed from xselect.c.
-       (x_own_selection): converted to device specific. non-X-specific
-       bits moved to select.c.
-       (x_get_foreign_selection): ditto.
-       (x_disown_selection): ditto.
-       (x_selection_exists_p): ditto.
-       (console_type_create_select_x): new function.
+2001-03-12  Andy Piper  <andy@xemacs.org>
 
-       * select-msw.c (mswindows_own_selection): new device method to set
-       the clipboard when we 'own' the selection.
-       (mswindows_get_foreign_selection): new device method to get the
-       clipboard.
-       (mswindows_disown_selection): new device method to delete the
-       selection when we 'disown' it.
-       (console_type_create_select_mswindows): new function.
+       * mingw32.h: unfortunately cygnus changed mingw32 -> mingw so we
+       have to do likewise.
 
-       * emacs.c (main_1): add select to things to initialise.
+2001-03-12  Andy Piper  <andy@xemacs.org>
 
-       * console.h (struct console_methods): new console methods for
-       selection.
+       * sysdep.c: we only support mingw now.
 
-       * Makefile.in.in (x_objs): xselect.c renamed to select-x.c
+2001-03-09  Andy Piper  <andy@xemacs.org>
 
-1999-05-20  Hrvoje Niksic  <hniksic@srce.hr>
+       * unexcw.c (copy_executable_and_dump_data_section): making approx
+       overrun a warning only.
 
-       * print.c (long_to_string): Install a faster version.
+2001-03-10  William M. Perry  <wmperry@aventail.com>
 
-1999-05-16  Andy Piper  <andy@xemacs.org>
+       * faces.c (complex_vars_of_faces): Rewrote the font mucking to
+       satisfy Stephen's identical-after-cpp plea.
 
-       * ntproc.c (syms_of_ntproc): default
-       win32-start-process-share-console to t.
+2001-03-02  Ben Wing  <ben@xemacs.org>
 
-1999-05-14  Hrvoje Niksic  <hniksic@srce.hr>
+       * cmds.c:
+       * cmds.c (Fforward_char):
+       * syntax.c:
+       * window.c:
+
+       Augment documentation of the most common motion commands to make
+       note of the shifted-motion support.
+       
+2001-03-02  Ben Wing  <ben@xemacs.org>
 
-       * config.h.in: Do it here.
+       * nt.c (mswindows_fstat):
+       * nt.c (mswindows_stat):
+       * search.c (boyer_moore):
+       Fix compile warnings under Windows.
+       
+       * sysdep.c (sys_readdir):
+       Fix buggy filename-conversion code under Mule.
 
-       * bytecode.c: Don't define ERROR_CHECK_TYPECHECK here.
+2001-03-09  William M. Perry  <wmperry@aventail.com>
+
+       * Makefile.in.in:
+       * config.h.in:
+       * console.c:
+       * console.h:
+       * device.c:
+       * device.h:
+       * dragdrop.c:
+       * emacs.c:
+       * event-stream.c:
+       * events.c:
+       * events.h:
+       * faces.c:
+       * frame.h:
+       * general-slots.h:
+       * glyphs.c:
+       * gutter.c:
+       * inline.c:
+       * lisp.h:
+       * lrecord.h:
+       * make-src-depend:
+       * redisplay-output.c:
+       * redisplay.c:
+       * symsinit.h:
+       * sysfile.h:
+       * toolbar.c:
+       * window.c:
+       The Great GTK Merge.
+
+       * ChangeLog.GTK:
+       * console-gtk.c:
+       * console-gtk.h:
+       * device-gtk.c:
+       * emacs-marshals.c:
+       * emacs-widget-accessors.c:
+       * event-gtk.c:
+       * frame-gtk.c:
+       * gccache-gtk.c:
+       * gccache-gtk.h:
+       * glade.c:
+       * glyphs-gtk.c:
+       * glyphs-gtk.h:
+       * gtk-glue.c:
+       * gtk-xemacs.c:
+       * gtk-xemacs.h:
+       * gui-gtk.c:
+       * gui-gtk.h:
+       * menubar-gtk.c:
+       * native-gtk-toolbar.c:
+       * objects-gtk.c:
+       * objects-gtk.h:
+       * redisplay-gtk.c:
+       * scrollbar-gtk.c:
+       * scrollbar-gtk.h:
+       * select-gtk.c:
+       * toolbar-gtk.c:
+       * ui-byhand.c:
+       * ui-gtk.c:
+       * ui-gtk.h:
+       The Great GTK Merge: new files.
+
+2001-02-26  Ben Wing  <ben@xemacs.org>
+
+       Reapplied Lstream change.
+
+2001-02-26  Ben Wing  <ben@xemacs.org>
+
+       Undid the last change, since it is more controversial than I
+       thought.  It should be back in at some point soon.
+       
+2001-02-25  Ben Wing  <ben@xemacs.org>
 
-1999-05-14  Andy Piper  <andy@xemacs.org>
+       * buffer.c:
+       * callproc.c (Fold_call_process_internal):
+       * event-msw.c (ntpipe_slurp_reader):
+       * event-msw.c (ntpipe_shove_writer):
+       * event-msw.c (winsock_reader):
+       * event-msw.c (winsock_writer):
+       * file-coding.c:
+       * file-coding.c (detect_eol_type):
+       * file-coding.c (detect_coding_type):
+       * file-coding.c (determine_real_coding_system):
+       * file-coding.c (Fdetect_coding_region):
+       * file-coding.c (decoding_reader):
+       * file-coding.c (decoding_writer):
+       * file-coding.c (mule_decode):
+       * file-coding.c (Fdecode_coding_region):
+       * file-coding.c (encoding_reader):
+       * file-coding.c (encoding_writer):
+       * file-coding.c (mule_encode):
+       * file-coding.c (Fencode_coding_region):
+       * file-coding.c (detect_coding_sjis):
+       * file-coding.c (decode_coding_sjis):
+       * file-coding.c (encode_coding_sjis):
+       * file-coding.c (detect_coding_big5):
+       * file-coding.c (decode_coding_big5):
+       * file-coding.c (encode_coding_big5):
+       * file-coding.c (detect_coding_ucs4):
+       * file-coding.c (decode_coding_ucs4):
+       * file-coding.c (encode_coding_ucs4):
+       * file-coding.c (detect_coding_utf8):
+       * file-coding.c (decode_coding_utf8):
+       * file-coding.c (encode_coding_utf8):
+       * file-coding.c (detect_coding_iso2022):
+       * file-coding.c (decode_coding_iso2022):
+       * file-coding.c (encode_coding_iso2022):
+       * file-coding.c (decode_coding_no_conversion):
+       * file-coding.c (encode_coding_no_conversion):
+       * glyphs-x.c (write_lisp_string_to_temp_file):
+       * gpmevent.c (tty_get_foreign_selection):
+       * lisp.h:
+       * lstream.c:
+       * lstream.c (Lstream_flush_out):
+       * lstream.c (Lstream_adding):
+       * lstream.c (Lstream_write_1):
+       * lstream.c (Lstream_write):
+       * lstream.c (Lstream_raw_read):
+       * lstream.c (Lstream_read_more):
+       * lstream.c (Lstream_read):
+       * lstream.c (Lstream_unread):
+       * lstream.c (Lstream_fputc):
+       * lstream.c (stdio_reader):
+       * lstream.c (stdio_writer):
+       * lstream.c (filedesc_reader):
+       * lstream.c (filedesc_writer):
+       * lstream.c (lisp_string_reader):
+       * lstream.c (struct fixed_buffer_stream):
+       * lstream.c (make_fixed_buffer_input_stream):
+       * lstream.c (make_fixed_buffer_output_stream):
+       * lstream.c (fixed_buffer_reader):
+       * lstream.c (fixed_buffer_writer):
+       * lstream.c (struct resizing_buffer_stream):
+       * lstream.c (resizing_buffer_writer):
+       * lstream.c (dynarr_writer):
+       * lstream.c (lisp_buffer_reader):
+       * lstream.c (lisp_buffer_writer):
+       * lstream.h:
+       * lstream.h (lstream_implementation):
+       * lstream.h (struct lstream):
+       * md5.c (Fmd5):
+       * process-nt.c (nt_send_process):
+       * process-unix.c (unix_send_process):
+       
+       Correct Lstream lossage due to mixing of signed and unsigned
+       quantities.  All Lstream uses of size_t and ssize_t are now a
+       single signed data type Lstream_data_count.  This fixes problems
+       under Windows with sending large quantities of data to a process,
+       and may well fix other subtle bugs.
 
-       * toolbar-msw.c (mswindows_output_toolbar): hash on something
-       hashable.
+2001-02-23  Martin Buchholz <martin@xemacs.org>
 
-1999-05-14  XEmacs Build Bot <builds@cvs.xemacs.org>
+       * XEmacs 21.2.45 "Thelxepeia" is released.
 
-       * XEmacs 21.2.14 is released
+2001-02-21  Martin Buchholz  <martin@xemacs.org>
 
-1999-05-12  Andy Piper  <andy@xemacs.org>
+       * lisp-union.h (XSETINT): 
+       (XSETCHAR):
+       (XSETOBJ): 
+       Reverse previous change of 2001-02-06.
 
-       * ntproc.c (sys_spawnve): kludge argv[0] in a MS compatible way.
+2001-02-20  Matt Tucker  <tuck@whistlingfish.net>
 
-1999-05-11  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+       Fix `VALID_BYTIND_P' crashes in regex.c when using narrowed
+       buffers.
+       * syntax.h (SYNTAX_CACHE_BYTE_TO_CHAR):
+       * syntax.h (SYNTAX_CACHE_OBJECT_BYTE_TO_CHAR):
+       Add `BI_BUF_BEGV' to bytepos before calculating bufpos.
+       * regex.c (POS_AS_IN_BUFFER): removed
+       * regex.c (re_search_2):
+       * regex.c (re_match_2):
+       Don't use an offset of 1 when calculating buffer positions, since
+       `BI_BUF_BEGV' does it already.
 
-       * emacs.c (Frun_emacs_from_temacs): (re)alloc natgs+2 entries for
-       run_temacs_argv array -- fixes random memory corruption crash
+2001-02-18  Wim Dumon  <wim@easics.be>
 
-1999-05-12  Jan Vroonhof  <vroonhof@math.ethz.ch>
+       * insdel.c (prepare_to_modify_buffer): Also check for
+       supersession when clash-detection is enabled. 
 
-       * window.c (Fcurrent_window_configuration):
-       Save minibuffer height;
+2001-02-17  Matt Tucker  <tuck@whistlingfish.net>
 
-       * window.c (set_window_configuration): use it.
+       * regex.c (re_match_2_internal):
+       Convert temp characters from 'const unsigned char' to 're_char'.
+       Fix crashing bug with extended characters under mule.
+       * syntax.c (Qsyntax_table): Moved from vars_of_syntax to
+       syms_of_syntax. Use defsymbol to define. Fixes hanging bug with
+       font-lock, pdump, and new syntax-table code.
+       * syntax.c (find_start_of_comment):
+       (find_end_of_comment):
+       (forward-comment):
+       Fix crashing bugs involving moving beyond end of buffer.
+       * syntax.c (find_start_of_comment):
+       Fixed logic to allow proper detection of cases where the same
+       character is used to end both a two-char comment start and a
+       two-char comment end sequence. Fixes `(forward-comment -1)'.
+       * syntax.c (find_start_of_comment):
+       Return position just past last comment-end character for all cases
+       (previously was only done for two-char comment-end sequences).
+       * syntax.c (forward-comment):
+       Take value returned from `find_end_of_comment', rather than
+       incrementing it.
+       * syntax.h (SYNTAX_CACHE_BYTE_TO_CHAR):
+       Properly deal with BUFFERP (syntax_cache.object)
 
-1999-05-10  Robert Pluim  <rpluim@bigfoot.com>
+2001-02-17  Martin Buchholz  <martin@xemacs.org>
 
-       * lisp.h (NNUNGCPRO): fix typo in name of DEBUG_GCPRO version
+       * alloc.c (Fgarbage_collect): 
+       * alloc.c (make_bit_vector_from_byte_vector):
+       -Wsign-compare-correctness.
 
-1999-04-21  Jan Vroonhof  <vroonhof@math.ethz.ch>
+2001-02-16  Martin Buchholz  <martin@xemacs.org>
 
-       * redisplay.c (redisplay_window): Do not put data
-       in the line start cache if it is not guaranteed to be correct
+       * lisp-union.h (XSETINT): Eliminate unnecessary temp var.
+       (XSETCHAR): Likewise.
+       (XSETOBJ): Likewise.
 
-1999-04-02  Jan Vroonhof  <vroonhof@math.ethz.ch>
+2001-02-15  Martin Buchholz  <martin@xemacs.org>
 
-       * window.c (struct window_config): Removed frame
-       size members.
-       (window_config_equal): No longer compare frame sizes.
-       (Fset_window_configuration): Resize old top window to fit in the
-       current frame directly, no longer use a fake frame resize.
-       (Fcurrent_window_configuration): No longer save frame size
+       * mule-canna.c (canna-func-delete_previous): 
+       Rename to canna-func-delete-previous.
 
-1999-05-11  Andy Piper  <andy@xemacs.org>
+2001-02-14  Martin Buchholz  <martin@xemacs.org>
 
-       * ntproc.c (sys_spawnve): actually assign argv[0] instead of the
-       first character.
+       * mule-ccl.c (ccl_driver): Warning suppression.  Use countof.
 
-1999-05-10  Hrvoje Niksic  <hniksic@srce.hr>
+2001-02-13  Matt Tucker  <tuck@whistlingfish.net>
 
-       * sysdep.c (init_system_name): If gethostname gives a proper
-       domain name, don't look further for one.
+       * font-lock.c (find_context): Fix C++ compile errors introduced by
+       recent patch
 
-1999-05-09  Hrvoje Niksic  <hniksic@srce.hr>
+2001-02-13  Martin Buchholz  <martin@xemacs.org>
 
-       * symbols.c (Fintern): Avoid frequent XSYMBOL (foo).
-       (Fintern_soft): Accept a symbol argument.
+       * s/aix4.h: Later versions of IBM C compiler need a bug workaround
+       pragma, but earlier ones barf on the same pragma.
 
-1999-05-06  Hrvoje Niksic  <hniksic@srce.hr>
+2001-02-06  Mike Sperber <mike@xemacs.org>
 
-       * symbols.c (Fintern): ...do it here.
+       * emacs.c (complex_vars_of_emacs): Add `mule-lisp-directory' and
+       `configure-mule-lisp-directory'.
 
-       * lread.c (read_atom): Don't handle keywords here.
+2001-02-12  Martin Buchholz  <martin@xemacs.org>
 
-1999-05-06  Hrvoje Niksic  <hniksic@srce.hr>
+       Make sure dump-id.c is compiled in the same way as other .c's.
+       Fixes pdump compilation failure with HP's cc, which defaults to K&R.
+       * dump-id.h: Remove.
+       * emacs.c: Move dump-id.h into dumper.h.
+       * dumper.h: Move dump-id.h into dumper.h.
+       * Makefile.in.in:
+       Use standard .c.o rule for building dump-id.o.
+       Remove preprocessor flags from link command.
+       Add dump-id.o to ${otherobjs} if PDUMP.
 
-       * symbols.c (reject_constant_symbols): Just use SYMBOL_IS_KEYWORD.
+2001-02-07  Matt Tucker  <tuck@whistlingfish.net>
 
-1999-05-03  Olivier Galibert  <galibert@pobox.com>
+       Port FSF 20.7 syntax table improvements.
+       * syntax.c.
+       * syntax.h.
 
-       * lisp.h (SYMBOL_IS_KEYWORD): A symbol can be a keyword only if it
-       is interned in the main obarray.
+       Fixups for new syntax table stuff.
+       * dired.c: Include syntax.c.
+       (Fdirectory_files): Initialize regex_match_object and
+       regex_emacs_buffer.
+       * extents.h: EXFUN Fnext_extent_change, Fprevious_extent_change,
+       and Fget_char_property.
 
-1999-04-23  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+       Use ported FSF 20.7 syntax table improvements.
+       * font-lock.c.
+       * regex.c.
+       * search.c.
+       
+2001-02-09  Martin Buchholz  <martin@xemacs.org>
 
-       * menubar-x.c (pre_activate_callback): set accelerator field in
-       "No menu" entries to nil. Avoid crash in
-       command_builder_operate_menu_accelerator
+       * regex.c (Boolean): Renamed to `re_bool', to avoid conflict with
+       Unixware's enum boolean from sys/types.h.
 
-1999-05-03  Olivier Galibert  <galibert@pobox.com>
+2001-02-10  Martin Buchholz  <martin@xemacs.org>
 
-       * symeval.h (symbol_value_forward_lheader_initializer): Ditto.
+       Fix support for building with latest Purify.
+       * Makefile.in.in (PURIFY_LIBS): Remove thread flags.
+       (PURIFY_FLAGS): Likewise.
 
-       * lisp.h (DEFUN): Fix lrecord header initialisation.
+2001-02-09  Martin Buchholz  <martin@xemacs.org>
 
-1999-05-02  Andy Piper  <andy@xemacs.org>
+       * fileio.c (lisp_string_set_file_times): New.
+       * fileio.c (Fcopy_file): Use it.
+       Fixes bug:
+       (copy-file filename non-ascii-filename t t)
+       ==> No such file or directory, non-ascii-filename
 
-       * objects-msw.c (mswindows_font_instance_truename): add a ';'.
+2001-02-10  Martin Buchholz  <martin@xemacs.org>
 
-       * ntproc.c (sys_kill): cast using MS mandated defines.
+       * glyphs-x.c (generate_cursor_fg_bg): Avoid a warning.
+       USHRT_MAX seems clearer than ~0 anyways.
 
-1999-04-29  Andy Piper  <andy@xemacs.org>
+2001-02-09  Martin Buchholz  <martin@xemacs.org>
 
-       * m/intel386.h: remove redundant definitions.
+       dumper improvements.  Inspired by Olivier.
+       * dumper.c (pdump_max_align): New.
+       * dumper.c (pdump_add_entry): Use pdump_max_align.
+       * dumper.c (pdump_get_entry_list): Likewise.
+       * dumper.c (pdump_scan_by_alignment): Likewise.
+       Don't iterate through unnecessary alignments.
+       * dumper.c (pdump_file_get): No need to align result of malloc().
+       * dumper.c (pdump_mallocadr): Remove.  
+       The result of malloc() is guaranteed to be maximally aligned.
+       * dumper.c: s/elmt/elt/g;
+       * dumper.c (pdump_object_table): Allocate dynamically, not statically.
+       * dumper.c (pdump_alert_undump_object): Likewise.
+       * dumper.c (pdump_align_table): 
+       Don't support alignments > 64.
+       Store ALIGNOF's, not shift counts, in table.
 
-       * s/mingw32.h: new header for mingw32.
+2001-02-09  Martin Buchholz  <martin@xemacs.org>
 
-       * unexnt.c: (open_input_file): function moved to nt.c.
-       (close_file_data): ditto.
-       (rva_to_section): function moved to ntproc.
+       * s/mingw32.h (HAVE_STRUCT_UTIMBUF): Remove.
+       * s/windowsnt.h (HAVE_STRUCT_UTIMBUF): Remove.
+       * systime.h: Use HAVE_UTIME.
+       * sysdep.c (struct utimbuf): Remove.
+       * sysdep.c (set_file_times): Prefer utime() to utimes().
+       * config.h.in (HAVE_UTIME): New.
+       * config.h.in (HAVE_UTIME_H): Remove.
+       * config.h.in (HAVE_STRUCT_UTIMBUF): Remove.
 
-       * symsinit.h: declare syms_of_ntproc();
+2001-02-09  Martin Buchholz  <martin@xemacs.org>
 
-       * objects-msw.c (mswindows_font_instance_truename): new function.
+       * s/aix4.h: Hide #pragmas inside #ifndef NOT_C_CODE.
 
-       * ntproc.c: remove many warnings.
-       (_sys_read_ahead): moved from nt.c and made static.
-       (rva_to_section): moved from unexnt.c but not defined under
-       mingw32.
-       (win32_executable_type): implement what we can for mingw32
-       headers.
-       (sys_spawnve): fix bad MULE/GCPRO bug in filename handling.
+2001-02-08  Martin Buchholz  <martin@xemacs.org>
 
-       * ntheap.h: remove declarations of functions that are now static.
+       * s/irix6-0.h: Use the standard system memmove, not bcopy.
 
-       * ntheap.c: support static heap.
+2001-02-08  Martin Buchholz <martin@xemacs.org>
 
-       * nt.h: conditionalise X_OK definition.
+       * XEmacs 21.2.44 "Thalia" is released.
 
-       * nt.c: eliminate many warnings and support mingw32.
-       (open_input_file): function moved from unexnt.c and made static
-       (close_file_data): ditto.
-       (_sys_read_ahead): moved to ntproc.c
+2001-02-06  Martin Buchholz  <martin@xemacs.org>
 
-       * emacs.c: make sure syms_of_ntptroc gets called under windows.
+       Fixes crashes in kill-emacs on some systems.
+       * process-unix.c (unix_kill_child_process):
+       It's OK for kill() to fail with ESRCH.
 
-       * console-msw.h: support mingw32.
-       * getloadavg.c: ditto.
-       * ntplay.c: ditto.
-       * sysdep.c: ditto.
-       * sysdir.h: ditto.
-       * systime.h: ditto.
-       * systty.h: ditto.
+2001-02-07  Martin Buchholz  <martin@xemacs.org>
 
-       * config.h.in: dont turn on DEBUG_ENCAPSULATION by default because
-       some systems don't have all of the encapsulated system calls.
+       Contortions to make .gdbinit tricks work on most systems.
+       * alloc.c (dbg_inhibit_dbg_symbol_deletion): Keep debugger info.
+       * alloc.c (dbg_valmask): Make non-const.
+       * alloc.c (dbg_typemask): Make non-const.
+       * alloc.c (dbg_USE_UNION_TYPE): Make non-const.
+       * alloc.c (dbg_valbits): Make non-const.
+       * alloc.c (dbg_gctypebits): Make non-const.
+       * .gdbinit (decode_object): Make it work with AIX cc.
 
-       * callproc.c: warning elimination.
-       * dired-msw.c: ditto.
-       * process-nt.c: ditto.
-       * realpath.c: ditto.
+2001-02-06  Martin Buchholz  <martin@xemacs.org>
 
-       * Makefile.in.in: tweak : and ; for building under mswindows.
+       * elhash.c (make_general_lisp_hash_table):
+       Use simpler and more efficient calloc to clear entries.
 
-1999-04-26  Michael Harnois  <mharnois@willinet.net>
+2001-02-07  Martin Buchholz  <martin@xemacs.org>
 
-       * eldap.c (allocate_ldap): Adapt to the new semantics of
-       alloc_lcrecord_type().
+       * window.c (window_scroll): Work around an AIX C compiler bug.
+       Fixes 'scroll-up' does nothing problem with xlC.
 
-1999-03-16  MORIOKA Tomohiko  <tomo@etl.go.jp>
+2001-02-05  Martin Buchholz  <martin@xemacs.org>
 
-       * file-coding.c (DECODE_HANDLE_END_OF_CONVERSION): fixed.
+       * .gdbinit: Remove obsolete comment.
 
-1998-09-04  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
+2001-01-31  Mike Alexander  <mta@arbortext.com>
 
-       * Delete mule-coding.c and mule-coding.h because they are not
-       used.
+       * select.c (Fown_selection_internal): Set owned_p for device
+       method correctly.
 
-1999-04-22  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+2001-02-01  Martin Buchholz  <martin@xemacs.org>
 
-       * objects.c (print_font_instance): Check for NILP(f->device),
-       i.e. Vthe_null_font_instance.
-       (font_instance_truename_internal): ditto.
-       (Ffont_instance_properties): ditto.
+       Port to g++ 2.97.
+       "not" cannot be used as a macro name as it is an operator in C++
+       * config.h.in: Stop #defining `not'.
+       * chartab.c (check_category_char): not ==> not_p
+       * chartab.h: Likewise.
+       * regex.c (re_match_2_internal): Likewise.
 
-1999-04-22  Olivier Galibert  <galibert@pobox.com>
+2001-02-02  Martin Buchholz  <martin@xemacs.org>
 
-       * lrecord.h (DECLARE_LRECORD): lrecord_implementation isn't an
-       array anymore.
+       * lisp-disunion.h: Fix up comments.
 
-1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
+2001-01-31  Martin Buchholz  <martin@xemacs.org>
 
-       * Makefile.in.in (tests): Don't mention tests explicitly -- makes
-       it easier to add new ones.
+       * keymap.c (define_key_check_and_coerce_keysym):
+       (syms_of_keymap):
+       Support mouse-6 and mouse-7 bindings in the obvious way.
 
-1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
+2001-02-01  Martin Buchholz  <martin@xemacs.org>
 
-       * symbols.c (reject_constant_symbols): Ditto.
-       (init_symbols_once_early): Ditto.
+       * m/hp9000s300.h (UNEXEC): Check for HPUX, not !BSD.
 
-       * print.c (print_symbol): Don't use ->obarray.
+2001-01-30  Martin Buchholz  <martin@xemacs.org>
 
-       * symbols.c (Funintern): Ditto.
+       Previous patch changing DEFVAR_INT to use EMACS_INT was incomplete.
+       Previous patch missed DEFVAR_INT_MAGIC.
+       Make sure future DEFVAR_foo use correct types.
+       * symeval.h (DEFVAR_SYMVAL_FWD_FIXNUM): New.
+       * (DEFVAR_SYMVAL_FWD_INT): Add type checking.
+       * (DEFVAR_SYMVAL_FWD_OBJECT): Add type checking.
+       * (DEFVAR_INT_MAGIC): Use DEFVAR_SYMVAL_FWD_FIXNUM.
+       * (DEFVAR_INT): Likewise.
+       * redisplay.c (vertical_clip): Should be of type Fixnum.
+       * redisplay.c (horizontal_clip): Likewise.
+       * lisp.h (dump_add_opaque_int): New.
+       (dump_add_opaque_fixnum): New.
 
-       * alloc.c (Fmake_symbol): Don't set ->obarray.
+2001-01-29  Andy Piper  <andy@xemacs.org>
 
-       * lisp.h (struct Lisp_Symbol): Removed .obarray field.
+       * glyphs-widget.c (check_valid_int_or_function): allow symbols
+       since they can be eval'ed
 
-       * symbols.c (init_symbols_once_early): Removed
-       Vpure_uninterned_symbol_table.
-       (Fintern): Don't store to ->obarray field.
+2001-01-29  Martin Buchholz  <martin@xemacs.org>
 
-1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
+       * lisp.h (ALIGNOF): Make it work on non-gcc C++ compilers.
+       Oops, XEmacs redefines `class'.  Use `typename' instead.
 
-       * data.c (vars_of_data): Default debug_issue_ebola_notices to 0.
-       (eq_with_ebola_notice): Remove abracadabra support.
+2001-01-28  Martin Buchholz  <martin@xemacs.org>
 
-1999-04-11  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
+       * dumper.c: Fix C++ compile errors.
 
-       * eldap.c (Fldap_search_internal): Add a new parameter `withdn' to
-       retrieve the distinguished names of entries
+2001-01-29  Martin Buchholz  <martin@xemacs.org>
 
-1999-03-08  Martin Buchholz  <martin@xemacs.org>
+       * tparam.c: Use correct prototypes.
 
-       * lread.c (read_escape): Make hex escapes read only two hex digits.
-
-1999-04-05  Olivier Galibert  <galibert@pobox.com>
-
-       * Makefile.in.in: Remove puresize-adjust.h and recursive makes.
-       * make-src-depend: Remove puresize-adjust.h.
-       * src-headers: Remove puresize-adjust.h.
-       * config.h.in: Kill everything purespace/gung-ho related.
-
-       * dbxrc: Make gung-ho mandatory.
-       * gdbinit: Ditto.
-
-       * lrecord.h: Make gung-ho mandatory.  Remove pure flag and add
-       c_readonly and lisp_readonly.  Remove implementation arrays.
-       (C_READONLY_RECORD_HEADER_P): Added.
-       (LISP_READONLY_RECORD_HEADER_P): Added.
-       (SET_C_READONLY_RECORD_HEADER): Added.
-       (SET_LISP_READONLY_RECORD_HEADER): Added.
-
-       * lisp.h: Kill everything purespace/non gung-ho related.
-       (CHECK_C_WRITEABLE): Added.
-       (CHECK_LISP_WRITEABLE): Added.
-       (C_READONLY): Added.
-       (LISP_READONLY): Added.
-
-       * lisp-union.h: Make gung-ho mandatory.
-       * lisp-disunion.h: Ditto.
-
-       * alloc.c: Kill everything purespace/non  gung-ho related. Fix all
-       set_lheader_implementation calls.
-       (c_readonly): Added.
-       (lisp_readonly): Added.
-       (make_string_nocopy): Added.
-       (Fpurecopy):  Changed to do  nothing.   Kept the old documentation
-       for reference purposes for the next patches.
-       (sweep_lcrecords_1): Don't free C readonly lcrecords.
-       (sweep_bit_vectors_1): Don't free C readonly bitvectors.
-       (SWEEP_FIXED_TYPE_BLOCK): Don't free C readonly lrecords.
-
-       * fns.c: Make gung-ho mandatory.
-       (Fput): CHECK_IMPURE -> CHECK_LISP_WRITEABLE.
-       (Fremprop): Ditto.
-       (Ffillarray): Ditto.
-
-       * data.c: Make gung-ho mandatory.
-       (pure_write_error): Removed.
-       (c_write_error): Added.
-       (lisp_write_error): Added.
-       (Fsetcar): CHECK_IMPURE -> CHECK_LISP_WRITEABLE.
-       (Fsetcdr): Ditto.
-       (Faset): Ditto.
-
-       * symbols.c: Make gung-ho mandatory.  make_pure_pname ->
-                 make_string or make_string_nocopy.  Fix various
-                 alloc_lcrecord_type.
-
-       * lread.c: Remove everything purespace related.
-       (Flocate_file_clear_hashing): purified -> c_readonly.
-       (locate_file): Ditto.
-       (read_atom): make_pure_pname -> make_string.
-
-       * emacs.c (Frun_emacs_from_temacs): Remove purespace stats
-                 reporting.
-       (Fdump_emacs): Ditto.
-
-       * print.c (print_internal): Make gung-ho mandatory.
-       * ntheap.c (sbrk): Ditto.
-       * mem-limits.h (EXCEEDS_LISP_PTR): Ditto
-       * symeval.h (symbol_value_forward_lheader_initializer): Ditto.
-
-       * sheap.c (more_static_core): Remove puresize-adjust.h from
-                 message.
-
-       * syntax.c (complex_vars_of_syntax): make_pure_string ->
-                 make_string_nocopy.
-       * keymap.c (make_keymap): Fix alloc_lcrecord_type.
-       (vars_of_keymap): make_pure_string -> make_string_nocopy.
-       * events.c (deinitialize_event): Fix set_lheader_implementation.
-       (zero_event): Ditto.
-       * specifier.c (make_specifier_internal): Fix alloc_lcrecord.
-       * menubar-x.c (set_frame_menubar): Fix alloc_lcrecord_type.
-       * mule-charset.c (make_charset): Ditto.
-       * console.c (allocate_console): Ditto.
-       (complex_vars_of_console): Ditto.
-       * file-coding.c (allocate_coding_system): Ditto.
-       * device.c (allocate_device): Ditto
-       * gui-x.c (gcpro_popup_callbacks): Ditto.
-       * extents.c (allocate_extent_auxiliary): Ditto.
-       (allocate_extent_info): Ditto.
-       (copy_extent): Ditto.
-       * glyphs.c (allocate_image_instance): Ditto.
-       (allocate_glyph): Ditto.
-       * frame.c (allocate_frame_core): Ditto.
-       * database.c (allocate_database): Ditto.
-       * tooltalk.c (make_tooltalk_message): Ditto.
-       (make_tooltalk_pattern): Ditto.
-       * rangetab.c (Fmake_range_table): Ditto.
-       (Fcopy_range_table): Ditto.
-       * process.c (make_process_internal): Ditto.
-       * chartab.c (Fmake_char_table): Ditto.
-       (make_char_table_entry): Ditto.
-       (copy_char_table_entry): Ditto.
-       (Fcopy_char_table): Ditto.
-       * elhash.c (make_general_lisp_hash_table): Ditto.
-       (Fcopy_hash_table): Ditto.
-       * buffer.c (allocate_buffer): Ditto.
-       (complex_vars_of_buffer): Ditto.
-       * event-stream.c (allocate_command_builder): Ditto.
-       * objects.c (Fmake_color_instance): Ditto.
-       (Fmake_font_instance): Ditto.
-       (vars_of_objects): Ditto.
-       * toolbar.c (update_toolbar_button): Ditto.
-       * window.c (allocate_window): Ditto.
-       (make_dummy_parent): Ditto.
-       (Fcurrent_window_configuration): Fix alloc_lcrecord.
-       (vars_of_window): Fix make_lcrecord_list.
-       * faces.c (allocate_face): Fix alloc_lcrecord_type. pure_list ->
-                 Flist.
-       * lstream.c (Lstream_new): Fix make_lcrecord_list.
-       * opaque.c (make_opaque): Fix alloc_lrecord.
-       (make_opaque_list): Fix alloc_lrecord_type.
-
-1999-04-19  Hrvoje Niksic  <hniksic@srce.hr>
-
-       * process.c (Fstart_process_internal): Ditto.
-
-       * ntproc.c (sys_spawnve): Use Vlisp_EXEC_SUFFIXES when calling
-       locate_file().
-
-       * glyphs-x.c (x_locate_pixmap_file): Ditto.
-
-       * glyphs-msw.c (mswindows_locate_pixmap_file): Fix call to
-       locate_file().
-
-       * emodules.c (vars_of_module): New variable Vmodule_extensions.
-       (emodules_load): Use it when calling locate_file().
-
-       * emacs.c (main_1): Use Vlisp_EXEC_SUFFIXES when calling
-       locate_file().
-
-       * callproc.c: Vlisp_EXEC_SUFFIXES: New variable.
-       (vars_of_callproc): Initialize it.
-       (Fcall_process_internal): Use it when calling locate_file().
-
-       * alloc.c (disksave_object_finalization): Use
-       Flocate_file_clear_hashing().
-
-       * lread.c (Flocate_file_clear_hashing): Clear all hasing when
-       given `t' as argument.
-
-1999-04-18  Hrvoje Niksic  <hniksic@srce.hr>
-
-       * lread.c (locate_file): Expand `pathel' when appropriate.
-       (Flocate_file_clear_hashing): Expand path elements.
-       (Flocate_file_clear_hashing): Use Vlocate_file_hash_table.
-
-       * dired.c (make_directory_hash_table): Create the hash-table only
-       if the directory open is successful.
-
-       * lread.c (decode_mode_1): New function.
-       (decode_mode): Ditto.
-       (Flocate_file): Use them.
-       (Flocate_file): Expand FILENAME.
-       (locate_file_map_suffixes): New function.
-       (locate_file_in_directory_mapper): New function.
-       (locate_file_in_directory): Use locate_file_in_directory_mapper()
-       and locate_file_map_suffixes().
-       (locate_file_construct_suffixed_files): Use
-       locate_file_map_suffixes().
-       (locate_file_without_hash): Don't GCPRO path.
-       (Flocate_file_clear_hashing): Use EXTERNAL_LIST_LOOP.
-       (syms_of_lread): Remove Qlocate_file_hash_table.
-       (locate_file_find_directory_hash_table): Use
-       Vlocate_file_hash_table.
-       (locate_file_refresh_hashing): Ditto.
-
-       * lread.c: Renamed read_objects to Vread_objects.
-
-1999-04-16  Olivier Galibert  <galibert@pobox.com>
-
-       * mule-charset.c: Generally resync with fsf 20.3 charset
-       interface.
-       (make_charset): Add long and short name.  Use id instead of
-       leading byte.
-       (Fmake_charset): Ditto.
-       (Fmake_reverse_direction_charset): Ditto.
-       (Fcharset_property): Ditto.
-       (Fcharset_short_name): Added.
-       (Fcharset_long_name): Added.
-       (Fcharset_description): Renamed from charset-doc-string.
-       (syms_of_mule_charset): Synced symbols.
-       (complex_vars_of_mule_charset): Synced charsets.
+2001-01-28  Martin Buchholz  <martin@xemacs.org>
 
-       * mule-charset.h: Removed leading byte (uses id instead), added
-       short and long name.
+       * sysproc.h: #include util.h for NetBSD's openpty.
 
-1999-04-15  Hrvoje Niksic  <hniksic@srce.hr>
+2001-01-27  Martin Buchholz  <martin@xemacs.org>
 
-       * file-coding.c (Fdefine_coding_system_alias): New function.
+       More 64-bit correctness.
+       The C value of a DEFVAR_INT should be of type EMACS_INT, not int.
+       Use a typedef `fixnum' for the type used for DEFVAR_INT.
+       Fix up comments.
+       This finally finishes the 64-bit SGI port.
+       Fixes things like (let ((gc-cons-threshold most-positive-fixnum)) ...).
+       * symbols.c: Fix up comments and type casts.
+       * symbols.c (do_symval_forwarding): s/int/Fixnum/g
+       * symbols.c (store_symval_forwarding): s/int/Fixnum/g
+       * symeval.h (Fixnum): New type.
+       * symeval.h (symbol_value_type): Fix up comment.
 
-1999-04-08  Olivier Galibert  <galibert@pobox.com>
+       * commands.h:
+       * nt.c:
+       * emacs.c:
+       * data.c:
+       * redisplay.c:
+       * abbrev.c:
+       * dired-msw.c:
+       * event-Xt.c:
+       * eldap.c:
+       * window.c:
+       * sound.c:
+       * event-stream.c:
+       * eval.c:
+       * buffer.c:
+       * mule-canna.c: A million DEFVAR_INTs here...
+       * mule-canna.c (count_char): s/int */Fixnum */g in arglist.
+       * extents.c:
+       * cmdloop.c:
+       * lisp.h:
+       * select-x.c:
+       * console-x.h:
+       * event-msw.c:
+       * mule-wnnfns.c:
+       * hpplay.c:
+       * ralloc.c:
+       * alloc.c:
+       * keymap.c:
+       * profile.c:
+       s/int/Fixnum/g in DEFVAR_INT declarations.
+
+2001-01-26  Martin Buchholz  <martin@xemacs.org>
+
+       Port pdump to SGI alignment-sensitive environment.
+       Lisp Object sizeof methods now return aligned sizes.  Rely on that.
+       Eliminate is_lrecord since Lisp_Objects sizeof methods are now all
+       properly aligned.
+       Define and use aligned reading and writing macros.
+       Use buffered stdio instead of posix i/o for faster dumping.
+       Eliminate kludgy 256 byte space for header.
+       Read and write from dump file using structs for alignment safety.
+       * dumper.c (pdump_align_stream): New.
+       * dumper.c (PDUMP_ALIGN_OUTPUT): New.
+       * dumper.c (PDUMP_READ_ALIGNED): New.
+       * dumper.c (PDUMP_WRITE_ALIGNED): New.
+       * dumper.c (pdump_static_Lisp_Object): New struct.
+       * dumper.c (pdump_static_pointer): New struct.
+       * dumper.c (pdump_entry_list_element): Remove is_lrecord member.
+       * dumper.c (pdump_add_entry): Remove is_lrecord parameter.
+       * dumper.c (pdump_dump_data): Rely on sizeof method alignment.
+       * dumper.c (pdump_allocate_offset): Rely on sizeof method alignment.
+
+       * dumper.c (pdump_backtrace):
+       * dumper.c (pdump_get_indirect_count):
+       * dumper.c (pdump_register_object):
+       * dumper.c (pdump_register_struct):
+       * dumper.c (pdump_reloc_one):
+       * dumper.c (pdump_scan_by_alignment):
+       * dumper.c (pdump_dump_from_root_struct_ptrs):
+       * dumper.c (pdump_dump_opaques):
+       * dumper.c (pdump_dump_rtables):
+       * dumper.c (pdump_dump_from_root_objects):
+       * dumper.c (pdump):
+       * dumper.c (pdump_load_finish):
+       Use aligned reading and writing.
+
+       * dumper.c (pdump_free): Make static.
+       * dumper.c (pdump_hFile): Likewise.
+       * dumper.c (pdump_hMap): Likewise.
+
+2001-01-26  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.43 "Terspichore" is released.
+
+2001-01-25  Martin Buchholz  <martin@xemacs.org>
+
+       Type fiddling for window_config.saved_windows_count
+       * window.c (struct window_config): 
+       Make saved_windows_count member unsigned.
+       * window.c (sizeof_window_config_for_n_windows): 
+       Make parameter unsigned.
+       * window.c (mark_window_config):
+       * window.c (window_config_equal):
+       * window.c (free_window_configuration):
+       * window.c (Fset_window_configuration):
+       * window.c (count_windows):
+       * window.c (Fcurrent_window_configuration):
+       * window.c (reinit_vars_of_window):
+       Update all callers and users.
 
-       * mule-charset.c (complex_vars_of_mule_charset): Allow all iso8859
-       and -ascii fonts for displaying ascii instead of iso8859-1 only.
+2001-01-25  Martin Buchholz  <martin@xemacs.org>
 
-1998-12-14  Hrvoje Niksic  <hniksic@srce.hr>
+       Alignment correctness for flexible arrays.
+       * lisp.h (FLEXIBLE_ARRAY_STRUCT_SIZEOF):
+       Make alignment-correct. Add interesting comments.
+       * alloc.c (size_vector):
+       * alloc.c (make_vector_internal):
+       * alloc.c (make_bit_vector_internal):
+       * alloc.c (sweep_bit_vectors_1):
+       * fns.c (size_bit_vector):
+       Update all callers of FLEXIBLE_ARRAY_STRUCT_SIZEOF to add new arg.
+       * window.c (sizeof_window_config_for_n_windows): 
+       Use FLEXIBLE_ARRAY_STRUCT_SIZEOF.
 
-       * extents.c (set_extent_glyph_1): Make sure that the glyph we
-       attach to the extent is valid.
+2001-01-24  Martin Buchholz  <martin@xemacs.org>
 
-1998-12-12  Hrvoje Niksic  <hniksic@srce.hr>
+       * lread.c (read1): Rename `fexp', which is #defined in SGI's math.h
 
-       * dired.c (user_name_completion): Mule-ize.
-       (user_name_completion): Use xmalloc/xrealloc/xfree.
-       (user_name_completion): Use DO_REALLOC.
-       (user_name_completion): Cut down the number of static variables;
-       use a structure.
-       (user_name_completion): Username completion is always
-       case-sensitive.
+2001-01-23  Andy Piper  <andy@xemacs.org>
 
-1998-12-06  Hrvoje Niksic  <hniksic@srce.hr>
+       * select.c (Fown_selection_internal): pass owned_p
 
-       * fns.c (base64_decode_1): Remove COUNTER.
-       (base64_decode_1): Accept CRLF in addition to CR.
-       (base64_decode_1): Disallow a stray character after final EOF; the
-       check was probably a remnant of buggy recode code.
+       * select-msw.c (mswindows_own_selection): New Signature.
 
-1998-12-05  Hrvoje Niksic  <hniksic@srce.hr>
+       * console.h (struct console_methods): add owned_p to
+       _own_selection.
 
-       * fns.c (init_provide_once): Provide `base64'.
+       * select-x.c (x_own_selection): pass owned_p
+       (hack_motif_clipboard_selection): use owned_p
+       (vars_of_select_x): new variable -
+       x_selection_strict_motif_ownership.
 
-1998-12-04  Hrvoje Niksic  <hniksic@srce.hr>
+2001-01-23  Martin Buchholz  <martin@xemacs.org>
 
-       * fns.c (XMALLOC_UNBIND): Include SPECCOUNT argument, for clarity.
-       (Fbase64_encode_region): If buffer is read-only, bail out early.
-       (Fbase64_decode_region): Ditto.
-       (Fbase64_encode_region): Initialize SPECCOUNT to pacify the
-       compiler.
-       (Fbase64_encode_string): Ditto.
-       (Fbase64_decode_region): Ditto.
-       (Fbase64_decode_string): Ditto.
+       * specifier.h (specifier_data_offset): Remove pointless parens.
+       * glyphs.h (IMAGE_SPECIFIER_DATA): Likewise.
 
-1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
+2001-01-24  Martin Buchholz  <martin@xemacs.org>
 
-       * dired.c (Fdirectory_files): Remove redundant code.
+       Make Lisp_Object sizeof methods be alignment-correct.
+       pdump must restore objects to the same alignment as the C compiler
+       assumes.  It really matters on SGIs.
+       * lstream.c (aligned_sizeof_lstream): New.
+       (sizeof_lstream): Use aligned_sizeof_lstream.
+       (Lstream_new): Likewise.
+       * opaque.c (aligned_sizeof_opaque): New.
+       (sizeof_opaque): Use aligned_sizeof_opaque.
+       (make_opaque): Likewise.
+       * specifier.c (aligned_sizeof_specifier): New.
+       (sizeof_specifier): Use aligned_sizeof_specifier.
+       (make_specifier_internal): Likewise.
 
-1999-03-05  Philip Aston  <philipa@parallax.co.uk>
+2001-01-23  Martin Buchholz  <martin@xemacs.org>
 
-       * frame-msw.c Make raise-frame restore minimised windows.
+       * lstream.h (struct lstream): Use max_align_t for trailing data.
+       * specifier.h (struct Lisp_Specifier): Likewise.
 
-1999-03-05  Philip Aston  <philipa@parallax.co.uk>
+2001-01-22  Martin Buchholz  <martin@xemacs.org>
 
-       * device-msw.c: Fix DEFVAR format - Death to phantom quote, and
-       add magic newline.
+       * mule-ccl.c (CCL_Extension): Renamed from CCL_Extention.
+       (CCL_SUCCESS): Kludge to prevent Sun cc compiler warnings.
+       (CCL_SUSPEND): Likewise.
+       (CCL_INVALID_CMD): Likewise.
+       (CCL_CALL_FOR_MAP_INSTRUCTION): Likewise.
+       (ccl_driver): Likewise.
+       (CCL_WRITE_CHAR): Macro hygiene.
+       (CCL_WRITE_STRING): Macro hygiene.
 
-1999-03-05  Philip Aston  <philipa@parallax.co.uk>
+2001-01-22  Martin Buchholz  <martin@xemacs.org>
 
-       * toolbar-msw.c Consider captions when deciding whether to rebuild
-       toolbar. This fixes the initial toolbar display for those of us
-       who don't like captions. These patches applied by Andy Piper.
+       Port "portable" dumper to SunOS 4 and HP-UX.
+       * s/aix4.h (AIX4): Move MAP_FAILED definition elsewhere.
+       * emacs.c (main): PDUMP implies no RUN_TIME_REMAP.
+       * dumper.c (pdump_file_get): Define MAP_FAILED if not already defined.
 
-1999-03-12  XEmacs Build Bot <builds@cvs.xemacs.org>
+2001-01-22  Martin Buchholz  <martin@xemacs.org>
 
-       * XEmacs 21.2.13 is released
+       * lisp.h (ALIGNOF): A better definition for C++.
 
-1999-03-12  SL Baur  <steve@xemacs.org>
+2001-01-20  Martin Buchholz  <martin@xemacs.org>
 
-       * file-coding.c: Guard ucs table initialization with ifdef MULE.
+       Macro hygiene.
+       Fix printf warnings: int format, long int arg.
+       * regex.c (DECLARE_DESTINATION): Use DECLARE_NOTHING.
+       (PUSH_FAILURE_POINT): Use correct printf formats.
+       (POP_FAILURE_POINT): Use correct printf formats.  
+       Use do {...} while (0)
 
-1999-03-10  Stephen J. Turnbull  <turnbull@sk.tsukuba.ac.jp>
+2001-01-20  Martin Buchholz <martin@xemacs.org>
 
-       * file-coding.c:  docstring and comment improvements.
-       (decode_ucs4)  flag possible data loss with comment.
+       * XEmacs 21.2.42 "Poseidon" is released.
 
-1999-03-10  Martin Buchholz  <martin@xemacs.org>
+2001-01-20  Martin Buchholz  <martin@xemacs.org>
 
-       * file-coding.c (Fset_ucs_char): add CHECK_INT, CHECK_CHAR
-       (ucs_to_char):
-       (Fucs_char):
-       (Fset_char_ucs):
-       (decode_coding_ucs4):
-       (encode_coding_ucs4):
-       (detect_coding_utf8):
-       (decode_coding_utf8):
-       (encode_utf8):
-       (encode_coding_utf8):
-       Add CHECK_* macros where needed to avoid crashes.
-       #ifdef out all composite character support using
-       #ifdef ENABLE_COMPOSITE_CHARS
-       Use normal XEmacs coding standards.
-       Fix docstrings.
-       Remove CODING_STREAM_COMPOSE, CODING_STREAM_DECOMPOSE.
+       * console-x.h: typo fix du jour.  Remove #if 0'ed code.
 
-1998-09-08  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
+2001-01-19  Martin Buchholz  <martin@xemacs.org>
 
-       * file-coding.c (make-coding-system): Add description about
-       `ucs-4' and `utf-8'.
-       (detection_state): Modify to implement ucs-4 and utf-8.
-       (detect_coding_type): Likewise.
-       (detect_coding_ucs4): New implementation.
-       (detect_coding_utf8): New implementation.
-       (encode_utf8): fixed.
-       (syms_of_mule_coding): Rename `ucs4' and `utf8' to `ucs-4' and
-       `utf-8'.
-
-1998-09-08  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
-
-       * file-coding.c (mule_char_to_ucs4): Encode 94x94 chars in ISO
-       2022 registry to private area.
-
-1998-09-07  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
-
-       * file-coding.c (encode_utf8): New function.
-       (encode_coding_utf8): New implementation.
-
-1998-09-07  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
-
-       * file-coding.c (ucs_to_mule_table): New variable; abolish
-       `Vucs_to_mule_table'
-       (mule_to_ucs_table): renamed from `Vmule_to_ucs_table'.
-       (set-ucs-char): New function.
-       (ucs_to_char): New function.
-       (ucs-char): New function.
-       (set-char-ucs): New function.
-       (char-ucs): New function.
-       (decode_ucs4): Use `ucs_to_char'.
-       (complex_vars_of_mule_coding): Abolish `ucs-to-mule-table' and
-       `mule-to-ucs-table'.
-
-1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
-
-       * chartab.h: EXFUN `Fget_char_table'.
-
-       * file-coding.c (encode_ucs4): New function.
-       (encode_coding_ucs4): Use `encode_ucs4'.
-
-1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
-
-       * file-coding.c (decode_coding_ucs4): New implementation.
-
-1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
-
-       * file-coding.c (decode_coding_ucs4): fixed.
-
-       * file-coding.c (Vmule_to_ucs_table): New variable.
-       (mule_char_to_ucs4): New function.
-       (encode_coding_ucs4): New implementation.
-       (complex_vars_of_mule_coding): Define variable
-       `mule-to-ucs-table'.
-
-1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
-
-       * file-coding.c (decode_coding_utf8): New implementation.
-
-1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
-
-       * file-coding.c (decode_coding_utf8): fixed.
-
-1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
-
-       * file-coding.c (Vucs_to_mule_table): New variable.
-       (decode_ucs4): Refer `Vucs_to_mule_table'.
-       (complex_vars_of_mule_coding): Define variable
-       `ucs-to-mule-table'.
-
-1998-09-04  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
-
-       * file-coding.c (detect_coding_ucs4): New function (not
-       implemented yet).
-       (decode_coding_ucs4): New function.
-       (encode_coding_ucs4): New function (not implemented yet).
-       (detect_coding_utf8): New function (not implemented yet).
-       (decode_coding_utf8): New function.
-       (encode_coding_utf8): New function (not implemented yet).
-       (make-coding-system): New type `ucs4' and `utf8'.
-       (coding-system-type): Likewise.
-       (detection_state): Add `ucs4' and `utf8'.
-       (detect_coding_type): Likewise.
-       (mule_decode): Use `decode_coding_ucs4' and `decode_coding_utf8'.
-       (mule_encode): Use `encode_coding_ucs4' and `encode_coding_utf8'.
-       (decode_ucs4): New function (very incomplete).
-       (syms_of_mule_coding): Add `ucs4' and `utf8'.
-
-       * file-coding.h: Add definitions for UCS-4 and UTF-8.
-
-1999-03-08  Martin Buchholz  <martin@xemacs.org>
-
-       * mule-charset.c:
-       (non_ascii_valid_char_p):
-       (lookup_composite_char):
-       (composite_char_string):
-       (make-composite-char):
-       (composite-char-string):
-       (syms_of_mule_charset):
-       (complex_vars_of_mule_charset):
-       * mule-charset.h (LEADING_BYTE_COMPOSITE):
-       (CHAR_LEADING_BYTE):
-       (MAKE_CHAR):
-       * file-coding.h (CODING_STATE_COMPOSITE):
-       (CODING_STATE_ISO2022_LOCK):
-       (iso_esc_flag):
-       (LEADING_BYTE_COMPOSITE):
-       * file-coding.c (struct iso2022_decoder):
-       (decoding_closer):
-       (reset_iso2022):
-       (parse_iso2022_esc):
-       (encode_coding_iso2022):
-       #ifdef out all composite character support using
-       #ifdef ENABLE_COMPOSITE_CHARS
+       De-kludgify FIXED_TYPE free list frobbing.
+       Fix crashes on 64-bit platforms introduced by my patch of 2001-01-13.
+       * alloc.c (DECLARE_FIXED_TYPE_ALLOC): Use Lisp_Free.
+       * alloc.c (ALLOCATE_FIXED_TYPE_1): Use new definitions.
+       * alloc.c (Lisp_Free): New pseudo lisp object definition.
+       * alloc.c (LRECORD_FREE_P): New.
+       * alloc.c (MARK_LRECORD_AS_FREE): New.
+       * alloc.c (MARK_LRECORD_AS_NOT_FREE): New.
+       * alloc.c (STRUCT_FREE_P): Deleted.
+       * alloc.c (MARK_STRUCT_AS_FREE): Deleted.
+       * alloc.c (MARK_STRUCT_AS_NOT_FREE): Deleted.
+       * alloc.c (STRING_CHARS_FREE_P): New.
+       * alloc.c (MARK_STRING_CHARS_AS_FREE): New.
+       * alloc.c (PUT_FIXED_TYPE_ON_FREE_LIST): Use new definitions.
+       * alloc.c (FREE_FIXED_TYPE): Use new definitions.
+       * alloc.c (STRING_CHARS_FREE_P): Use new definitions.
+       * alloc.c (resize_string): Use new definitions.
+       * alloc.c (SWEEP_FIXED_TYPE_BLOCK): Use new definitions.
+       * alloc.c (verify_string_chars_integrity): Use new definitions.
+       * alloc.c (compact_string_chars): Use new definitions.
+       * alloc.c: Update monster comments.
+       * lrecord.h (lrecord_type): Add some new lrecord types for
+       alloc.c's use.
 
-       * alloc.c: Define lrecord_coding_system only if ! FILE_CODING
+2001-01-18  Martin Buchholz  <martin@xemacs.org>
 
-1999-03-04  Takeshi YAMADA <yamada@cslab.kecl.ntt.co.jp>
+       Improve alignment hackery.
+       * lisp.h (ALIGNOF): Better definition for the non-gcc case.
+       (max_align_t): Moved from opaque.h - general purpose.
+       (ALIGN_PTR): Use size_t, not long.
+       * opaque.h (max_align_t): Move to lisp.h.
 
-       * fns.c (Fbase64_encode_string): Calculate `allength' in the same
-       way of `Fbase64_encode_region'.
+2001-01-18  Norbert Koch  <nk@LF.net>
 
-1999-02-18  Katsumi Yamaoka   <yamaoka@jpl.org>
+       * gui.h: Fix and add prototypes to fix build problems.
 
-       * fns.c (base64_encode_1): Don't add a newline at the tail.
+2001-01-18  Martin Buchholz  <martin@xemacs.org>
 
-1999-03-08  Andy Piper  <andy@xemacs.org>
+       temacs is going away, so `dump-temacs' is now a bad name.
+       * .dbxrc (dump-temacs): Rename to `dmp'.
+       * .gdbinit (dump-temacs): Rename to `dmp'.
 
-       * menubar-msw.c (displayable_menu_item): correct off-by-one &
-       handling.
+2001-01-17  Andy Piper  <andy@xemacs.org>
 
-1999-03-07  Martin Buchholz  <martin@xemacs.org>
+       * glyphs.c (print_image_instance): comment to make martin happy.
 
-       * console-stream.h (struct stream_console):
-       * event-unixoid.c (event_stream_unixoid_select_console):
-       (event_stream_unixoid_unselect_console):
-       * print.c (Fexternal_debugging_output):
-       * sysdep.c (reset_one_device):
-       * console-stream.c (stream_init_console):
-       (stream_delete_console):
-       (allocate_stream_console_struct): move into stream_init_console.
-       (free_stream_console_struct): move into stream_delete_console.
-       Use `fd' only for file descriptors.
-       Therefore, rename members of struct stream_console.
-
-       * systime.h: Unix98 says sys/time.h should define select(), but
-       some systems define that in unistd.h.  So include that file always.
-
-       * glyphs.h (MAYBE_IIFORMAT_METH): Don't use leading `_'.  Avoid
-       multiple evaluation of first arg.  Do proper do {} while (0) wrapping.
-       (HAS_IIFORMAT_METH_P): Prevent macro from being used in
-       non-boolean context
-       (MAYBE_IIFORMAT_DEVMETH): Use standard internal macro naming convention.
-
-       * EmacsShell.c:
-       * balloon_help.c:
-       Add #include <stdio.h>.
-       Some versions of assert.h use printf() without #include'ing stdio.h
+       * glyphs-x.c (x_redisplay_widget): update faces after a frame
+       change.
 
-       * free-hook.c (blocktype): Add gcpro5_type to blocktype.
-       (log_gcpro): Remove unused variable FRAME.
-       (show_gcprohist): Ansify.
-       Comment the #endif's
+       * glyphs-msw.c (mswindows_redisplay_widget): add code to cope with
+       activation.
+       (mswindows_tab_control_redisplay): warning suppression.
 
-       * frame-x.c (x_delete_frame): Don't use FRAME_X_SHELL_WIDGET(f)
-       after it's just been XtDestroy'ed!
+       * glyphs-widget.c (widget_update): re-write to cope with updated
+       items.
+       (widget_instantiate): use new gui_item functions.
+       (tab_control_update): deleted.
+       (progress_gauge_update): deleted.
+       (image_instantiator_progress_guage): take out update reference.
+       (image_instantiator_tree_view): ditto.
+       (image_instantiator_tab_control): ditto.
 
-1999-02-18  Martin Buchholz  <martin@xemacs.org>
+       * gui.c (widget_gui_parse_item_keywords): new function. Do things
+       Right the new way.
+       (gui_item_add_keyval_pair): re-write to cope with descriptors and
+       return whether anything was changed.
+       (update_gui_item_keywords): as it sounds.
 
-       * opaque.c (print_opaque):
-       (sizeof_opaque):
-       (equal_opaque):
-       (hash_opaque):
-       Egcs 1.1.1 seems to have a bug where
-       INTP (p->size_or_chain)
-       will crash XEmacs.  Fix by introducing intermediate variable.
+       * gui.h: declare widget_gui_parse_item_keywords.
 
-       * sound.c (Fdevice_sound_enabled_p): Fix compiler warning.
+       * fns.c (safe_copy_tree): new function taken from Fcopy_tree.
+       (Fcopy_tree): use it. Stops infloop death in bogus instantiators.
 
-       * dired.c (Fdirectory_files):
-       (Ffile_name_completion):
-       (Ffile_name_all_completions):
-       (file_name_completion):
-       - Use `directory' instead of `dirname' to sync with FSF Emacs and
-       avoid compiler warnings.
-       - Fix up docstrings so that C variables match documentation.
+2001-01-17  Martin Buchholz <martin@xemacs.org>
 
-1999-03-05  Martin Buchholz  <martin@xemacs.org>
+       * XEmacs 21.2.41 "Polyhymnia" is released.
 
-       * alloc.c: (garbage_collect_1): Reorg code to make scope of local
-       variables as small as possible to help out the compiler and the maintainer.
+2001-01-16  Didier Verna  <didier@xemacs.org>
 
-       * alloc.c: (disksave_object_finalization):
-       Set all the *-load-path variables to
-       nil, not just load-path itself.  This gets the locate-file hash
-       tables garbage collected BEFORE dump, and has the side effect of
-       preventing crashes on OSF4.0+egcs.
+       * glyphs.c (image_instantiate): don't use fallbacks when
+       instantiating a face's background pixmap by inheritance.
 
-       * alloc.c:
-       * gdbinit:
-       * dbxrc:
-       - Clean up gdb/dbx debugging support.
-       - Storing an EMACS_INT in an enum is not 64-bit clean!
-       - So change the enum to a set of separate variables.
-       - Add test cases to help debug the debugging support!
-       - Add `lisp-shadows' and `run-temacs' targets for dbx.
-       - Both dbx and gdb have been tested now.
+2001-01-14  Mike Sperber <mike@xemacs.org>
 
-1999-03-05  XEmacs Build Bot <builds@cvs.xemacs.org>
+       * sysdep.c (start_of_data): PDUMP implies ORDINARY_LINK.
+       Conditionalize accordingly.
 
-       * XEmacs 21.2.12 is released
+2001-01-16  Martin Buchholz  <martin@xemacs.org>
 
-1999-02-16  Kazuyuki IENAGA  <ienaga@jsys.co.jp>
+       * dumper.c (pdump_file_get): Fix a compiler warning.
 
-       * device-x.c: Support to find best visual without flashing.
+2001-01-15  Martin Buchholz  <martin@xemacs.org>
 
-1999-03-02  Paul Keusemann  <pkeusem@visi.com>
+       Make Purify happy when pdumping.
+       * symbols.c (Fmake_variable_buffer_local): Make Purify happy, by
+       iniitalizing all bits of new lisp object memory.
+       * symbols.c (Fmake_local_variable): Likewise.
+       * symbols.c (Fdontusethis_set_symbol_value_handler): Likewise.
+       * symbols.c (Fdefvaralias): Likewise.
+       * mule-charset.c (vars_of_mule_charset): Likewise.
+
+2001-01-15  Martin Buchholz  <martin@xemacs.org>
+       Add the `-nd' flag when running pre-dump operations under the debugger.
+       * .dbxrc (run-temacs): Add `-nd'.
+       * .dbxrc (update-elc): Likewise.
+       * .dbxrc (dump-temacs): Likewise.
+       * .gdbinit (run-temacs): Likewise.
+       * .gdbinit (check-temacs): Likewise.
+       * .gdbinit (update-elc): Likewise.
+       * .gdbinit (dump-temacs): Likewise.
 
-       * database.c (berkdb_map): Add flags argument to cursor call (must
-         be 0 according to docs) required for Berkeley DB 2.6.4 and later.
+2001-01-14  Martin Buchholz  <martin@xemacs.org>
 
-1999-03-03  Martin Buchholz  <martin@xemacs.org>
+       Allow building 64-bit executables on AIX with GNU malloc, e.g.
+       export OBJECT_MODE=64
+       configure --pdump --use-union-type=no
+       * m/ibmrs6000.h (DATA_START): Define for 64-bit world.
+       * gmalloc.c (__default_morecore): Remove pre-ANSI cruft.
 
-       * hash.c:
-       * hash.h:
-       General cleanup.  Get free-hook.c working again.
-       Remove unused functions:
-       make_strings_hash_table, copy_hash, expand_hash_table.
+       * miscplay.c (sndcnv8U_2mono):
+       Avoid two uses of `++' in the same expression.
+       Suppresses a GCC warning.
 
-       * malloc.c:
-       * mem-limits.h:
-       Always use new ANSI-style function prototypes.
+2001-01-13  Martin Buchholz  <martin@xemacs.org>
 
-       * unexalpha.c (unexec): Never use implicit int.
+       Make sure future compilers don't miscompile alloc.c.
+       * alloc.c:
+       (MARK_STRUCT_AS_FREE): Make aliasing-optimization-resistant.
+       (MARK_STRUCT_AS_NOT_FREE): Make aliasing-optimization-resistant.
 
-       * sgiplay.c (close_sound_file):
-       (play_sound_file):
-       (restore_audio_port):
-       (play_sound_data):
-       (audio_initialize):
-       (play_internal):
-       (drain_audio_port):
-       (write_mulaw_8_chunk):
-       (write_linear_chunk):
-       (write_linear_32_chunk):
-       (initialize_audio_port):
-       (open_audio_port):
-       (set_channels):
-       (set_output_format):
-       (adjust_audio_volume):
-       (get_current_volumes):
-       (parse_snd_header):
-       Always use new ANSI-style function prototypes.
-       Use unistd.h for missing prototypes.
+2001-01-12  Martin Buchholz  <martin@xemacs.org>
 
-       * unexelfsgi.c (round_up):
-       (find_section):
-       (unexec): Always use new ANSI-style function prototypes
+       * dumper.c: A little post-pdump-rename comment fixup.
 
-       * elhash.c (struct Lisp_Hash_Table): rename golden to golden_ratio
+2001-01-09  Jerry James  <james@eecs.ku.edu>
 
-       * console.h (struct console_methods): Always use full ANSI prototypes
+       * lisp-disunion.h: Change LISP_TO_CVOID arg to match its use.
 
-       * emacs.c (__sti__iflPNGFile_c___): Always use full ANSI prototypes
+2001-01-13  Martin Buchholz  <martin@xemacs.org>
 
-1999-03-02  Andy Piper  <andy@xemacs.org>
+       * *.[ch]: Globally rename symbols using the following `pdump-rename'
+       script:
+       #!/bin/sh
+       replace_symbol () {
+         (findn texi$; findn [ch]$) | xargs g -lw "$1" | xargs global-replace 's/(?<!_)\b'$1'\b(?!_)/'$2'/g'
+       }
 
-       * event-stream.c (init_event_stream): make sure native mswindows
-       gets an appropriate event loop.
+       replace_symbol pdump_wire_lists pdump_weak_object_chains
+       replace_symbol pdump_wire_list dump_add_weak_object_chain
 
-1999-02-22  Andy Piper  <andy@xemacs.org>
+       replace_symbol pdump_wires pdump_root_objects
+       replace_symbol pdump_wire dump_add_root_object
 
-       * frame-msw.c (mswindows_make_frame_visible): use SW_SHOW rather
-       than SW_SHOWNORMAL to prevent resizing of maximised frames.
-       (mswindows_raise_frame): remove comment.
+       replace_symbol pdump_dump_wired pdump_dump_from_root_objects
+       replace_symbol pdump_dump_structs pdump_dump_from_root_struct_ptrs
 
-1999-03-01  XEmacs Build Bot <builds@cvs.xemacs.org>
+       replace_symbol dumpstructinfos pdump_root_struct_ptrs
+       replace_symbol dumpstructinfo_dynarr pdump_root_struct_ptr_dynarr
+       replace_symbol dumpstructinfo pdump_root_struct_ptr
+       replace_symbol dumpstruct dump_add_root_struct_ptr
 
-       * XEmacs 21.2.11 is released
+       replace_symbol dumpopaque dump_add_opaque
+       replace_symbol dumpopaqueinfo_dynarr pdump_opaque_dynarr
+       replace_symbol dumpopaqueinfos pdump_opaques
+       replace_symbol dumpopaqueinfo pdump_opaque
 
-1999-02-25  SL Baur  <steve@xemacs.org>
+       replace_symbol nb_structdump nb_root_struct_ptrs
+       replace_symbol nb_opaquedump nb_opaques
 
-       * mule-charset.c (Qleading_byte): New variable to implement
-       charset-leading-byte function.
-       (Fcharset_property): Use it.
-       (syms_of_mule_charset): Initialize it.
-       From Kazuyuki IENAGA <ienaga@jsys.co.jp>
+       replace_symbol align_table pdump_align_table
+       replace_symbol dump_header pdump_header
 
-1999-02-17  Kazuo Oishi <oishi@ae.agr.yamaguchi-u.ac.jp>
+       replace_symbol DUMP_SIGNATURE_LEN PDUMP_SIGNATURE_LEN
+       replace_symbol DUMP_SIGNATURE PDUMP_SIGNATURE
 
-       * glyphs-x.c (cononvert_EImage_to_XImage): correct
-       bytes per pixel counting.
 
-1999-02-15  Andy Piper  <andy@xemacs.org>
+2001-01-12  Martin Buchholz  <martin@xemacs.org>
 
-       * s/cygwin32.h (BROKEN_SIGIO): don't define this as it causes
-       major lockups.
+       * s/aix4.h: Keep the C for AIX compiler from overaggressively
+       optimizing bytecount_to_charcount().
 
-1999-02-16  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
+2001-01-06  Golubev I. N.  <gin@mo.msk.ru>
 
-       * fns.c (Fbase64_encode_string): New optional argument
-       `NO_LINE_BREAK'.
+       * config.h.in:
+       (HAVE_DLFCN_H): Removed.
+       * sysdll.c: Remove HAVE__DLOPEN, HAVE_DLFCN_H.
 
-1999-02-16  Martin Buchholz  <martin@xemacs.org>
+2001-01-06  Martin Buchholz  <martin@xemacs.org>
 
-       * gdbinit:  Fix up commands to run temacs.  Add lisp-shadows command.
-       * alloc.c (xcalloc):  undef xcalloc, just like xmalloc
+       Portable dumper maintainability improvements.
+       * alloc.c (staticpro):
+       * alloc.c (staticpro_nodump):
+       * alloc.c (garbage_collect_1):
+       * alloc.c (reinit_alloc_once_early):
+       * alloc.c (init_alloc_once_early):
+       * alloc.c: Move dumper functions to alloc.c.
+       * dumper.c (pdump_backtrace):
+       * dumper.c (pdump_dump_structs):
+       * dumper.c (pdump_dump_opaques):
+       * dumper.c (pdump_dump_rtables):
+       * dumper.c (pdump_dump_wired):
+       * dumper.c (pdump):
+       * dumper.c (pdump_load_check):
+       * dumper.c (pdump_load_finish):
+       * dumper.c (pdump_file_unmap):
+       * dumper.c (pdump_file_get):
+       * dumper.c (pdump_resource_free):
+       * dumper.c (pdump_resource_get):
+       * dumper.c (pdump_file_free):
+       * dumper.c (pdump_file_try):
+       * dumper.c (pdump_load):
+       Remove fixed size limits on staticpro(), staticpro_nodump(),
+       dumpopaque(), dumpstruct() by using Dynarrs instead of static C arrays.
+       Remove custom code for dumping lrecord_implementations_table - use
+       dumpopaque instead.
+       Remove (most of the) custom code for dumping staticpros - dump it
+       like any other dynarr.
 
-1999-02-10  Martin Buchholz  <martin@xemacs.org>
+       * alloc.h: Removed.  No longer useful, since dumper now more self-contained.
+       * dumper.c: Moved functions from alloc.c.
+       * alloc.c (dumpstruct): Moved to dumper.c.
+       * alloc.c (dumpopaque): Likewise.
+       * alloc.c (pdump_wire): Likewise.
+       * alloc.c (pdump_wire_list): Likewise.
 
-       * s/bsdos4.h: New file.  Port to BSDI BSD/OS 4.0.
-       * xintrinsic.h:  Redo CONST support for X11 R4 compatibility.
+       * lisp.h (Dynarr_sizeof): New.
+       * lisp.h (Dynarr_begin): New.  Very slightly C++oid.
+       * lisp.h (Dynarr_end): New.  Very slightly C++oid.
+       * lisp.h (Lisp_Object_ptr_dynarr): New.  For staticpros.
 
-1999-02-05  XEmacs Build Bot <builds@cvs.xemacs.org>
+       * lisp.h (dumpstruct): Define to nothing if not PDUMPing.
+       * lisp.h (dumpopaque): ditto.
+       * lisp.h (pdump_wire): ditto.
+       * lisp.h (pdump_wire_list): ditto.
 
-       * XEmacs 21.2.10 is released
+2001-01-09  Martin Buchholz  <martin@xemacs.org>
 
-1999-02-02  Gleb Arshinov  <gleb@cs.stanford.edu>
+       * make-src-depend (PrintPatternDeps):
+       Use `sort' to make output independent of perl version.
 
-       * process-nt.c (nt_send_process):
-       Fix for process-send-region/process-send-string breaking when size
-       of the input > 128 chars: change maximum chunk size for process
-       stream from 512 to 128, thus guaranteeing that ntpipe_shove_writer
-       succeeds.
+2001-01-08  Martin Buchholz  <martin@xemacs.org>
 
-1999-02-02  XEmacs Build Bot <builds@cvs.xemacs.org>
+       Port to Netbsd 1.5.
+       * unexelf.c: Remove (never used) bogus Netbsd-specific cruft.
+       * s/netbsd.c: Use unexelf.o if __ELF__ is defined.
 
-       * XEmacs 21.2.9 is released
+2001-01-03  Didier Verna  <didier@xemacs.org>
 
-1999-01-30  Martin Buchholz  <martin@xemacs.org>
+       * event-stream.c (emacs_handle_focus_change_preliminary): ensure
+       that `focus_frame' is alive before thinking of calling
+       `redisplay_redraw_cursor' on it.
 
-       * bytecode.c (funcall_compiled_function): Call
-       UNBIND_TO_GCPRO instead of UNBIND_TO_GCPRO_VARIABLES_ONLY.
+2001-01-08  Martin Buchholz <martin@xemacs.org>
 
-       * backtrace.h (UNBIND_TO_GCPRO_VARIABLES_ONLY):
-       #ifdef 0 out unused macro.
+       * XEmacs 21.2.40 is released.
 
-1999-01-27  Martin Buchholz  <martin@xemacs.org>
+2001-01-06  Golubev I. N.  <gin@mo.msk.ru>
 
-       * gui.c (gui_parse_item_keywords_internal): Make static.
+       * regex.c: Replace PREFETCH with REGEX_PREFETCH.
 
-1999-01-21  Andy Piper  <andy@xemacs.org>
+2001-01-06  Martin Buchholz  <martin@xemacs.org>
 
-       * glyphs-msw.c: add xface support.
-       (mswindows_xface_instantiate): new function copied from glyphs-x.c
-       (image_instantiator_format_create_glyphs_mswindows): do device
-       specific initialisation for xfaces.
-       (xbm_create_bitmap_from_data): line data must be padded to a word
-       boundary.
+       * alloc.c (dbg_valmask): Make const.
+       * alloc.c (dbg_typemask): Make const.
+       * alloc.c (dbg_USE_UNION_TYPE): Make const.
+       * alloc.c (dbg_valbits): Make const.
+       * alloc.c (dbg_gctypebits): Make const.
 
-       * glyphs-x.c (xface_validate): moved to glyphs.c
-       (xface_normalize): ditto.
-       (xface_possible_dest_types): ditto.
-       (image_instantiator_format_create_glyphs_x): do device specific
-       initialisation for xfaces.
+2001-01-06  Stephen J. Turnbull  <stephen@xemacs.org>
 
-       * glyphs.h: declare xface symbol.
+       * redisplay-x.c (x_bevel_area):
+       redisplay.h (struct rune):
+       Typo fixes in comments.
 
-       * glyphs.c: move generic xface support here.
-       (xface_validate): moved from glyphs-x.c
-       (xface_normalize): ditto.
-       (xface_possible_dest_types): ditto.
-       (image_instantiator_format_create): xface declarations moved from
-       glyphs-x.c.
+2001-01-05  Andy Piper  <andy@xemacs.org>
 
-1999-01-14  Adrian Aichner  <aichner@ecf.teradyne.com>
+       * glyphs-x.c (x_redisplay_widget): use size changed for offset
+       adjustment.
 
-       * event-stream.c (vars_of_event_stream): Fixing documentation.
+       * menubar.c (menubar_visible_p_changed): don't mark frame changed.
 
-1999-01-17  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+2001-01-05  Martin Buchholz  <martin@xemacs.org>
 
-       * glyphs-eimage.c (gif_instantiate): Correct handling of
-       interlaced gifs to avoid writing past the end of the eimage
-       buffer.
+       * alloc.c (pure-bytes-used): Remove unused mendacious variable.
 
-1999-01-13  Hrvoje Niksic  <hniksic@srce.hr>
+       * mule-ccl.c (stack_idx_of_map_multiple):
+       Non const global data must not be initialized!
+       Found by MIYASHITA Hisashi.
 
-       * search.c (Freplace_match): Handle single backslash at end of
-       NEWTEXT correctly.
+2001-01-02  Andy Piper  <andy@xemacs.org>
 
-1999-01-12  William M. Perry  <wmperry@aventail.com>
+       * frame.c (change_frame_size): make sure frame size is always
+       marked as changed.
 
-       * eldap.c (Fldap_open): slow down interrupts around ldap_open to
-         avoid connection errors.
+       * glyphs.c (image_instance_layout): minor code reuse.
 
-1999-01-12  Andy Piper  <andy@xemacs.org>
+       * window.c (Fcurrent_window_configuration): revert previous
+       change.
 
-       * redisplay-output.c (redisplay_update_line): backout change that
-       shouldn't have gone ine.
+2001-01-02  Martin Buchholz  <martin@xemacs.org>
 
-1999-01-09  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
+       * glyphs.h:
+       * glyphs.c (make_image_instance_cache_hash_table): Use ANSI prototypes.
 
-       * eldap.c (vars_of_ldap): Do no provide `ldap' here since it may
-       collide with ldap.el
+2000-12-31  Andy Piper  <andy@xemacs.org>
 
-1999-01-11  Andy Piper  <andy@xemacs.org>
+       * glyphs-x.c (x_unmap_subwindow): return focus to enclosing frame
+       when widget gets unmapped.
 
-       * redisplay.h (DISPLAY_LINE_HEIGHT): new macro.
-       (DISPLAY_LINE_YPOS): new macro.
+       * event-Xt.c (emacs_Xt_handle_widget_losing_focus): new
+       function. Make sure widgets losing focus don't just drop it.
+       (handle_focus_event_1): record the widget with focus.
 
-       * redisplay-msw.c (mswindows_output_string): use it.
-       (mswindows_output_pixmap): ditto.
-       (mswindows_output_display_block): ditto.
+2000-12-31  Andy Piper  <andy@xemacs.org>
 
-       * redisplay-output.c (redisplay_output_display_block): new
-       function. just call the devmeth, maybe insert some generic code
-       here later.
-       (compare_display_blocks): use it.
-       (output_display_line): ditto.
-       (redisplay_unmap_subwindows_maybe): new function. potentially
-       unmap subwindows in the given area.
+       * window.c (allocate_window): use
+       make_image_instance_cache_hash_table.
+       (make_dummy_parent): ditto.
+       (Fset_window_configuration): ditto.
 
-       * glyphs.c (reset_subwindow_cachels): unmap subwindows that we are
-       resetting.
+       * glyphs.h (INSTANTIATOR_TYPE): new macro.  declare new functions.
 
-1999-01-10  J. Kean Johnston  <jkj@sco.com>
+       * glyphs.c (process_image_string_instantiator): use
+       INSTANTIATOR_TYPE.
+       (get_image_instantiator_governing_domain): ditto.
+       (normalize_image_instantiator): ditto.
+       (instantiate_image_instantiator): ditto.
+       (make_image_instance_1): ditto.
+       (image_instantiate): ditto. Key on glyph *and* instantiator type.
+       (instantiator_eq_equal): new function for use with instance hash
+       tables.
+       (instantiator_eq_hash): ditto.
+       (make_image_instance_cache_hash_table): create a suitable hash
+       table for storing image instances.
 
-       * Makefile.in.in: Set value of moduledir
-       - Changed DUMPENV to include $(MODULEPATH)
-       - Added install rule to install header files for use by ellcc.
+       * elhash.h (hash_table_weakness): new internal weakness type
+       HASH_TABLE_KEY_CAR_VALUE_WEAK.
+       declare new functions.
 
-       * config.h.in: Added INHIBIT_SITE_MODULES
-       - Added HAVE__DLERROR
-       - Added HAVE_DLFCN_H
-       - Added DLSYM_NEEDS_UNDERSCORE
+       * elhash.c (finish_marking_weak_hash_tables): introduce yet
+       another weakness type for glyphs.
+       (make_standard_lisp_hash_table): new function split out from
+       make_general_lisp_hash_table.
+       (make_lisp_hash_table): call make_standard_lisp_hash_table.
+       (hash_table_instantiate): ditto.
+       (Fmake_hash_table): ditto.
 
-       * dll.c: Removed.
+2000-12-31  Martin Buchholz <martin@xemacs.org>
 
-       * emodules.c: New file containing dynamic loading code.
+       * XEmacs 21.2.39 is released.
 
-       * emodules.h: New file.
+2000-12-29  Andy Piper  <andy@xemacs.org>
 
-       * emacs.c: Added variables Vmodule_directory,
-       Vsite_module_directory, Vconfigure_module_directory and
-       Vconfigure_site_module_directory.
-       - (main_1): Added new variable inhibit_site_modules and command
-       line options `-no-site-modules' and `--no-site-modules'.
-       - (main_1): Call syms_of_module() instead of syms_of_dll().
-       - (main_1): Call vars_of_module().
-       - (vars_of_emacs): Introduce inhibit-site-modules,
-       module-directory, configure-module-directory,
-       site-module-directory, and configure-site-module-directory to the
-       Lisp reader.
+       * menubar.c (menubar_visible_p_changed): signal the frame changed.
 
-       * lisp.h: Declare load_module and list_modules, as well as
-       Vmodule_directory, Vsite_module_directory,
-       Vconfigure_module_directory and Vconfigure_site_module_directory.
+       * glyphs-x.c (x_redisplay_widget): Re-calculate widget offsets if
+       the frame has changed so that we pick up geometry changes such as
+       menubar visibility.
 
-       * paths.h.in: Added PATH_MODULESEARCH and PATH_SITE_MODULES.
-       - Added correct support for site-lisp directory.
+2000-12-28  Andy Piper  <andy@xemacs.org>
 
-       * symbols.c (defsubr): Modified to allow modules to add new subrs
-       after dump time.
-       - (defsubr_macro): Same.
-       - (defvar_magick): Only use purespace when not initialized, so
-       that loaded modules can still add symbols.
+       * lastfile.c (my_ebss): make a char array so we can pad the
+       bss. Fixes cygwin unexec.
 
-       * symsinit.h: Add definitions for syms_of_module(),
-       vars_of_module().  Removed syms_of_dll().
+       * unexcw.c: invert BROKEN_GDB to NO_DEBUG.
 
-       * sysdll.c: Include dlfcn.h if HAVE_DLFCN_H is defined.
-       - (dll_variable): Take DLSYM_NEEDS_UNDERSCORE into account.
-       - (dll_error): use _dlerror() if HAVE__DLERROR is defined.
+2000-12-26  Andy Piper  <andy@xemacs.org>
 
-       * s/sco5-shr.h (C_SWITCH_SYSTEM): Correct for modern gcc and
-       explicitly pass -belf for native cc.
+       * event-Xt.c (emacs_Xt_force_event_pending): add some verbose
+       comments and try and be more precise about a non-/SIGIO world.
+       (emacs_Xt_event_pending_p): use XtAppPending under cygwin and non
+       SIGIO.
 
-       * s/sco5.h (LIB_GCC): Use -print-libgcc-file-name instead of
-       hard-coding the library name.
+       * redisplay-output.c (redisplay_normalize_glyph_area): make sure
+       we don't normalize to zero width or height.
 
-1999-01-01    <martin@xemacs.org>
+2000-12-24  Andy Piper  <andy@xemacs.org>
 
-       * device-x.c (Fx_set_font_path):
-       Add proper cast to permit compilation under C++.
+       * Makefile.in.in (ldflags): add -mwindows when appropriate.
 
-       * buffer.c (directory_is_current_directory):
-       Add proper casts to permit compilation under C++.
+2000-08-18  Golubev I. N.  <gin@mo.msk.ru>
 
-1998-12-30  Damon Lipparelli  <lipp@primus.com>
+       * s/sco5.h: SCO 5 has pty support.
 
-       * event-msw.c (mswindows_wnd_proc):
-         Fixed failure when building with MSVC 5.
+2000-07-20  Kazuyuki IENAGA <ienaga@xemacs.org>
 
-1998-12-29  Martin Buchholz  <martin@xemacs.org>
+       * input-method-xlib.c: supports both XIM_XLIB and USE_XFONTSET.
+       input-method-xlib.c contains whole contents of input-method-xfs.c,
+       so we can use input-method-xlib.c's code for USE_XFONTSET
+       using #ifdefs.
+       * input-method-xfs.c: removed.
 
-       * file-coding.c (decode_coding_iso2022):
-       - Prevent crash when decoding ISO7/Lock detected files
-       - the usual martin fiddling
+2000-12-20  Stephen Turnbull  <stephen@xemacs.org>
 
-1998-12-29  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+       * file-coding.h (enum coding_category_type): reorder enumerators to
+       make autodetection safer.  Make CODING_CATEGORY_LAST an enumerator
+       (now one greater than largest real coding_category_type enumerator).
+       * file-coding.c (coding_category_symbol, coding_category_by_priority,
+       coding_category_system, fcd_descriptihon_1, decode_coding_category,
+       Fcoding_category_list, Fset_coding_priority_list,
+       Fcoding_priority_list, coding_system_from_mask, Fdetect_coding_region,
+       vars_of_file_coding): adjust for change in CODING_CATEGORY_LAST.
 
-       * event-msw.c:
-         glyphs-msw.c:
-         Fixed failures when building with MSVC.
-       * unexnt.c (dump_bss_and_heap):
-         Removed compiler warning by removing bss_data variable.
+2000-12-18  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-1998-12-18  Jim Radford  <radford@robby.caltech.edu>
+       * redisplay-output.c (redisplay_clear_top_of_window): Remove static.
+       * redisplay-output.c (redisplay_output_window): Clear top of window
+       when face is changed.
+       * redisplay-x.c (x_redraw_exposed_window): Call
+       redisplay_clear_top_of_window.
+       * redisplay.h: Publish redisplay_clear_top_of_window.
 
-       * device-x.c (Fx_set_font_path, Fx_get_font_path): New functions
-       so that packages that distribute their own fonts can access them.
+2000-12-18  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-1998-12-28  Andy Piper  <andy@xemacs.org>
+       * buffer.c (Fkill_buffer): Map over all devices.
+       * window.c (window_loop): Remove UNSHOW_BUFFER code.
+       (list_windows): New function.
+       (list_all_windows): Ditto.
+       (Freplace_buffer_in_windows): Use them.
 
-       * glyphs-msw.c (mswindows_button_instantiate): cope with buttons
-       that have an image provided.
+2000-02-02   Daiki Ueno        <ueno@ueda.info.waseda.ac.jp>
 
-       * glyphs.h: add Q_image decl.
+       * database.c (berkdb_subtype): Recognize new subtype `queue'.
+       (Fopen_database): Use `db_create' instead of `db_open'.
+       (syms_of_database): Initialize Qqueue.
 
-       * glyphs-widget.c new functionality allowing images in
-       widgets.
-       (check_valid_glyph_or_image): new function to validate
-       glyphs passed in through :image.
-       (widget_normalize): new function. convert :image parameters into
-       real glyphs if not already so.
-       (widget_instantiate_1): mess with size parameters to be similar to
-       :image if provided.
-       (syms_of_glyphs_widget): new keyword :image.
-       (image_instantiator_format_create_glyphs_widget): normalize
-       buttons and allow :image.
+2000-12-13  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-1998-12-27  Andy Piper  <andy@xemacs.org>
+       * buffer.c (common_init_complex_vars_of_buffer): Initialize
+       buffer_local_face_property.
+       * buffer.h (struct buffer): New member buffer_local_face_property.
+       * window.c (Fset_window_buffer):  Mark window's face as changed
+       when buffer has buffer local face.
+       * window.h (MARK_WINDOW_FACES_CHANGED): New macro.
+       * objects.c (color_after_change): Set buffer_local_face_property
+       when locale of face specifier is buffer.
+       * objects.c (font_after_change): Ditto.
+       * objects.c (face_boolean_after_change): Ditto.
+       * glyphs.c (image_after_change): Ditto.
 
-       * frame-msw.c (mswindows_init_frame_1): warning elimination.
+2000-12-09  Dan Holmsand  <dan@eyebee.com>
 
-       * glyphs-widget.c (check_valid_anything): no-op function.
-       (check_valid_callback): check callbacks in gui_items.
-       (check_valid_symbol): as it sounds.
-       (check_valid_string_or_vector): ditto.
-       (widget_validate): modified for descriptors that are vectors or
-       sequences of keyword/val pairs.
-       (widget_instantiate_1): ditto.
-       (image_instantiator_format_create_glyphs_widget): allow gui_item
-       keywords in the instantiator.
+       * nt.c (mswindows_fstat): Report file permissions, volume serial
+       number, etc. Code adapted from FSF Emacs 20.7.
 
-       * gui.c (gui_parse_item_keywords_internal): renamed from
-       gui_parse_item_keywords but taking error behaviour.
-       (gui_parse_item_keywords): use it.
-       (gui_parse_item_keywords_no_errors): ditto.
-       (gui_item_add_keyval_pair): add Error_behavior flag and only
-       signal invalid keywords if required.
+2000-12-09  Dan Holmsand  <dan@eyebee.com>
 
-       * gui.h: new gui signatures.
+       * sysfile.h (lstat): Make lstat an alias for xemacs_stat instead
+       of stat when we don't have symbolic links, to make sure
+       mswindows_stat is called on mswindows.
 
-       * menubar.c (menu_parse_submenu_keywords): use new
-       gui_item_add_keyval_pair signature.
+2000-12-12  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-       * s/cygwin32.h: modify PTY_ITERATION to eliminate warnings.
+       * alloca.c: Define malloc to xmalloc only when built with XEmacs.
 
-1998-12-28  Martin Buchholz <martin@xemacs.org>
+2000-12-12  Martin Buchholz  <martin@xemacs.org>
 
-       * XEmacs 21.2.8 is released.
+       * doprnt.c (emacs_doprnt_1): More printing fixes.
+       Make printing of numbers compatible with libc and FSF Emacs.
+       BUG was: (format "%6.3f" 1.2) ==>"1.200000"
+       Use the system printf to do most of the hard work of formatting,
+       instead of doprnt_1().
+       Calculate memory to allocate for format string.
+       Remove arbitrary limit on precision, e.g. (format "%.1000f" 3.14)
+       (doprnt_1): Cleaner code and documentation.
 
-1998-12-28  Martin Buchholz  <martin@xemacs.org>
+2000-12-01  Jerry James  <james@eecs.ukans.edu>
 
-       * editfns.c (get_home_directory):
-       (user-home-directory): Simplify.
+       * Makefile.in.in: Use the loop variable to install headers.
 
+2000-12-04  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-       * callproc.c (child_setup):
-       - Environment variables were being passed to inferior processes
-         using internal encoding.
-       - Convert to external encoding.
-       - Rename local var `tem' to better name `tail'.
-       - Use Flength instead of `manual' calculation.
-
-       * buffer.c (kill-buffer):
-       (record-buffer):
-       (set-buffer-major-mode):
-       (current-buffer):
-       - Fix up parameter names to correspond to docstrings.
-       - Don't use `bufname' when a buffer will do as well.
-       - Remove one unneeded GCPRO.
-
-       * buffer.h (initial_directory):
-       * buffer.c (init_initial_directory):
-       - use correct conversions between internal and external format.
-       (directory_is_current_directory): new function
-       (init_buffer): convert initial_directory to internal format.
-       - solve crashes when current working directory is non-ASCII.
+       * window.c (Fsplit_window): Don't invalidate face cache.
 
-       * alloc.c (xmalloc):
-       (xcalloc):
-       (xrealloc):
-       - remove stupid casts, since XEmacs requires an ANSI C system.
-       (lrecord_type_index): replace abort() with more readable assert().
+2000-12-04  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-       (reset_lcrecord_stats): remove.
-       (sweep_lcrecords_1):
-       - replace call to reset_lcrecord_stats() with call to xzero().
+       * minibuf.c (Fall_completions): Undo the previous change
+       which removed checking elements start with space.
 
-1998-12-27  Martin Buchholz  <martin@xemacs.org>
+2000-12-06  Stephen Turnbull  <stephen@xemacs.org>
 
-       * process-unix.c (unix_create_process):
-       - Fix crash invoking program with non-ASCII name.
-         Try invoking xemacs with SHELL=/bin/sh, then M-x shell.
-       - Remove unused variable `env'.
-       - Rename `temp' to better name `save_errno'.
-       - Reorganize code for clarity.  But still too chicken to nuke the
-         BSD 4.2 support.
+       * mule-canna.c: Didier suppression.
 
-1998-12-24  Martin Buchholz <martin@xemacs.org>
+2000-12-06  Stephen Turnbull  <stephen@xemacs.org>
 
-       * XEmacs 21.2.7 is released.
+       * mule-canna.c: rename static unsigned char buf[] to key_buffer
+       (warning suppression).  Add English comment translations.
 
-1998-12-23  Martin Buchholz  <martin@xemacs.org>
+2000-12-05  Martin Buchholz  <martin@xemacs.org>
 
-       * glyphs.c (decode_device_ii_format):
-       - Fix indentation.
-       - Use GET_C_STRING_FILENAME_DATA_ALLOCA with char *, not Extbyte *.
+       * unexelfsgi.c (unexec): Better test for mmap failure.
 
-       * glyphs-x.c (x_subwindow_instantiate):
-       - A image instance mask was being assigned to a image instance type!
-       - X_SUBWINDOW_INSTANCE_DATA (ii) is not an lvalue in C++.
+2000-12-05  Martin Buchholz <martin@xemacs.org>
 
-       * glyphs-msw.c (mswindows_initialize_dibitmap_image_instance):
-       Fix indentation.
-       * glyphs-x.h: Make indentation consistent.
+       * XEmacs 21.2.38 is released.
 
-       * emacs.c (Fdump_emacs): Remove Steve Martin merge artifacts.
+2000-12-05  Martin Buchholz  <martin@xemacs.org>
 
-       * glyphs-widget.c (check_valid_glyph): Warning suppression.
-       - Make it static
-       - #ifdef it out, since it's not actually used yet (FIX THIS!)
+       * redisplay.c (bar-cursor): Make a user variable.
 
-       * glyphs-widget.c:
-       * glyphs.h:
-       Move declarations of decode_device_ii_format and
-       decode_image_instantiator_format into glyphs.h where they belong.
+       * symsinit.h: Add init_postgresql_from_environment.
 
-1998-12-22  Martin Buchholz  <martin@xemacs.org>
+2000-12-04  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-       * frame-x.c (x_delete_frame): Revert part of my changes at the
-       suggestion of Gunnar Evermann - unfortunately no one really
-       understands this code.
+       * regex.c: Convert to clean C.
 
-       * callproc.c (init_callproc): code cleanup.
+2000-12-05  Dan Holmsand  <dan@eyebee.com>
 
-       * free-hook.c (malloc):
-       (check_malloc):
-       (__free_hook):
-       (__malloc_hook):
-       (__realloc_hook):
-       (block_input_malloc):
-       (block_input_realloc):
-       * device-x.c (x_delete_device):
-       * emacs.c (voodoo_free_hook):
-       * events.c (print_event):
-       (CHECK_EVENT_TYPE):
-       (CHECK_EVENT_TYPE2):
-       (CHECK_EVENT_TYPE3):
-       Use proper prototypes.
-       Make C_E_T macros a little faster.
-       Pedantic fiddly little changes.  You really don't care.
+       * realpath.c:
+       Don't #include sysfile.h. Revert to duplicating PATH_MAX
+       initialization.
+       (sys_readlink): renamed to system_readlink to avoid conflict with
+       the other sys_readlink.
 
-1998-12-22  Andy Piper  <andy@xemacs.org>
+2000-12-04  Hiroaki Abe  <h-abe@pc.highway.ne.jp>
 
-       * redisplay-output.c (redisplay_clear_region): make sure that
-       fg/bg colors get set even when we are in the border area.
+       * dumper.c (pdump_file_get): Correct uses of pdump_fd.
 
-1998-12-13  Martin Buchholz  <martin@xemacs.org>
+2000-12-04  Stephen J. Turnbull  <stephen@xemacs.org>
 
-       * console-msw.c: Function definitions follow coding standards
-       - This prevents e.g. find-tag on Lisp_Event finding DEVENT
+       * postgresql.c (init_postgresql_from_environment): new function.
+       (vars_of_postgresql): Move code initializing Lisp variables out and
+       into init_postgresql_from_environment.
+       emacs.c (main_1): Call init_postgresql_from_environment if and only
+       if running a dumped XEmacs.
 
-1998-12-11  Martin Buchholz  <martin@xemacs.org>
+2000-08-31  Dan Holmsand  <dan@eyebee.com>
 
-       * events.h (struct timeout_data):
-       * event-tty.c (tty_timeout_to_emacs_event):
-       * event-msw.c (mswindows_wm_timer_callback):
-       * event-Xt.c (Xt_timeout_to_emacs_event):
-       * event-msw.c (mswindows_cancel_dispatch_event):
-       Make sure Lisp_Objects inside events are initialized to Qnil, not
-       Qnull_pointer, which is now illegal.
+       * buffer.c: Make find-file-compare-truenames default to true on
+       windows.
 
-1998-12-10  Martin Buchholz  <martin@xemacs.org>
+       * realpath.c (win32_abs_start):
+       (cygwin_readlink):
+       (win32_readlink): New functions.
+       (xrealpath): Return really real filenames on windows.
 
-       * lisp.h: Fix up prototypes to match alloc.c
+       * fileio.c (Ffile_truename): Make file-truename work on windows.
 
-1998-12-08  Martin Buchholz  <martin@xemacs.org>
+2000-11-29  Didier Verna  <didier@xemacs.org>
 
-       * windowsnt.h: Remove `support' for using index and rindex
+       * faces.c (MAYBE_UNFROB_BACKGROUND_PIXMAP): new macro.
+       * faces.c (update_face_cachel_data): use it.
+       * faces.c (add_face_cachel): use it. Complete background pixmap
+       frobbing in face cache if `update_face_cachel_data' has not done so.
 
-       * filelock.c (current_lock_owner):
-       - Change uses of index -> strchr, rindex -> strrchr
+2000-11-29  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-1998-12-07  Martin Buchholz  <martin@xemacs.org>
+       * search.c (string_match_1): Don't set last_thing_searched
+       when search failed.
 
-       * sysdep.c (set_descriptor_non_blocking):
-       Since O_NONBLOCK is now always #defined, make use of fcntl
-       conditional on F_SETFL being defined.
+2000-11-27  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-       * console-msw.c (DHEADgER):
-       (DOPAQUE_DATA):
-       (DEVENT):
-       (DCONS):
-       (DCONSCDR):
-       (DSTRING):
-       (DVECTOR):
-       (DSYMBOL):
-       (DSYMNAME):
-       - max_align_t should not be visible to the user of the
-         XOPAQUE_DATA macro.
-       - use Bufbyte instead of char
-       - parens around (FOOP (obj)) are always redundant.
-         If they were necessary, we should fix the macro instead.
-       - Always use string_data(foo) instead of foo->data.
+       * buffer.c: Include casetab.h
+       (common_init_complex_vars_of_buffer): Use new case-table object.
+       * buffer.h: Include casetab.h
+       * buffer.h (MAKE_TRT_TABLE): Use generic char-table.
+       (DOWNCASE_TABLE_OF): Ditto.
+       * bufslots.h: Remove char-tables and add case-table.
+       * casetab.c: Include casetab.h
+       (CASE_TABLE_P): Removed.
+       (mark_case_table): New function.
+       (allocate_case_table): New function.
+       (Fcase_table_p): Use new case-table.
+       (case_table_char): New function.
+       (Fget_case_table): Ditto.
+       (Fput_case_table): Ditto.
+       (Fput_case_table_pair): Ditto.
+       (Fcopy_case_table): Ditto.
+       (Fcurrent_case_table): Return case-table.
+       (Fstandard_case_table): Return case-table.
+       (Fset_case_table): Fix doc-string.
+       (set_case_table): Use case-table
+       (syms_of_casetab): DEFSUBR new functions.
+       (complex_vars_of_casetab): Set up standard case-table.
+       * casetab.h: New file.
+       * editfns.c: Include casetab.h
+       (Fcompare_buffer_substrings): Use case-table.
+       * inline.c: Include casetab.h
+       * lisp.h: Remove bogus extern.
+       * lrecord.h (lrecord_type): Add lrecord_type_case_table.
+       * search.c: Include casetab.h
+       (TRANSLATE_ASCII): Removed.
+       (TRANSLATE): Unconditionally translate character.
+       (looking_at_1): Use case-table.
+       (string_match_1): Ditto.
+       (fast_string_match): Ditto.
+       (search_command): Ditto.
+       (search_buffer): Separate boyer_moore.  Check whether
+       boyer_moore is possible.
+       (simple_search): New function.
+       (boyer_moore): Separated from search_buffer. Translate char.
 
+2000-11-24  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-1998-12-06  Martin Buchholz  <martin@xemacs.org>
+       * regex.c (RE_TR_ASCII): Removed.
+       (RE_TRANSLATE): Unconditionally use TRT_TABLE.
+       (PATFETCH): Call PATFETCH_RAW.
+       (PATFETCH_RAW): Fetch Emchar.
+       (PATUNFETCH): Decrement charptr.
+       (GET_BUFFER_SPACE): Rename b to buf_end.
+       (BUF_PUSH): Ditto.
+       (BUF_PUSH_2): Ditto.
+       (BUF_PUSH_3): Ditto.
+       (EXTEND_BUFFER): Ditto.
+       (SET_LIST_BIT): Ditto.
+       (regex_compile): Ditto.  Translate non ASCII char.
+       (compile_range): Ditto.
+       (re_search_2): Ditto.
+       (re_match_2_internal): Compare Emchar.
+       (bcmp_translate): Ditto.
+
+2000-11-29  Stephen J. Turnbull  <turnbull@xemacs.org>
+
+       * lisp.h (basic char/int typedefs):  comment improvement.
+
+2000-11-24  Stephen J. Turnbull  <turnbull@xemacs.org>
+
+       * emacs.c (main_1):  unconditional pdump unstomping; don't save and
+       unstomp inhibit_site_lisp.  Improve comments.
+
+2000-11-22  Stephen J. Turnbull  <turnbull@xemacs.org>
+
+       * mule-charset.c (Fcharset_property):  improve type checking, comments.
+
+2000-11-28  Andy Piper  <andy@xemacs.org>
+
+       * redisplay-output.c (redisplay_output_subwindow): make sure we do
+       clipped display for windows in the gutter also.
+       (redisplay_display_boxes_in_window_p): change semantics of return
+       codes to be more intuitive.
+
+       * gutter.h: declare display_boxes_in_gutter_p.
+
+       * gutter.c (display_boxes_in_gutter_p): new function for
+       redisplay.
+
+2000-11-22  Andy Piper  <andy@xemacs.org>
+
+       * glyphs-x.c (image_instantiator_format_create_glyphs_x): change
+       autodetect domain.
+
+2000-11-21  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * callproc.c (Fold_call_process_internal):
+       * gpm.c (Freceive_gpm_event):
+       (tty_get_foreign_selection): Might be just warning supression.
+       * fileio.c (Fwrite_region_internal):
+       (Fset_visited_file_modtime):
+       * keymap.c (event_matches_key_specifier_p):
+       Initialize GCPROed variable.
+
+       * menubar-x.c (command_builder_find_menu_accelerator):
+       Initialize before use.
+
+2000-11-23  Andy Piper  <andy@xemacs.org>
+
+       * unexcw.c (unexec): make the resulting executable executable.
+
+2000-11-21  Martin Buchholz  <martin@xemacs.org>
+
+       * doc.c (get_doc_string):
+       Use size_t, not int, for result of XSTRING_LENGTH.
+
+       * cmds.c (Fdelete_char):
+       * cmds.c (Fpoint_at_eol):
+       * cmds.c (Fself_insert_command):
+       Use EMACS_INT, not int, for result of XINT.
+       Someday, someone will want to insert more than 2**31 identical characters.
+
+       * cmds.c (Fdelete_char):
+       * cmds.c (Fdelete_backward_char):
+       * syntax.c (Fforward_word):
+       * syntax.c (Fforward_comment):
+       Make COUNT argument optional, for consistency with forward-char et al.
 
-       * frame-msw.c (mswindows_init_frame_1):
-       - use make_lisp_hash_table, not Fmake_hash_table
-       - include elhash.h
+2000-11-22  Martin Buchholz  <martin@xemacs.org>
 
        * lisp.h:
-       * alloc.c (make_vector): remove travesty
-       (Fmake_vector):
-       (make_pure_vector):
-       (pure_cons):
-       (make_bit_vector_internal):
-       (make_bit_vector):
-       (make_bit_vector_from_byte_vector):
-       (Fmake_bit_vector):
-       - make vector_equal a little faster.
-       - Don't use variable name `new'.
-       - Use size_t instead of EMACS_INT.
-       - usual Martin-style pointless bit-twiddling.
+       * print.c (long_to_string):
+       Return a useful value: the pointer at end of data written.
 
-       * fns.c (mapcar1):
-       (Fmapconcat):
-       (Fmapcar):
-       (Fmapvector):
-       Make mapcar faster.  In particular, make
-         (mapc #'identity long-string)
-       MUCH faster under Mule.
-       * tests/automated/lisp-tests.el: Test 'em!
+       * doprnt.c:
+       Use `static const char * const' for constant strings.
+       (union printf_arg): Delete `i', `ui' members.
+       (get_doprnt_args):
+       (emacs_doprnt_1):
+       Fix LP64 platform bug: (format "%d" most-positive-fixnum) ==> "-1"
+       Do all printf-ing via the `l' specifier.
+       Use EMACS_INT instead of int.
+       Optimize.
 
-       * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
-       bytecode.
+2000-11-20  Didier Verna  <didier@xemacs.org>
 
-1998-12-01  Martin Buchholz  <martin@xemacs.org>
+       * faces.c (update_face_cachel_data): don't frob the background
+       pixmap when the window is being created. The face is needed but
+       does not exist yet.
 
-       * menubar-x.c (menu_item_descriptor_to_widget_value_1): Always use
-       Qnil, not NULL, to initialize `null' Lisp_Objects.
+2000-11-20  Andy Piper  <andy@xemacs.org>
 
-1998-11-29  Hrvoje Niksic  <hniksic@srce.hr>
+       * unexcw.c (copy_executable_and_dump_data_section): Only do bss
+       messing with a debug environment.
 
-       * specifier.c (display_table_validate): Update.
+2000-11-20  Martin Buchholz  <martin@xemacs.org>
 
-       * redisplay.c (create_text_block): Use them.
+       * emacs.c (__sti__iflPNGFile_c___): Pedantically correct prototype.
 
-       * glyphs.c (display_table_entry): New function.
-       (get_display_tables): Ditto.
+2000-11-20  Martin Buchholz  <martin@xemacs.org>
 
-1998-12-15  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
+       * casetab.c (Fcase_table_p): Fix compile error and crash.
 
-       * eldap.c (toplevel): Mention that eldap.c compiles with
-       OpenLDAP libs
-       (Fldap_open): Use `GET_C_STRING_OS_DATA_ALLOCA'
-       (Fldap_search_internal): Ditto
+2000-11-18  Philip Aston  <philipa@mail.com>
 
-1998-12-11  Martin Buchholz  <martin@xemacs.org>
+       * s/cygwin32.h: Cygwin has SVR4-like pty support.
 
-        * event-msw.c (mswindows_cancel_dispatch_event):
-        Gratuitous code prettification
+2000-11-18  Martin Buchholz  <martin@xemacs.org>
 
+       * fileio.c (Fexpand_file_name): GCPRO bug!  Protect `handler'.
+       * filelock.c (lock_file): GCPRO bug! Initialize all GCPROed vars!
 
-1998-12-07  Hrvoje Niksic  <hniksic@srce.hr>
+2000-11-17  Martin Buchholz  <martin@xemacs.org>
 
-       * fns.c (Fnconc): Fix use of wrong_type_argument().
+       * config.h.in: Define HAVE_ELF_H if elf.h exists.
+       * unexelf.c: Use HAVE_ELF_H.
+       * unexelfsgi.c: Fix bug with dumped xemacs stdout/stderr not working.
+       I copied FSF Emacs 20.7 unexelf.c to unexelfsgi.c and ANSIfied it.
+       Max Matveev <makc@sgi.com> removed non-SGI-relevant parts and tested.
+       Greg Harrington <greg_harrington@hotmail.com> provided a machine
+       for testing.
+       So this is an unexelfsgi.c from a different line of development.
 
-       * floatfns.c (Ffloat): Fix docstring.
-       (Ffloat): Fix use of wrong_type_argument().
-       (Fabs): Ditto.
-       (extract_float): Ditto.
-       (Fceiling): Ditto.
-       (Fround): Ditto.
-       (Ftruncate): Ditto.
+2000-11-16  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-1998-12-06  Martin Buchholz  <martin@xemacs.org>
+       * regex.c (RE_TR_ASCII): New function.
+       (RE_TRANSLATE): Call it.
 
-       * frame-msw.c (mswindows_init_frame_1):
-       - use make_lisp_hash_table, not Fmake_hash_table
-       - include elhash.h
+2000-11-16  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-       * lisp.h:
-       * alloc.c (make_vector): remove travesty
-       (Fmake_vector):
-       (make_pure_vector):
-       (pure_cons):
-       (make_bit_vector_internal):
-       (make_bit_vector):
-       (make_bit_vector_from_byte_vector):
-       (Fmake_bit_vector):
-       - make vector_equal a little faster.
-       - Don't use variable name `new'.
-       - Use size_t instead of EMACS_INT.
-       - usual Martin-style pointless bit-twiddling.
+       * buffer.h (TRT_TABLE_OF): Remove assert.
+       (IN_TRT_TABLE_DOMAIN): Removed.
 
-       * fns.c (mapcar1):
-       (Fmapconcat):
-       (Fmapcar):
-       (Fmapvector):
-       Make mapcar faster.  In particular, make
-         (mapc #'identity long-string)
-       MUCH faster under Mule.
-       * tests/automated/lisp-tests.el: Test 'em!
+2000-11-16  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+
+       * free-hook.c (log_gcpro):
+       (show_gcprohist): Add support for GCPRO5.
 
-       * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
-       bytecode.
+2000-11-08  Stephen J. Turnbull  <stephen@xemacs.org>
 
-1998-12-02  Didier Verna  <verna@inf.enst.fr>
+       * emacs.c (main_1): Improve -sd error message when --pdump=no.
 
-       * menubar-x.c (menu_item_descriptor_to_widget_value_1): set the
-       accelerator field to nil for labels.
+2000-11-16  Olivier Galibert  <galibert@xemacs.org>
 
-1998-12-16  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+       * symeval.h: Declare flush_all_buffer_local_cache.
 
-       * menubar-msw.c (displayable_menu_item):
-         Escape occurrences of '&' and support occurrences of the
-        '%_' accelerator indicator in menus.
+       * symbols.c: Change XD_LO_RESET_NIL into XD_LISP_OBJECTs.
+       (flush_buffer_local_cache): Added.
+       (flush_all_buffer_local_cache): Added.
 
-1998-11-26  Didier Verna  <verna@inf.enst.fr>
+       * lrecord.h: Remove unused XD_LO_RESET_NIL.
 
-       * dired.c (Fdirectory_files): use make_string instead of
-       make_ext_string on the filename. The conversion external->internal
-       format is already done in sys_readdir.
+       * dumper.c (pdump_register_sub): Remove unused XD_LO_RESET_NIL.
+       (pdump_dump_data): Ditto.
+       (pdump_reloc_one): Ditto.
+       (pdump): Remove unused pdump_qnil.  Flush buffer local caches
+       before dumping.
+
+
+2000-11-14  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * buffer.c: Remove if 0'ed entry.
+       * buffer.h: Rewrite TRT to use char-table.
+       * bufslots.h: Remove mirror tables.
+       * casetab.c: Remove mirror tables.
+       (CASE_TABLE_P): New macro.
+       (Fcase_table_p): Element of a case table is string or char-table.
+       (make_mirror_trt_table): Removed.
+       (set_case_table): Setup char-table from strings for backward
+       compatibility.
+       * dired.c (Fdirectory_files):
+       * dired-msw.c: (mswindows_get_files):
+       * lisp.h: Change prototype of re_pattern_buffer.
+       * regex.c: (RE_TRANSLATE): New macro.
+       (TRANSLATE_P): Ditto.
+       Change translate to type RE_TRANSLATE_TYPE.
+       * regex.h: Define RE_TRANSLATE_TYPE
+       * search.c (TRANSLATE): New macro.
+       (TRANSLATE_ASCII): New macro.
+       Translate table is changed to Lisp_Object.
+       (signal_failure): Inhibit return.
+
+2000-11-14  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * device-msw.c:
+       * eldap.c:
+       * event-Xt.c:
+       * event-stream.c:
+       * print.c:
+       Do UNGCPRO before return.
 
-1998-12-15  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+2000-11-14  Martin Buchholz <martin@xemacs.org>
 
-       * glyphs.c (normalize_image_instantiator): GCPRO instantiator
+       * XEmacs 21.2.37 is released.
 
-1998-12-16  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+2000-11-13  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-       * event-msw.c
-         (Belatedly) added Kirill to list of file's authors.
-         emacs_mswindows_quit_p: Don't process WM_PAINT messages in
-         quit checking. WM_PAINT messages cause redisplay, but
-         windows' states are not necessarily stable when this function
-         gets called.
+       * fileio.c (Finsert_file_contents_internal): UNGCPRO before return.
+       Add comments about discarded return value.
 
-1998-12-17  Andy Piper  <andy@xemacs.org>
+2000-11-09  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-       * strftime.c (zone_name): CONSTify.
+       * callint.c:
+       * event-stream.c: Fix comments.  Remove some #if 0'ed part.
 
-1998-12-15  Andy Piper  <andy@xemacs.org>
+2000-10-27  Andy Piper  <andy@xemacs.org>
 
-       * glyphs-msw.c (mswindows_combo_instantiate): ditto.
-       (mswindows_widget_property): return Qunbound when no property available.
-       (mswindows_button_property): ditto.
-       (mswindows_combo_property): ditto.
-       (mswindows_widget_set_property): ditto.
+       * gutter.c (Fset_default_gutter_position): default left and right
+       gutters to visible.
+       (calculate_gutter_size): calculate resonable heuristic for left
+       and right gutter sizes.
+       (specifier_vars_of_gutter): change left and right gutter sizes to
+       autodetect.
+       (calculate_gutter_size_from_display_lines): new function.
+       (output_gutter): check for resizing on left and right gutters.
+       (clear_gutter): don't special case top and left gutters.
+       (specifier_vars_of_gutter): use new signature for
+       set_specifier_caching.
 
-       * glyphs-widget.c (check_valid_item_list): use properties.
+       * glyphs-x.c (x_redisplay_widget): spelling fix.
+       * glyphs.c (specifier_vars_of_glyphs):
+       * menubar.c (specifier_vars_of_menubar):
+       * redisplay.c (specifier_vars_of_redisplay):
+       * toolbar.c (specifier_vars_of_toolbar):
+       * window.c (specifier_vars_of_window):
+       * scrollbar.c (specifier_vars_of_scrollbar):
+       (complex_vars_of_scrollbar): use new signature for
+       set_specifier_caching.
 
-       * glyphs.h (struct Lisp_Image_Instance): we have properties now.
+       * specifier.c (set_specifier_caching): include recompute flag.
+       (recompute_one_cached_specifier_in_window): always recompute if
+       flag set.
+       (recompute_one_cached_specifier_in_frame): ditto.
 
-       * glyphs.c (Fset_image_instance_property): allow setting of arbitrary properties.
-       (Fimage_instance_property): ditto.
-       * glyphs-widget.c (widget_property): ditto.
-       (widget_set_property): ditto.
+       * specifier.h (struct specifier_caching): add recompute flag.
 
-       * frame-msw.c (mswindows_set_frame_pointer): SetCursor() as well
-       as setting the class cursor so that GC actually changes the
-       cursor.
+2000-10-24  Andy Piper  <andy@xemacs.org>
 
-       * config.h: don't undef MAIL_USE_POP.
+       * unexcw.c (copy_executable_and_dump_data_section): add new
+       BSS_PAD_SIZE so that we can re-instate a mini-bss. This keeps gdb
+       5.0 happy.
 
-1998-12-13  Andy Piper  <andy@xemacs.org>
+2000-11-06  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-       * glyphs-msw.c
-       (image_instantiator_format_create_glyphs_mswindows): line ->
-       label.
-       (mswindows_label_instantiate): ditto. Play with window flags.
-       (image_instantiator_format_create_glyphs_mswindows): ditto.
-       (vars_of_glyphs_mswindows): provide Qlabel as we support it now.
+       * console-x.h (x_device): New member modifier_release_time.
+       * event-Xt.c (x_handle_sticky_modifiers):
+       Bound interval modifier keys are sticky.
+       * event-stream.c (Vmodifier_keys_sticky_time): New variable.
+       * events.h: extern it.
 
-       * glyphs-widget.c (widget_instantiate_1): re-jig autosizing to
-       cope with lines and labels.
-       (static_instantiate): use widget_instantiate_1.
-       line -> label.
-       (image_instantiator_format_create_glyphs_widget): ditto.
+2000-11-06  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-1998-12-10  Andy Piper  <andy@xemacs.org>
+       * cmdloop.c (Fcommand_loop_1): Just add C-g to event queue.
 
-       * Makefile.in.in (objs): add gui.o
+2000-11-06  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-1998-12-10  Andy Piper  <andy@xemacs.org>
+       * event-stream.c (execute_command_event): Preserve current_events
+       and the like when event is misc-user-event.
+       Inhibit quit during the call to maybe_echo_keys.
 
-       * gui.c: adjust defines of HAVE_POPUPS so that we can build with
-       no window system.
+2000-10-31  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-1998-12-09  Andy Piper  <andy@xemacs.org>
+       * filelock.c (lock_buffer): Cope with kill-buffer. Don't create a
+       symlink when buffer is killed.
+       (inhibit_clash_detection): New variable.
 
-       * glyphs.c (finalize_image_instance): mark glyphs changed when an
-       image instance is removed so that the subwindow cache gets reset
-       and thus destroyed images get GC'd.
+2000-10-30  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-1998-12-08  Andy Piper  <andy@xemacs.org>
+       * console.c (Fset_input_method): Trigger redisplay on tty.
 
-       * gui-msw.c (mswindows_handle_gui_wm_command): call
-       MARK_SUBWINDOWS_CHANGED.
+2000-11-07  Martin Buchholz  <martin@xemacs.org>
 
-       * glyphs-msw.c (mswindows_finalize_image_instance): make sure
-       subwindows really get deleted.
+       * process.c (Fprocess_status): Revert to previous behavior:
+       (process-status "nosuchprocess") ==> nil
 
-       * redisplay.c: new variable subwindows_changed[_set].
-       (redisplay_window): use it.
-       (redisplay_frame): ditto.
-       (redisplay_device): ditto.
-       (redisplay_without_hooks): ditto.
+2000-11-06  Martin Buchholz  <martin@xemacs.org>
 
-       * device.h (MARK_DEVICE_SUBWINDOWS_CHANGED): new macro for
-       subwindows redisplay as per glyphs equivalent.
-       * redisplay.h: ditto.
-       (MARK_SUBWINDOWS_CHANGED): ditto.
-       (RESET_CHANGED_SET_FLAGS): ditto.
-       * frame.h (MARK_FRAME_SUBWINDOWS_CHANGED): ditto.
+       * mule-charset.h (CHARSET_BY_LEADING_BYTE):
+       Work around another GCC 2.95.2 optimizer bug.
 
-1998-12-07  Andy Piper  <andy@xemacs.org>
+2000-11-02  Martin Buchholz  <martin@xemacs.org>
 
-       * frame.c (Fmake_frame): reset subwindow cachels on non-stream
-       frames.
+       * process.c (Fget_process): Use LIST_LOOP_2.
+       (kill_buffer_processes): Use LIST_LOOP_2.
 
-       * redisplay.c (redisplay_frame): invalidate subwindow cachels.
+       * minibuf.c (Fall_completions):
+       Delete old non-functional code for FSF fourth argument.
 
-       * event-msw.c (mswindows_wnd_proc): catch the various WM_CTLCOLOR*
-       messages and paint widget glyphs as appropriate with their face fg
-       & bg.
+       * frame.c (frame_matches_frame_spec):
+       Renamed from `frame_matches_frametype'.  Update all callers.
+       (device_matches_device_spec):
+       Renamed from 'device_matches_console_spec'.  Update all callers.
 
-1998-12-06  Andy Piper  <andy@xemacs.org>
+       * doc.c (Fsubstitute_command_keys):
+       Remove buffer overflow crash.  Small code cleanups.
 
-       * glyphs-msw.c (vars_of_glyphs_mswindows): provide widget types
-       here rather than in glyphs-widget - do this because we only want
-       to provide what is really available.
+       * casetab.c (check_case_table): Simpler code.
 
-       * glyphs.c (Fimage_instance_property): new function to get the
-       properties of image instances. wires through to console specific
-       methods and then to widget specific methods.
-       (Fset_image_instance_property): ditto but for setting widget properties.
-       (check_valid_face): make extern so that it can be used elsewhere.
+       * window.c (Freplace_buffer_in_windows):
+       Give this the same WHICH-FRAMES and WHICH-DEVICES parameters
+       (and similar implementation) as Fdelete_windows_on.
+       Update all callers.
 
-       * glyphs-widget.c (widget_property): new function. gets the
-       properties of widgets in general and wires the function through to
-       widget specific ones.
-       (widget_set_property): ditto but for setting widget properties.
+       * alloc.c (Fmake_list):
+       * alloc.c (make_vector):
+       * alloc.c (Fmake_vector):
+       * alloc.c (make_bit_vector):
+       * alloc.c (Fmake_bit_vector):
+       * alloc.c (Fbit_vector):
+       * alloc.c (Fmake_string):
+       * alloc.c (Fpurecopy):
+       * alloc.c (Fmemory_limit):
+       * buffer.c:
+       * buffer.c (Fget_buffer):
+       * buffer.c (Fkill_buffer):
+       * buffer.c (complex_vars_of_buffer):
+       * bytecode.c (Fcompiled_function_stack_depth):
+       * callint.c (Fprefix_numeric_value):
+       * event-stream.c:
+       * event-stream.c (Fread_key_sequence):
+       * casetab.c:
+       * casetab.c (Fcase_table_p):
+       * casetab.c (check_case_table):
+       * casetab.c (Fset_case_table):
+       * casetab.c (Fset_standard_case_table):
+       * chartab.c:
+       * chartab.c (Fchar_table_type):
+       * chartab.c (Freset_char_table):
+       * chartab.c (Fget_char_table):
+       * chartab.c (Fget_range_char_table):
+       * chartab.c (Fput_char_table):
+       * chartab.c (Fmap_char_table):
+       * chartab.c (Fcategory_table_p):
+       * chartab.c (Fcheck_category_at):
+       * chartab.c (Fchar_in_category_p):
+       * chartab.c (Fcategory_table):
+       * chartab.c (Fcopy_category_table):
+       * chartab.c (Fset_category_table):
+       * chartab.c (Fcategory_designator_p):
+       * chartab.c (Fcategory_table_value_p):
+       * cmds.c (Fdelete_char):
+       * cmds.c (Fdelete_backward_char):
+       * cmds.c (Fself_insert_command):
+       * cmds.c (Fself_insert_internal):
+       * console.c (Fvalid_console_type_p):
+       * console.c (Fcdfw_console):
+       * console.c (Fconsole_type):
+       * console.c (Fconsole_name):
+       * console.c (Fconsole_device_list):
+       * console.c (Fconsole_on_window_system_p):
+       * data.c:
+       * data.c (Feq):
+       * data.c (Fold_eq):
+       * data.c (Fsubr_interactive):
+       * data.c (Fchar_to_int):
+       * data.c (Fint_to_char):
+       * data.c (Fsetcar):
+       * data.c (Fsetcdr):
+       * data.c (Fnumber_to_string):
+       * data.c (Fstring_to_number):
+       * data.c (Frem):
+       * database.c (mark_database):
+       * database.c (finalize_database):
+       * database.c (Fdatabase_live_p):
+       * database.c (Fdatabasep):
+       * device-x.c (Fx_get_resource):
+       * device.c (Fdfw_device):
+       * dired.c:
+       * dired.c (Ffile_name_completion):
+       * dired.c (Ffile_name_all_completions):
+       * dired.c (Fuser_name_completion):
+       * dired.c (Fuser_name_completion_1):
+       * dired.c (Fuser_name_all_completions):
+       * doc.c (Fdocumentation):
+       * doc.c (Fdocumentation_property):
+       * doc.c (Fsubstitute_command_keys):
+       * editfns.c:
+       * editfns.c (Fchar_to_string):
+       * editfns.c (Fstring_to_char):
+       * editfns.c (Ftemp_directory):
+       * editfns.c (Finsert_char):
+       * editfns.c (Fbuffer_substring_no_properties):
+       * editfns.c (Fnarrow_to_region):
+       * editfns.c (Fchar_equal):
+       * editfns.c (Fchar_Equal):
+       * editfns.c (Ftranspose_regions):
+       * emacs.c (Fdump_emacs):
+       * eval.c (Fthrow):
+       * eval.c (Fcommand_execute):
+       * eval.c (Fautoload):
+       * eval.c (Fbacktrace):
+       * eval.c (Fbacktrace_frame):
+       * events.c:
+       * events.c (Fcopy_event):
+       * events.c (Fcharacter_to_event):
+       * events.c (Fevent_button):
+       * events.c (Fevent_process):
+       * extents.c:
+       * extents.c (Fnext_extent_change):
+       * extents.c (Fextent_property):
+       * faces.c (Ffacep):
+       * faces.c (Fmake_face):
+       * file-coding.c:
+       * file-coding.c (Fencode_shift_jis_char):
+       * file-coding.c (Fencode_big5_char):
+       * fileio.c (Ffile_name_directory):
+       * fileio.c (Ffile_name_nondirectory):
+       * fileio.c (Ffile_name_as_directory):
+       * fileio.c (Fdirectory_file_name):
+       * fileio.c (Ffile_truename):
+       * fileio.c (Fsubstitute_in_file_name):
+       * fileio.c (Ffile_modes):
+       * fileio.c (Fset_file_modes):
+       * fileio.c (Fset_default_file_modes):
+       * fileio.c (Fverify_visited_file_modtime):
+       * floatfns.c (Facos):
+       * floatfns.c (Fasin):
+       * floatfns.c (Fatan):
+       * floatfns.c (Fcos):
+       * floatfns.c (Fsin):
+       * floatfns.c (Ftan):
+       * floatfns.c (Fbessel_j0):
+       * floatfns.c (Fbessel_j1):
+       * floatfns.c (Fbessel_jn):
+       * floatfns.c (Fbessel_y0):
+       * floatfns.c (Fbessel_y1):
+       * floatfns.c (Fbessel_yn):
+       * floatfns.c (Ferf):
+       * floatfns.c (Ferfc):
+       * floatfns.c (Flog_gamma):
+       * floatfns.c (Fexp):
+       * floatfns.c (Fexpt):
+       * floatfns.c (Flog):
+       * floatfns.c (Flog10):
+       * floatfns.c (Fsqrt):
+       * floatfns.c (Fcube_root):
+       * floatfns.c (Facosh):
+       * floatfns.c (Fasinh):
+       * floatfns.c (Fatanh):
+       * floatfns.c (Fcosh):
+       * floatfns.c (Fsinh):
+       * floatfns.c (Ftanh):
+       * floatfns.c (Fabs):
+       * floatfns.c (Ffloat):
+       * floatfns.c (Flogb):
+       * floatfns.c (Fceiling):
+       * floatfns.c (Ffloor):
+       * floatfns.c (Fround):
+       * floatfns.c (Ftruncate):
+       * floatfns.c (Ffceiling):
+       * floatfns.c (Fffloor):
+       * floatfns.c (Ffround):
+       * floatfns.c (Fftruncate):
+       * fns.c (Fstring_equal):
+       * fns.c (Fstring_lessp):
+       * fns.c (concat2):
+       * fns.c (concat3):
+       * fns.c (vconcat2):
+       * fns.c (vconcat3):
+       * fns.c (Fsubstring):
+       * fns.c (Fassoc):
+       * fns.c (Fold_assoc):
+       * fns.c (assoc_no_quit):
+       * fns.c (Fassq):
+       * fns.c (Fold_assq):
+       * fns.c (assq_no_quit):
+       * fns.c (Frassoc):
+       * fns.c (Fold_rassoc):
+       * fns.c (Frassq):
+       * fns.c (Fold_rassq):
+       * fns.c (rassq_no_quit):
+       * fns.c (Fremassoc):
+       * fns.c (remassoc_no_quit):
+       * fns.c (Fremassq):
+       * fns.c (remassq_no_quit):
+       * fns.c (Fremrassoc):
+       * fns.c (Fremrassq):
+       * fns.c (remrassq_no_quit):
+       * fns.c (Fsort):
+       * fns.c (Fplist_get):
+       * fns.c (Fplist_put):
+       * fns.c (Fplist_remprop):
+       * fns.c (Fplist_member):
+       * fns.c (Flax_plist_get):
+       * fns.c (Flax_plist_put):
+       * fns.c (Flax_plist_remprop):
+       * fns.c (Flax_plist_member):
+       * fns.c (Fequal):
+       * fns.c (Fold_equal):
+       * fns.c (Frequire):
+       * fns.c (Fbase64_encode_region):
+       * fns.c (Fbase64_encode_string):
+       * fns.c (Fbase64_decode_region):
+       * frame.c:
+       * frame.c (frame_matches_frame_spec):
+       * frame.c (device_matches_device_spec):
+       * frame.c (next_frame):
+       * frame.c (previous_frame):
+       * frame.c (Fnext_frame):
+       * frame.c (Fprevious_frame):
+       * frame.c (Fframe_property):
+       * frame.c (Fset_frame_height):
+       * frame.c (Fset_frame_size):
+       * frame.h:
+       * glyphs.c:
+       * glyphs.c (if):
+       * glyphs.c (decode_error_behavior_flag):
+       * glyphs.c (Fmake_image_instance):
+       * indent.c (Findent_to):
+       * intl.c (Fignore_defer_gettext):
+       * keymap.c (Fkeymapp):
+       * keymap.c (Flookup_key):
+       * lread.c:
+       * lread.c (Fload_internal):
+       * lread.c (Feval_buffer):
+       * lread.c (Feval_region):
+       * macros.c (Fexecute_kbd_macro):
+       * marker.c (set_marker_internal):
+       * marker.c (Fset_marker):
+       * marker.c (set_marker_restricted):
+       * marker.c (Fcopy_marker):
+       * marker.c (noseeum_copy_marker):
+       * menubar.c:
+       * menubar.c (Fpopup_menu):
+       * minibuf.c:
+       * mule-charset.c (Fcharset_name):
+       * mule-charset.c (Fchar_charset):
+       * mule-charset.c (Fchar_octet):
+       * mule-charset.c (Fsplit_char):
+       * mule-wnnfns.c (Fwnn_open):
+       * mule-wnnfns.c (Fwnn_dict_comment):
+       * mule-wnnfns.c (Fwnn_quit_henkan):
+       * mule-wnnfns.c (Fwnn_word_toroku):
+       * mule-wnnfns.c (Fwnn_word_sakujo):
+       * mule-wnnfns.c (Fwnn_word_use):
+       * mule-wnnfns.c (Fwnn_hindo_set):
+       * objects.c:
+       * objects.c (Fmake_color_instance):
+       * objects.c (Fmake_font_instance):
+       * print.c (Fwrite_char):
+       * process.c:
+       * process.c (mark_process):
+       * process.c (print_process):
+       * process.c (get_process_from_usid):
+       * process.c (Fprocessp):
+       * process.c (Fprocess_live_p):
+       * process.c (Fget_process):
+       * process.c (Fget_buffer_process):
+       * process.c (get_process):
+       * process.c (Fprocess_id):
+       * process.c (Fprocess_name):
+       * process.c (Fprocess_command):
+       * process.c (init_process_io_handles):
+       * process.c (start_process_unwind):
+       * process.c (Fstart_process_internal):
+       * process.c (Fopen_multicast_group_internal):
+       * process.c (Fset_process_window_size):
+       * process.c (read_process_output):
+       * process.c (send_process):
+       * process.c (Fprocess_tty_name):
+       * process.c (Fset_process_buffer):
+       * process.c (Fprocess_buffer):
+       * process.c (Fprocess_mark):
+       * process.c (set_process_filter):
+       * process.c (Fset_process_filter):
+       * process.c (Fprocess_filter):
+       * process.c (Fprocess_send_region):
+       * process.c (Fprocess_send_string):
+       * process.c (exec_sentinel):
+       * process.c (Fset_process_sentinel):
+       * process.c (Fprocess_sentinel):
+       * process.c (status_notify):
+       * process.c (Fprocess_status):
+       * process.c (Fprocess_exit_status):
+       * process.c (process_send_signal):
+       * process.c (Fprocess_send_eof):
+       * process.c (deactivate_process):
+       * process.c (remove_process):
+       * process.c (Fdelete_process):
+       * process.c (kill_buffer_processes):
+       * process.c (Fprocess_kill_without_query):
+       * process.c (Fprocess_kill_without_query_p):
+       * rangetab.c:
+       * rangetab.c (Fget_range_table):
+       * rangetab.c (Fput_range_table):
+       * rangetab.c (Fremove_range_table):
+       * rangetab.c (Fclear_range_table):
+       * search.c:
+       * search.c (Fskip_chars_forward):
+       * search.c (Fskip_chars_backward):
+       * search.c (Fskip_syntax_forward):
+       * search.c (Fskip_syntax_backward):
+       * search.c (search_command):
+       * search.c (Freplace_match):
+       * search.c (Fregexp_quote):
+       * select.c (Fown_selection_internal):
+       * select.c (Fselection_owner_p):
+       * select.c (Fselection_exists_p):
+       * select.c (Fget_selection_internal):
+       * specifier.c:
+       * symbols.c:
+       * symbols.c (Fintern):
+       * symbols.c (Fintern_soft):
+       * symbols.c (Funintern):
+       * symbols.c (Fapropos_internal):
+       * symbols.c (Fset_default):
+       * syntax.c:
+       * syntax.c (Fsyntax_table_p):
+       * syntax.c (Fcopy_syntax_table):
+       * syntax.c (Fset_syntax_table):
+       * syntax.c (Fchar_syntax):
+       * syntax.c (syntax_match):
+       * syntax.c (Fmatching_paren):
+       * syntax.c (Fforward_word):
+       * syntax.c (scan_lists):
+       * syntax.c (Fscan_lists):
+       * syntax.c (Fscan_sexps):
+       * syntax.c (Fparse_partial_sexp):
+       * toolbar.c (Fcheck_toolbar_button_syntax):
+       * tooltalk.doc:
+       * window.c:
+       * window.c (Fwindowp):
+       * window.c (Fwindow_live_p):
+       * window.c (Fwindow_point):
+       * window.c (Fdelete_window):
+       * window.c (Fnext_window):
+       * window.c (Fprevious_window):
+       * window.c (Fother_window):
+       * window.c (window_loop):
+       * window.c (Fget_lru_window):
+       * window.c (Fsplit_window):
+       * window.c (Fenlarge_window):
+       * window.c (Fenlarge_window_pixels):
+       * window.c (Fshrink_window):
+       * window.c (Fshrink_window_pixels):
+       * window.c (change_window_height):
+       * window.c (Fwindow_configuration_p):
+       * window.c (Fcurrent_window_configuration):
+       * window.h:
+       * casefiddle.c (casify_object):
+       * casefiddle.c (Fupcase):
+       * casefiddle.c (Fdowncase):
+       * casefiddle.c (Fcapitalize):
+       * casefiddle.c (Fupcase_initials):
+       * casefiddle.c (casify_region_internal):
+       * casefiddle.c (casify_region):
+       * casefiddle.c (Fupcase_region):
+       * casefiddle.c (Fdowncase_region):
+       * casefiddle.c (Fcapitalize_region):
+       * casefiddle.c (Fupcase_initials_region):
+       * casefiddle.c (Fupcase_word):
+       * casefiddle.c (Fdowncase_word):
+       * casefiddle.c (Fcapitalize_word):
+       Docstring arglist/Texinfo fixes.  See man/ChangeLog for details.
+       Replace 0 with '\0' when working with bytes.
+       Replace initial "(" with "\(" in docstrings.
+
+2000-11-01  Martin Buchholz  <martin@xemacs.org>
+
+       * config.h.in: Handle alloca with Compaq C on Alpha Linux.
+
+       * m/alpha.h: Let configure handle SYSTEM_MALLOC on Linux.
+
+2000-10-31  Martin Buchholz  <martin@xemacs.org>
+
+       * eldap.c (print_ldap): 64-bit cleaner.  Fixes warning.
+
+2000-10-30  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * doprnt.c (emacs_do_prnt_1): Format (format "%01.2d" 10)
+       correctly.
+
+2000-10-30  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * fileio.c (Vauto_save_list_file_prefix): Moved from startup.el.
+       (inhibit_auto_save_session): New variable.
+       (vars_of_fileio): Declare and initialize them.
+       * fileio.c (Fdo_auto_save): Don't create session file if
+       Vinhibit_auto_save_session or Vauto_save_list_file_prefix is non-nil.
+
+2000-10-31  Martin Buchholz  <martin@xemacs.org>
+
+       * sgiplay.c (play_internal): C++ compilability.
+       * alloc.c (SWEEP_FIXED_TYPE_BLOCK): Remove unused var `SFTB_prev'.
+       * callproc.c (Fold_call_process_internal):
+       Remove unused vars `env', `first'.
+       * scrollbar.c (update_scrollbar_instance):
+       #### unused var `current_window'.
+       * redisplay-tty.c: Put currently unused vars insert_mode_on,
+       etc. within #ifdef NOT_YET.
+       * emacs.c: #### unused vars `initial_argc', `initial_argv'.
+       * dialog-x.c (dbox_descriptor_to_widget_value): ### unused var `title'.
+       * specifier.c (specifier_instance):
+       #### unused var `tag'.
+       Use WINDOW_BUFFER, FRAME_DEVICE instead of their expansion.
 
-       * glyphs-msw.c (mswindows_combo_instantiate): Add functionality to
-       add items to the list. Play with window styles a bit to get the
-       desired effect.
-       (mswindows_widget_property): break out specific widget properties.
-       (mswindows_button_property): new function. gets the checked state
-       of a button.
-       (mswindows_combo_property): new function. gets the current
-       selection in the combo box.
-       (mswindows_widget_set_property): new function. sets specific
-       properties of specific widgets.
+2000-10-27  Martin Buchholz  <martin@xemacs.org>
 
-       * glyphs-widget.c (check_valid_item_list): new function. check
-       that items for a combo-box are just a list of strings.
-       (combo_validate): new function. check there is an item list.
-       (widget_instantiate_1): new function. renamed from
-       widget_instantiate so that we can do slightly different things for
-       other widgets.
-       (widget_instantiate): call widget_instantiate_1.
-       (combo_instantiate): new function to instantiate combo boxes,
-       defaults height to the pixel height of the number of items in the
-       box.
-       (syms_of_glyphs_widget): move widget keywords here.
-       (image_instantiator_format_create_glyphs_widget): use new combo
-       functions.
+       * fns.c (Fbutlast):
+       * fns.c (list_sort):
+       * fns.c (Ffillarray):
+       * fns.c (bytecode_nconc2):
+       * fns.c (Fnconc):
+       * fns.c (mapcar1):
+       * fns.c (Fmapconcat):
+       Be pedantically 64-bit correct.  For the time when someone will
+       want to have a list with length > 2**32.
 
-1998-12-04  Andy Piper  <andy@xemacs.org>
+       * lisp.h (PRIVATE_EXTERNAL_LIST_LOOP_6):
+       Work around MIPSpro compiler bug.
 
-       * event-msw.c (mswindows_wnd_proc): mule-ize.
+       * process-unix.c (unix_kill_child_process): Add snarky comment.
+       * process-unix.c (try_to_initialize_subtty):  Oops, `=' ==> `=='
 
-       * glyphs.c (pixmap_to_lisp_data): mule-ize.
-
-       * glyphs-msw.c (extract_xpm_color_names): mule-ize.
-       (resource_name_to_resource): ditto.
-       (mswindows_resource_instantiate): ditto.
-       (mswindows_widget_instantiate): ditto.
-       (mswindows_widget_set_property): ditto.
-
-       * redisplay-output.c (redisplay_output_subwindow): don't show
-       subwindows if they are obscured at the edge of the frame, emacs
-       gets into some sort of redisplay loop otherwise.
-
-       * gui.h: prototype gui_item_selected_p.
-
-       * gui.c (gui_item_selected_p): new function to determine the
-       selected state of a gui_item.
-
-       * frame.h (struct frame): add subwindows_changed flag.
-
-       * redisplay.c (redisplay_frame): call update_frame_subwindows ().
-
-       * glyphs.c (update_subwindow): new function to update a
-       subwindow's state.
-       (update_frame_subwindows): new function to update all the
-       subwindows on a frame.
-
-       * console.h (struct console_methods): add update_subwindow.
+       * config.h.in: Oops, _getpt ==> _getpty
 
-       * glyphs-msw.c (mswindows_widget_property): return selected state
-       for selected property.
-       (mswindows_update_subwindow): new function. updates widget glyphs
-       in redisplay as per menubars or toolbars e.g. selected state.
-       (console_type_create_glyphs_mswindows): add update_subwindow.
-
-1998-12-03  Andy Piper  <andy@xemacs.org>
-
-       * console-tty.c (syms_of_console_tty): MULE -> FILE_CODING since
-       tty coding system things are such.
-
-       * glyphs-widget.c (widget_face_font_info): new function for
-       pulling out height and width metrics for a widget's face.
-       (widget_text_to_pixel_conversion): calculate pixel sizes of text
-       for widgets.
-
-       * event-msw.c (mswindows_drain_windows_queue): translate messages
-       that are destined for subwindows. This makes edit fields interact
-       with the keyboard correctly.
-       nuke warnings by #ifndef'ing out stuff not required by msg select().
-
-       * glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM): new
-       macro defining the iiforma without the symbol required by widget.
-       (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT): use it.
-
-       * general.c (syms_of_general): add Qwidget, Qselected.
-
-       * faces.c (complex_vars_of_faces): add widget face inheriting from
-       gui-element face.
-
-1998-11-09  Andy Piper  <andy@xemacs.org>
-
-       * window.h (struct window): add a cache of subwindows on a
-       per-window basis.
-
-       * window.c (mark_window): mark the subwindow_instance_cache.
-       (allocate_window): initialise the subwindow instance_cache.
-
-       * toolbar-x.c (x_output_toolbar): call redisplay_clear_region
-       instead of the devmeth.
-       (x_clear_toolbar): ditto.
-
-       * redisplay-x.c (x_output_display_block): call
-       redisplay_output_subwindow for subwindows and widgets.
-
-       * redisplay-tty.c (tty_output_display_block): add IMAGE_WIDGET to
-       types to do nothing for.
-
-       * lisp.h: declare new widget/subwindow symbols.
-
-       * glyphs.c (image_instantiate): cache subwindows on a per-window
-       basis.
-       (subwindow_possible_dest_types): new function for subwindow dest
-       types.
-       (subwindow_instantiate): generic instantiation of a
-       subwindow. specialised by device multi-methods.
-       (Fsubwindowp): moved from glyphs-x.c. adapted for glyph-based
-       subwindows.
-       (Fimage_instance_subwindow_id): ditto.
-       (Fresize_subwindow): ditto.
-       (Fforce_subwindow_map): ditto.
-
-       * glyphs-x.c (x_print_image_instance): remove subwindow
-       stuff. Handled genrically in glyphs.c.
-       (x_image_instance_equal): ditto.
-       (x_image_instance_hash): ditto.
-       (x_finalize_image_instance): delete subwindows when required.
-       (mark_subwindow) (print_subwindow) (finalize_subwindow)
-       (subwindow_hash) (Fmake_subwindow): deleted because of new,
-       glyph-based, subwindow implementation.
-       (Fsubwindow_height) (Fsubwindow_width) (Fsubwindow_xid): aliased
-       in glyphs.el
-       (Fsubwindowp) (Fresize_subwindow) (Fforce_subwindow_map): moved to
-       glyphs.c.
-       (x_unmap_subwindow): new function to unmap X subwindows.
-       (x_map_subwindow): new function to map X subwindows.
-       (x_subwindow_instantiate): new function to instantiate X
-       subwindows.
-       (x_resize_subwindow): new function to resize X subwindows.
-       (console_type_create_glyphs_x): add subwindow functions.
-       (image_instantiator_format_create_glyphs_x): add device
-       multi-methods for xpm, xbm and subwindow.
-
-       * glyphs.el (subwindow-xid): old alias for new subwindow functions.
-       (subwindow-width): ditto.
-       (subwindow-height): ditto.
-
-       * glyphs-msw.c (mswindows_widget_instantiate): new function for
-       generally instantiating ms subwindows. Used by
-       mswindows_*_instantiate.
-       (mswindows_edit_instantiate): instantiate an edit field on a
-       mswindows frame.
-
-1998-11-04  Andy Piper  <andy@xemacs.org>
-
-       * symsinit.h: declare new functions.
-
-       * redisplay.h: declare new functions.
-
-       * redisplay-x.c (x_output_display_block): call
-       redisplay_clear_region rather than x_clear_region.
-       (x_output_string): ditto.
-       (x_output_pixmap): ditto.
-       (x_clear_to_window_end): ditto.
-       (x_output_eol_cursor): ditto.
-       (x_clear_region): only do X specific things. other duties handled
-       in redisplay_clear_region.
-
-       * redisplay-tty.c (tty_clear_region): do tty specific things - some
-       duties moved to redisplay_clear_region.
-
-       * redisplay-output.c (clear_left_border): use
-       redisplay_clear_region instead of device method.
-       (clear_right_border): ditto.
-       (output_display_line): ditto.
-       (redisplay_output_subwindow): ditto.
-       (redisplay_clear_top_of_window): ditto.
-       (redisplay_clear_region): perform duties previously handled by
-       device methods. call the appropriate device method at the
-       end. unmap subwindows if necessary.
-
-       * redisplay-msw.c (mswindows_output_string): use
-       redisplay_clear_region instead of mswindows_clear_region.
-       (mswindows_clear_to_window_end): ditto.
-       (mswindows_output_display_block): output subwindows when required.
-       (mswindows_clear_region): only do mswindows specific things,
-       everything else is now handled in redisplay_clear_region.
-
-       * gui.h: add item id hash defines and declare function prototypes.
-
-       * gui.c (mark_gui_item): new function for marking gui_items.
-       (gui_item_hash): generic hash function for generating command ids
-       for gui_items.
-
-       * gui-msw.c: new file.
-       (mswindows_handle_gui_wm_command): new function to handle widget
-       callbacks.
-
-       * glyphs.h (MAYBE_IIFORMAT_DEVMETH): new function for device
-       multi-methods.
-       (IIFORMAT_HAS_SHARED_METHOD): ditto.
-       (DEFINE_DEVICE_IIFORMAT): ditto.
-       (INITIALIZE_DEVICE_IIFORMAT): ditto.
-       (struct Lisp_Image_Instance): add widget and subwindow data plus
-       appropriate access functions.
-
-       * glyphs.c (decode_device_ii_format): new function for decoding
-       image instantiator functions based on a device type as well as an
-       image format.
-       (decode_image_instantiator_format): just call
-       decode_device_ii_format with nil device.
-       (add_entry_to_device_ii_format_list): new function for per device
-       method instances.
-       (add_entry_to_image_instantiator_format_list): just call
-       add_entry_to_device_ii_format_list with nil device.
-       (check_valid_vector): new function.
-       (instantiate_image_instantiator): instantiate using per-format
-       method and then per-format-per-device method (device
-       multi-methods). signal an error if neither is possible.
-       (mark_image_instance): cope with subwindows and widgets.
-       (print_image_instance): ditto.
-       (image_instance_equal): ditto.
-       (image_instance_hash): ditto.
-       (allocate_glyph): ditto.
-       (glyph_width): ditto.
-       (glyph_height_internal): ditto.
-       (xpm_instantiate): removed because of device multi-methods.
-       (mark_subwindow_cachels): new cachel functions for caching
-       instantiated subwindows on a per-frame basis. mostly copied from
-       glyph cachel functions.
-       (update_subwindow_cachel_data): ditto.
-       (add_subwindow_cachel): ditto.
-       (get_subwindow_cachel_index): ditto.
-       (reset_subwindow_cachels): ditto.
-       (mark_subwindow_cachels_as_not_updated): ditto.
-       (unmap_subwindow): generic unmapping of subwindows based on cachel
-       data.
-       (map_subwindow): ditto.
-       (initialize_subwindow_image_instance): generic initialisation of
-       subwindow data.
-       (syms_of_glyphs): add widget keywords.
-
-       * glyphs-x.h (struct x_subwindow_data): convert Lisp_Subwindow to
-       x_subwindow_data.
-
-1998-11-04  Andy Piper  <andy@xemacs.org>
-
-       * glyphs-widget.c: new file for instantiating widget type glyphs.
-       (widget_possible_dest_types): new general dest type function for
-       widgets.
-       (widget_validate): ditto.
-       (initialize_widget_image_instance): ditto
-       (widget_instantiate): ditto. Sets up fg/bg, gui_item parsing
-       before handing on control to device multi-methods.
-       (syms_of_glyphs_widget): new function.
-       (image_instantiator_format_create_glyphs_widget): new function,
-       added placeholders for button, edit, combo, scrollbar
-       (vars_of_glyphs_widget): new function.
-
-       * glyphs-msw.h (WIDGET_INSTANCE_MSWINDOWS_HANDLE): new define for
-       storing window ids of widgets.
-
-       * glyphs-msw.c (mswindows_finalize_image_instance): cope with
-       deletion of widget and subwindow glyphs.
-       (mswindows_unmap_subwindow): new device function for unmapping
-       subwindows on a msw frame.
-       (mswindows_map_subwindow): ditto.
-       (mswindows_register_image_instance): register instantiated widgets
-       with the widget hastable.
-       (mswindows_button_instantiate): instantiate a button type widget
-       on an msw frame.
-       (mswindows_subwindow_instantiate): instanttiate a subwindow on a
-       mswindows frame.
-       (image_instantiator_format_create_glyphs_mswindows): add device
-       multi-methods for xbm, xpm, subwindow, edit and button.
+2000-10-26  Martin Buchholz  <martin@xemacs.org>
 
-       * frame.h (struct frame): add subwindow_cachels dynarr for caching
-       information about subwindows visible on the current frame. used by
-       redisplay_clear_region to unmap subwindows as required.
+       * config.h.in:
+       * regex.c:
+       Use void*, not char*, as return type of alloca().
 
-       * frame.c (mark_frame): mark subwindow_cachels.
-       (allocate_frame_core): instantiate subwindow_cachels.
+       * alloc.c (free_marker): Side effect inside assert expression!
 
-       * frame-msw.c (mswindows_init_frame_1): instntiate and mark the
-       widget hashtable.
+2000-10-16  MIYASHITA Hisashi  <himi@m17n.org>
 
-       * event-msw.c (mswindows_wnd_proc): add call to
-       mswindows_handle_gui_wm_command to handle widget callbacks.
+       * mule-charset.c (Fset_charset_ccl_program): To check
+       if the given ccl program is valid, use setup_ccl_program()
+       instead of CHECK_VECTOR().
+       (Fmake_charset): Likewise.
 
-       * emacs.c (main_1): add calls to glyphs-widget initialisation
-       routines.
+2000-10-20  Golubev I. N.  <gin@mo.msk.ru>
 
-       * console.h (struct console_methods): add
-       unmap/map_subwindow_method for use be redisplay_clear_region to
-       map and unmap subwindows. Remove xpm and xbm stuff - now dealt
-       with by image instantiator multi-methods. Add
-       resize_subwindow_method.
+       * faces.c (get_extent_fragment_face_cache_index):
+       Fix cachel.merged_faces memory leak.
 
-       * console-stream.c (stream_clear_region): change signature to
-       match new generic clear region function.
+2000-10-14  MIYASHITA Hisashi  <himi@m17n.org>
 
-       * Makefile.in.in: add glyphs-widget.o to list of objects.
+       * mule-ccl.c (ccl_driver)<CCL_DECODE_SJIS>:
+       Reset MSB of octets obtained by DECODE_SJIS
+       because of the incompatibility with Emacs.
+       (ccl_driver)<CCL_ENCODE_SJIS>:
+       Set MSB of octets before passing them to
+       ENCODE_SJIS because of the incompatibility
+       with Emacs.
 
-       * console-msw.h (struct mswindows_frame): add widget hashtable for
-       wiring command ids to callbacks.
+2000-10-18   Daiki Ueno  <ueno@unixuser.org>
 
-1998-12-16  Andy Piper  <andy@xemacs.org>
+       * lrecord.h (DECLARE_TYPECHECK_LRECORD): Abolish.
+       (DECLARE_LRECORD): Undo the last change.
+       (DECLARE_EXTERNAL_LRECORD): Expand typechecking stuff.
 
-       * XEmacs 21.2.6 is released
+2000-10-17   Daiki Ueno  <ueno@unixuser.org>
 
-1998-12-08  Hrvoje Niksic  <hniksic@srce.hr>
+       * lrecord.h (INIT_EXTERNAL_LRECORD_IMPLEMENTATION): Connect
+       the implementation to lrecord_implementations_table.
 
-       * md5.c (Fmd5): Correctly initiate string input stream.
+2000-10-14   Daiki Ueno  <ueno@unixuser.org>
 
-       * Makefile.in.in (tests): Add md5-tests.el.
+       * lrecord.h (MAKE_EXTERNAL_LRECORD_IMPLEMENTATION): Don't set the
+       initial value of `lrecord_type_##c_name' and
+       `lrecord_##c_name.lrecord_type_index'; discard "const" qualifier.
+       (INIT_EXTERNAL_LRECORD_IMPLEMENTATION): New macro.
+       [ERROR_CHECK_TYPECHECK] (DECLARE_TYPECHECK_LRECORD): New macro.
+       [ERROR_CHECK_TYPECHECK] (DECLARE_LRECORD): Use it.
+       [ERROR_CHECK_TYPECHECK] (DECLARE_EXTERNAL_LRECORD): Use it.
 
-1998-12-06  Martin Buchholz  <martin@xemacs.org>
+2000-10-17  Martin Buchholz  <martin@xemacs.org>
 
-       * lisp.h:
-       * alloc.c (make_vector): remove travesty
-       (Fmake_vector):
-       (make_pure_vector):
-       (pure_cons):
-       (make_bit_vector_internal):
-       (make_bit_vector):
-       (make_bit_vector_from_byte_vector):
-       (Fmake_bit_vector):
-       - make vector_equal a little faster.
-       - Don't use variable name `new'.
-       - Use size_t instead of EMACS_INT.
-       - usual Martin-style pointless bit-twiddling.
+       * miscplay.c (sndcnv8S_2mono):
+       (sndcnv2monounsigned):
+       (sndcnvULaw_2linear):
+       (sndcnv16swap):
+       Remove implementation-defined behavior.
 
-       * fns.c (mapcar1):
-       (Fmapconcat):
-       (Fmapcar):
-       (Fmapvector):
-       Make mapcar faster.  In particular, make
-         (mapc #'identity long-string)
-       MUCH faster under Mule.
-       * tests/automated/lisp-tests.el: Test 'em!
+2000-10-12  Martin Buchholz  <martin@xemacs.org>
 
-1998-12-06  Martin Buchholz  <martin@xemacs.org>
+       * input-method-xlib.c: Warning suppression.
 
-       * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
-       bytecode.
+2000-10-05  MIYASHITA Hisashi  <himi@m17n.org>
 
-1998-12-13  Martin Buchholz  <martin@xemacs.org>
+       * mule-ccl.c: Sync up with Emacs 21.0.90.
+       (ccl_driver)<CCL_TranslateCharacter>: Disabled.
+       Do nothing.
+       (ccl_driver)<CCL_TranslateCharacterConstTbl>:
+       Likewise.
+       (ccl_driver[WriteMultibyteChar2]): Bug fix.
+       Use MAX_LEADING_BYTE_OFFICIAL_2 instead of
+       MIN_LEADING_BYTE_OFFICIAL_2 to check whether the
+       leading char belongs to official 2-dimensional charset.
+       (CCL_WRITE_CHAR): When CCL_MODE_ENCODING,
+       write the given character as is.  Otherwise,
+       if it is a multibyte char, convert it by
+       non_ascii_set_charptr_emchar, then write it.
+       (CCL_WRITE_STRING): Likewise.
+       (ccl_get_compiled_code): New function.
+       (setup_ccl_program): When ccl_prog is invalid,
+       return -1.
+       (Fregister_code_conversion_map): New function.
+       (syms_of_mule_ccl): defsubr Fregister_code_conversion_map.
 
-       * console-msw.c: Function definitions follow coding standards
-       - This prevents e.g. find-tag on Lisp_Event finding DEVENT
+       * mule-ccl.h: Sync up with Emacs 21.0.90.
+       (Fregister_ccl_program): export it.
 
-1998-12-11  Martin Buchholz  <martin@xemacs.org>
+       * redisplay-msw.c (separate_textual_runs):
+       If ccl program is not valid, don't do ccl conversion.
 
-       * events.h (struct timeout_data):
-       * event-tty.c (tty_timeout_to_emacs_event):
-       * event-msw.c (mswindows_wm_timer_callback):
-       * event-Xt.c (Xt_timeout_to_emacs_event):
-       * event-msw.c (mswindows_cancel_dispatch_event):
-       Make sure Lisp_Objects inside events are initialized to Qnil, not
-       Qnull_pointer, which is now illegal.
+       * redisplay-x.c (separate_textual_runs): Ditto.
 
-1998-12-10  Martin Buchholz  <martin@xemacs.org>
+       * file-coding.c (Fmake_coding_system):
+       When type is ccl and value is vector, register it
+       with a proper symbol.  And checks whether the
+       given ccl program is valid.
+       (mule_decode): When calling ccl_driver, if src indicates
+       NULL pointer, set an empty string instead.
+       (mule_encode): Likewise.
+
+2000-10-11  Martin Buchholz  <martin@xemacs.org>
+
+       The following large batch of changes gets us back to a state of
+       C++ compilability.  Extbyte is now a char, which means that
+       Extbyte * and Bufbyte * cannot be freely interchanged - a win!
+
+       * tooltalk.c (Fset_tooltalk_message_attribute): Type correctness.
+
+       * sound.c (Fplay_sound): Type correctness.
+
+       * select-x.c (hack_motif_clipboard_selection): Type correctness.
+       (x_get_window_property): Type correctness.
+       (receive_incremental_selection): unsigned char ==> Extbyte
+       (selection_data_to_lisp_data): unsigned char ==> Extbyte
+       (Fx_get_cutbuffer_internal): unsigned char ==> Extbyte
+       (Fx_store_cutbuffer_internal): Type correctness.
+
+       * process-unix.c (try_to_initialize_subtty): Type correctness.
+
+       * objects-x.c (x_print_color_instance): Type correctness.
+       (x_print_font_instance): Type correctness.
+       (x_list_fonts): SExtbyte ==> Extbyte.
+       (valid_x_font_name_p): SExtbyte ==> Extbyte.
+       (x_find_charset_font): SExtbyte ==> Extbyte.
+       Use TO_INTERNAL_FORMAT.  build_string ==> make_string.
+       (truename_via_XListFonts): SExtbyte ==> Extbyte.
+       (x_font_instance_properties): Use TO_INTERNAL_FORMAT.
+       Use bufbyte_strcmp.
+
+       * mule-charset.h (LEADING_BYTE_PREFIX_P): unsigned char ==> Bufbyte
+       (PRIVATE_LEADING_BYTE_PREFIX): Add paranoia cast.
+       (BYTE_ASCII_P): Use bit ops for char-signedness safety.
+       (BYTE_C0_P): Use bit ops for char-signedness safety.
+       (BYTE_C1_P): Use bit ops for char-signedness safety.
+       (CHARSET_BY_LEADING_BYTE):
+       (CHARSET_BY_ATTRIBUTES):
+       Always use inline function.
+       Use type_checking_assert.
+       Hide chlook.
+
+       * mule-charset.c (non_ascii_charptr_copy_char):
+       Modify to work with both ASCII and non-ASCII characters.
+       Improve docs and variable names.
+       Replace over-clever fall-through switch with a simple loop.
+       (Lstream_get_emchar_1):
+       Replace over-clever fall-through switch with a simple loop.
 
-       * lisp.h: Fix up prototypes to match alloc.c
+       * menubar-x.c (menu_item_descriptor_to_widget_value_1):
+       Warning suppression.
 
-1998-12-09  Andy Piper  <andy@xemacs.org>
+       * lstream.h (Lstream_get_emchar): BYTE_ASCII_P cannot be used on
+       the return value of Lstream_getc, which could be EOF as well.
 
-       * glyphs-msw.c (init_image_instance_from_xbm_inline): don't use
-       XSETINT for assigning lisp objects.
+       * lstream.c (Lstream_raw_read): Now returns ssize_t, not int.
 
-1998-12-07  Martin Buchholz  <martin@xemacs.org>
+       * lisp.h: Make Extbyte a char, not unsigned char, so that external
+       APIs can be used on Extbytes without casts.  Risky!
+       (SExtbyte): Remove.
+       (UExtbyte): Remove.
 
-       * opaque.h:
-       * console-msw.c (DHEADER):
-       (DOPAQUE_DATA):
-       (DEVENT):
-       (DCONS):
-       (DCONSCDR):
-       (DSTRING):
-       (DVECTOR):
-       (DSYMBOL):
-       (DSYMNAME):
-       - max_align_t should not be visible to the user of the
-         XOPAQUE_DATA macro.
-       - use Bufbyte instead of char
-       - parens around (FOOP (obj)) are always redundant.
-         If they were necessary, we should fix the macro instead.
-       - Always use string_data(foo) instead of foo->data.
+       * input-method-xlib.c (XIM_init_device):
+       Use Xlib.h instead of IntrinsicP.h.
+       Use HAVE_XREGISTERIMINSTANTIATECALLBACK instead of THIS_IS_X11R6,
+       which will break in X11R7.
+       Use XREGISTERIMINSTANTIATECALLBACK_NONSTANDARD_PROTOTYPE,
+       to call XRegisterIMInstantiateCallback with correct types.
 
-1998-12-07  Martin Buchholz  <martin@xemacs.org>
+       * gui-x.c (button_item_to_widget_value): Type correctness.
 
-       * sysdep.c (set_descriptor_non_blocking):
-       Since O_NONBLOCK is now always #defined, make use of fcntl
-       conditional on F_SETFL being defined.
+       * glyphs.c (bitmap_to_lisp_data):  Type correctness.
 
-1998-12-09  Andy Piper  <andy@xemacs.org>
+       * glyphs-x.c (pixmap_from_xbm_inline): Type correctness.
+       (xbm_instantiate_1): Type correctness.
+       (BUILD_GLYPH_INST):  Type correctness.
 
-       * menubar-msw.c (mswindows_handle_wm_command): add back in checks
-       that got removed in the merge
+       * fileio.c (Fsubstitute_in_file_name): Type correctness.
 
-1998-11-30  Greg Klanderman  <greg@alphatech.com>
+       * file-coding.c:
+       (decode_coding_sjis):
+       (decode_coding_big5):
+       (decode_coding_ucs4):
+       (decode_coding_utf8):
+       (decode_coding_iso2022):
+       (decode_coding_no_conversion):
+       Make all decoding functions take an Extbyte * arg.
+       (encode_coding_sjis):
+       (encode_coding_big5):
+       (encode_coding_ucs4):
+       (encode_coding_utf8):
+       (encode_coding_iso2022):
+       (encode_coding_no_conversion):
+       Make all encoding functions take a Bufbyte * arg.
+       Use size_t instead of unsigned int for memory sizes.
+       Only cast to unsigned char whenever dereferencing Extbyte *.
 
-       * dired.c (vars_of_dired): bugfix for previous conditionalization
-       of user-name-completion on non- Windows NT.
+       * doc.c (unparesseuxify_doc_string): Type correctness.
 
-1998-12-08  Martin Buchholz  <martin@xemacs.org>
+       * console-x.c (split_up_display_spec):
+       Rewrite without using details of internal string representation.
+       (x_semi_canonicalize_device_connection): Type correctness.
 
-       * windowsnt.h: Remove `support' for using index and rindex
+       * config.h.in:
+       (HAVE_XREGISTERIMINSTANTIATECALLBACK): New.
+       (XREGISTERIMINSTANTIATECALLBACK_NONSTANDARD_PROTOTYPE): New.
+       (HAVE_XFREE386): Removed.
 
-       * filelock.c (current_lock_owner):
-       - Change uses of index -> strchr, rindex -> strrchr
+       * buffer.h (DEC_CHARPTR): `const' correctness.
+       (bufbyte_strcmp): New.
+       (bufbyte_memcmp): New.
 
-1998-12-06  Martin Buchholz  <martin@xemacs.org>
+       * buffer.c (dfc_convert_to_internal_format): Extbyte ==> Bufbyte
 
-       * frame-msw.c (mswindows_init_frame_1):
-       - use make_lisp_hash_table, not Fmake_hash_table
-       - include elhash.h
+       * buffer.h (XCHAR_OR_CHAR_INT):
+       Always use inline function.
+       Remove redundant type checking assert() - XINT will abort quite nicely.
 
-1998-12-05  XEmacs Build Bot <builds@cvs.xemacs.org>
+2000-10-03  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-       * XEmacs 21.2.5 is released
+       * search.c (Freplace_match): Set newtext to an empty string.
 
-1998-11-30  Martin Buchholz  <martin@xemacs.org>
+2000-10-10  Martin Buchholz  <martin@xemacs.org>
 
-       * xselect.c (receive_incremental_selection):
-       * xselect.c (x_get_window_property):
-       * xmu.c (XmuReadBitmapDataFromFile):
-       * xmu.c (XmuCursorNameToIndex):
-       * xgccache.c (describe_gc_cache):
-       * xgccache.c (gc_cache_lookup):
-       * xgccache.c (free_gc_cache):
-       * xgccache.c (make_gc_cache):
-       * window.h:
-       * window.c (map_windows_1):
-       * window.c (Fother_window_for_scrolling):
-       * window.c (window_scroll):
-       * window.c (change_window_height):
-       * window.c (Fsplit_window):
-       * window.c (window_left_gutter_width):
-       * window.c (window_modeline_height):
-       * window.c (invalidate_vertical_divider_cache_in_window):
-       * window.c (window_needs_vertical_divider_1):
-       * window.c (update_mirror_internal):
-       * window.c (SET_LAST_FACECHANGE):
-       * widget.c (Fwidget_plist_member):
-       * unexec.c (copy_text_and_data):
-       * unexcw.c (copy_executable_and_dump_data_section):
-       * tooltalk.doc:
-       * tooltalk.c (struct Lisp_Tooltalk_Pattern):
-       * tooltalk.c (struct Lisp_Tooltalk_Message):
-       * toolbar.h (struct toolbar_button):
-       * toolbar.c (default_toolbar_visible_p_changed_in_window):
-       * toolbar.c (recompute_overlaying_specifier):
-       * toolbar.c (toolbar_validate):
-       * toolbar.c (toolbar_button_at_pixpos):
-       * toolbar.c (get_toolbar_coords):
-       * toolbar.c (update_frame_toolbars):
-       * toolbar-x.c:
-       * toolbar-msw.c (mswindows_handle_toolbar_wm_command):
-       * toolbar-msw.c (mswindows_find_toolbar_pos):
-       * toolbar-msw.c (mswindows_output_toolbar):
-       * toolbar-msw.c (mswindows_clear_toolbar):
-       * toolbar-msw.c:
-       * systty.h:
-       * syssignal.h:
+       * s/decosf1-3.h: Remove #include of stropts.h
+       * s/ptx.h: Remove #include of stropts.h
+       * s/usg5-4.h: Remove #include of stropts.h
        * sysproc.h:
-       * sysfile.h:
-       * sysdll.c:
-       * sysdep.h:
-       * sysdep.c (rmdir):
-       * sysdep.c (sys_fopen):
-       * sysdep.c (sys_open):
-       * sysdep.c (tty_init_sys_modes_on_device):
-       * sysdep.c (get_eof_char):
-       * sysdep.c (child_setup_tty):
-       * sysdep.c (set_descriptor_non_blocking):
-       * syntax.h:
-       * syntax.c (scan_words):
-       * syntax.c:
-       * symsinit.h:
-       * symeval.h (struct symbol_value_varalias):
-       * symeval.h (struct symbol_value_forward):
-       * symbols.c (syms_of_symbols):
-       * symbols.c (init_symbols_once_early):
-       * symbols.c (Fbuilt_in_variable_type):
-       * symbols.c (Fsymbol_value_in_buffer):
-       * symbols.c (default_value):
-       * symbols.c (Fset):
-       * symbols.c (find_symbol_value_quickly):
-       * symbols.c (store_symval_forwarding):
-       * symbols.c (set_default_console_slot_variable):
-       * symbols.c (set_default_buffer_slot_variable):
-       * symbols.c (verify_ok_for_buffer_local):
-       * symbols.c (symbol_is_constant):
-       * symbols.c (oblookup):
-       * symbols.c (Funintern):
-       * symbols.c (Fintern):
-       * symbols.c (check_obarray):
-       * sunplay.c:
-       * specifier.h (struct specifier_methods):
-       * specifier.h:
-       * specifier.c (specifier_instance):
-       * specifier.c (specifier_instance_from_inst_list):
-       * specifier.c (decode_locale_type):
-       * specifier.c (specifier_equal):
-       * specifier.c (finalize_specifier):
-       * specifier.c (prune_specifiers):
-       * specifier.c (kill_specifier_buffer_locals):
-       * sound.c (init_native_sound):
-       * sound.c:
-       * signal.c (alarm):
-       * search.c (Fmatch_data):
-       * search.c (match_limit):
-       * search.c (Freplace_match):
-       * search.c (skip_chars):
-       * search.c (scan_buffer):
-       * search.c:
-       * scrollbar.c (specifier_vars_of_scrollbar):
-       * scrollbar.c (Fscrollbar_set_hscroll):
-       * scrollbar.c (vertical_scrollbar_changed_in_window):
-       * scrollbar.c (release_window_mirror_scrollbars):
-       * scrollbar.c (free_scrollbar_instance):
-       * scrollbar-x.c:
-       * scrollbar-msw.c:
-       * s/msdos.h (O_BINARY):
+       * config.h.in:
+       Use stropts.h, not sys/stropts.h.
+       Use strtio.h, not sys/strtio.h.
+
+2000-10-04  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.36 is released.
+
+2000-09-21  Andy Piper  <andy@xemacs.org>
+
+       * glyphs-x.c (x_redisplay_widget): make sure non-structural
+       changes still involve copying the widget tree.
+       (update_widget_face): make sure a change is register in the widget
+       tree. Call update_tab_widget_face appropriately.
+       (update_tab_widget_face): ditto.
+       (x_tab_control_redisplay): make sure non-structural changes still
+       involve copying the widget tree.
+
+2000-08-31   Daiki Ueno  <ueno@unixuser.org>
+
+       * lread.c (locate_file): Check the path element is non-nil.
+
+2000-10-02  Martin Buchholz  <martin@xemacs.org>
+
+       * lisp.h: Warning suppression for SCO compilers.
+
+       * redisplay-tty.c (reset_tty_modes): Fix crash.
+       E.g. from xemacs running on X: (delete-device (make-device 'tty nil))
+
+2000-09-27  Martin Buchholz  <martin@xemacs.org>
+
+       Big signal/process handling overhaul.  Bugs fixed:
+       M-x shell, type `sleep 10000', M-x comint-interrupt-subjob and
+       M-x comint-kill-subjob should work for both values nil and t of
+       process-connection-type. It was broken on most platforms.
+       Testing on Irix and Cygwin still needed.  Other plaforms tested.
+       * sysdep.c: Move #include of stropts.h into sysproc.h.  Use pid_t.
+       * process-unix.c: Signal/Process handling overhaul.
+       (pty_name): make 64 bytes, as `expect' does, for paranoia.
+       (allocate_pty): Use all available modern methods of allocating
+       ptys, falling back to old style BSD allocation as a last resort.
+       Use allegedly more secure Unix98 pty allocation by default.
+       (allocate_pty_the_old_fashioned_way): New. the last resort.
+       (unix_create_process): Push ptem, ldterm, ttcompat where
+       available.  Autoconfiscate.
+       (try_to_initialize_subtty): New.
+       (unix_kill_child_process): Proper signal handling for ptys on most
+       platforms, using special knowledge of AIX, BSD, etc...
+       (unix_create_process): Always disconnect_controlling_terminal() for
+       subprocesses, whether using ptys or not.
+       * process.h: Remove old getpt-dependent PTY code.
+       * process.c (Fprocess_send_signal): New, obvious generic function.
+       (decode_signal): New.
+       (Finterrupt_process):
+       (Fkill_process):
+       (Fquit_process):
+       (Fstop_process):
+       (Fcontinue_process):
+       (Fsignal_process): Use decode_signal.
+       (process_send_signal):
+       Many docstring corrections.
+       Allow any signal to be sent to a process object.
+       * config.h.in: Add symbols for big signal/process overhaul.
+       * syssignal.h (EMACS_KILLPG): Use HAVE_KILLPG. Use `pid', not `gid'.
+       * sysproc.h: Include process-related headers, where available:
+       sys/stropts.h sys/strtio.h pty.h libutil.h
+       * s/irix4-0.h:
+       * s/irix5-0.h:
+       * s/cygwin32.h:
+       * s/gnu.h:
        * s/linux.h:
-       * s/freebsd.h (LIBS_TERMCAP):
-       * regex.c (re_match_2_internal):
-       * regex.c (compile_extended_range):
-       * regex.c (POP_FAILURE_POINT):
-       * regex.c (PUSH_FAILURE_POINT):
-       * redisplay.h (RESET_CHANGED_SET_FLAGS):
-       * redisplay.h:
-       * redisplay.h (struct display_line):
-       * redisplay.h (struct rune):
-       * redisplay.c (vars_of_redisplay):
-       * redisplay.c (redisplay_variable_changed):
-       * redisplay.c (UPDATE_CACHE_RETURN):
-       * redisplay.c (validate_line_start_cache):
-       * redisplay.c (mark_redisplay_structs):
-       * redisplay.c (mark_glyph_block_dynarr):
-       * redisplay.c (window_line_number):
-       * redisplay.c (redisplay_frame):
-       * redisplay.c (redisplay_window):
-       * redisplay.c (generate_modeline):
-       * redisplay.c (create_right_glyph_block):
-       * redisplay.c (create_left_glyph_block):
-       * redisplay.c (create_text_block):
-       * redisplay.c:
-       * redisplay-x.c (x_output_hline):
-       * redisplay-x.c (x_output_vertical_divider):
-       * redisplay-tty.c (tty_output_display_block):
-       * redisplay-output.c (output_display_line):
-       * redisplay-output.c:
-       * redisplay-msw.c (mswindows_output_vertical_divider):
-       * redisplay-msw.c (mswindows_ring_bell):
-       * redisplay-msw.c (mswindows_output_cursor):
-       * redisplay-msw.c:
-       * rangetab.c:
-       * ralloc.c:
-       * puresize.h (RAW_PURESIZE):
-       * profile.c (syms_of_profile):
-       * profile.c (Fstart_profiling):
-       * profile.c (sigprof_handler):
-       * profile.c:
-       * procimpl.h:
-       * process.c (vars_of_process):
-       * process.c (read_process_output):
-       * process.c (get_process):
-       * process.c:
-       * process-unix.c (unix_open_multicast_group):
-       * process-unix.c (unix_get_tty_name):
-       * process-unix.c (unix_send_process):
-       * process-unix.c (unix_reap_exited_processes):
-       * process-unix.c (unix_create_process):
-       * process-unix.c (unix_init_process_io_handles):
-       * process-unix.c (allocate_pty):
-       * process-unix.c:
-       * process-nt.c (nt_open_network_stream):
-       * process-nt.c (nt_update_status_if_terminated):
-       * process-nt.c (nt_finalize_process_data):
-       * process-nt.c:
-       * print.c (debug_short_backtrace):
-       * print.c (debug_backtrace):
-       * print.c (print_symbol):
-       * print.c (print_internal):
-       * print.c (print_cons):
-       * print.c (Fwrite_char):
-       * print.c (print_prepare):
-       * print.c (canonicalize_printcharfun):
-       * print.c (output_string):
-       * print.c:
-       * opaque.h:
-       * opaque.c (allocate_managed_opaque):
-       * opaque.c:
-       * offix.c (DndSetData):
-       * objects.c (face_boolean_create):
-       * objects.c (font_instantiate):
-       * objects.c (font_create):
-       * objects.c (color_create):
-       * objects.c (finalize_font_instance):
-       * objects.c (finalize_color_instance):
-       * objects.c:
-       * objects-x.c (x_font_instance_truename):
-       * objects-x.c:
-       * objects-x.c (x_initialize_font_instance):
-       * objects-x.c (allocate_nearest_color):
-       * objects-tty.c (tty_initialize_font_instance):
-       * objects-tty.c (tty_initialize_color_instance):
-       * objects-msw.c (mswindows_initialize_color_instance):
-       * ntproc.c (syms_of_ntproc):
-       * ntproc.c (Fwin32_set_process_priority):
-       * ntproc.c (sys_spawnve):
-       * ntproc.c:
-       * ntheap.c (get_data_end):
-       * nt.c (period):
-       * nt.c:
-       * nt.c (stat):
-       * nt.c (generate_inode_val):
-       * nt.c (sys_rename):
-       * nas.c:
-       * mule-wnnfns.c (Fwnn_hinsi_number):
-       * mule-wnnfns.c (Fwnn_yuragi):
-       * mule-wnnfns.c (Fwnn_common_learn):
-       * mule-wnnfns.c (Fwnn_suffix_learn):
-       * mule-wnnfns.c (Fwnn_prefix_learn):
-       * mule-wnnfns.c (Fwnn_okuri_learn):
-       * mule-wnnfns.c (Fwnn_complex_conv):
-       * mule-wnnfns.c (Fwnn_last_is_first):
-       * mule-wnnfns.c (Fwnn_bmodify_dict_add):
-       * mule-wnnfns.c (Fwnn_notrans_dict_add):
-       * mule-wnnfns.c (Fwnn_fiusr_dict_add):
-       * mule-wnnfns.c (Fwnn_fisys_dict_add):
-       * mule-wnnfns.c (Fwnn_hinsi_list):
-       * mule-wnnfns.c (Fwnn_fuzokugo_set):
-       * mule-wnnfns.c (Fwnn_dict_search):
-       * mule-wnnfns.c (Fwnn_word_toroku):
-       * mule-wnnfns.c (Fwnn_hindo_update):
-       * mule-wnnfns.c (Fwnn_bunsetu_henkou):
-       * mule-wnnfns.c (Fwnn_kakutei):
-       * mule-wnnfns.c (Fwnn_begin_henkan):
-       * mule-wnnfns.c (Fwnn_dict_comment):
-       * mule-wnnfns.c (Fwnn_dict_add):
-       * mule-wnnfns.c (Fwnn_open):
-       * mule-mcpath.c (mc_getcwd):
-       * mule-coding.c (vars_of_mule_coding):
-       * mule-coding.c (convert_to_external_format):
-       * mule-coding.c (encoding_marker):
-       * mule-coding.c (decoding_marker):
-       * mule-coding.c (Fcopy_coding_system):
-       * mule-coding.c (Fmake_coding_system):
-       * mule-coding.c (Fcoding_system_list):
-       * mule-coding.c (Ffind_coding_system):
-       * mule-coding.c (symbol_to_eol_type):
-       * mule-coding.c:
-       * mule-charset.c (complex_vars_of_mule_charset):
-       * mule-charset.c (vars_of_mule_charset):
-       * mule-charset.c (Fset_charset_ccl_program):
-       * mule-charset.c (struct charset_list_closure):
-       * mule-charset.c (Ffind_charset):
-       * mule-charset.c (make_charset):
-       * mule-charset.c (non_ascii_valid_char_p):
-       * mule-charset.c:
-       * mule-ccl.c (ccl_driver):
-       * mule-canna.c (c2mu):
-       * mule-canna.c (Fcanna_henkan_begin):
-       * mule-canna.c (Fcanna_parse):
-       * mule-canna.c (Fcanna_store_yomi):
-       * mule-canna.c (Fcanna_touroku_string):
-       * mule-canna.c (Fcanna_initialize):
-       * minibuf.c:
-       * menubar.c (menu_parse_submenu_keywords):
-       * menubar-x.c (make_dummy_xbutton_event):
-       * menubar-x.c (set_frame_menubar):
-       * menubar-x.c (menu_item_descriptor_to_widget_value_1):
-       * menubar-x.c:
-       * menubar-msw.h:
-       * menubar-msw.c (mswindows_popup_menu):
-       * menubar-msw.c (mswindows_update_frame_menubars):
-       * menubar-msw.c (mswindows_handle_wm_command):
-       * menubar-msw.c (unsafe_handle_wm_initmenu_1):
-       * menubar-msw.c (unsafe_handle_wm_initmenupopup_1):
-       * menubar-msw.c (update_frame_menubar_maybe):
-       * menubar-msw.c (populate_or_checksum_helper):
-       * menubar-msw.c (empty_menu):
-       * menubar-msw.c:
-       * md5.c:
-       * marker.c (set_marker_internal):
-       * marker.c (print_marker):
-       * malloc.c:
-       * make-src-depend:
-       * lstream.c (lisp_buffer_rewinder):
-       * lstream.c (mark_lstream):
-       * lrecord.h:
-       * lrecord.h (struct lrecord_header):
-       * lread.c (readevalloop):
-       * lread.c (locate_file):
-       * lread.c (locate_file_in_directory):
-       * lread.c (Flocate_file):
-       * lread.c (load_force_doc_string_unwind):
-       * lread.c (ebolify_bytecode_constants):
-       * lread.c:
+       * s/hpux.h:
+       * s/aix3-1.h:
+       Remove old S&M pty stuff.
+       * console-tty.c (tty_init_console): Use pid_t, not int, for pids.
+       * systty.h: Simplify cpp hackery, improve comments.
+       Favor BSD ioctl(TIOCGPGRP) over Posix tcgetpgrp().
+
+       * editfns.c (Fformat_time_string):
+       Be a little more paranoid with the return value of ctime.
+
+       * fileio.c (check_executable):
+       (check_writable):
+       Use symbolic constants X_OK, W_OK.
+
+       * console-x.c (split_up_display_spec): Fix a warning.
+
+2000-10-02  Martin Buchholz  <martin@xemacs.org>
+
+       * gui-x.c (add_accel_and_to_external): strlen ==> XSTRING_LENGTH
+       * ntproc.c (sys_spawnve): make_string ==> build_string
+       Small clarity improvements.
+
+2000-09-30  Martin Buchholz  <martin@xemacs.org>
+
+       * events.c (WRONG_EVENT_TYPE_FOR_PROPERTY): Warning removal.
+
+       * s/windowsnt.h (HAVE_STRCASECMP): Remove.
+
+       * config.h.in (HAVE_STRCASECMP): Remove.
+
+2000-09-29  Martin Buchholz  <martin@xemacs.org>
+
+       * redisplay-output.c (redisplay_output_pixmap):
+       Cleaner and possibly more 64-bit correct code.
+
+2000-09-28  Stephen J. Turnbull  <stephen@xemacs.org>
+
+       * dumper.c (pdump_load_finish): move restoration of
+       `noninteractive1' to emacs.c (main_1).
+       * emacs.c (main_1): protect LISP-visible command-line flags
+       from pdump_load().
+
+2000-09-26  Stephen J. Turnbull  <stephen@xemacs.org>
+
+       * Makefile.in.in (versionclean):  Use EXE_TARGET and
+       DUMP_TARGET instead of literal program names.
+
+2000-09-20  Martin Buchholz  <martin@xemacs.org>
+
+       * Makefile.in.in: Recent purify's require absolute paths for cache-dir.
+
+2000-09-19  Martin Buchholz  <martin@xemacs.org>
+
+       * *: Spelling mega-patch
+
+2000-09-19  Martin Buchholz  <martin@xemacs.org>
+
+       * fns.c (bad_bad_turtle):
+       Delete "Eek!" comment, since we fixed the bug to which it refers.
+
+2000-09-16  Martin Buchholz  <martin@xemacs.org>
+
+       * alloca.c: Replace REGISTER with register.
+
+2000-09-16   Daiki Ueno  <ueno@unixuser.org>
+
+       * file-coding.c (ucs_to_char): Use countof.
+
+2000-09-16  Martin Buchholz  <martin@xemacs.org>
+
+       * file-coding.c: (ucs_to_char):
+       (complex_vars_of_file_coding):
+       Use countof instead of sizeof.
+       Use CHECK_NATNUM instead of CHECK_INT.
+
+       * sysdep.c (strcasecmp): Remove.
+       * device-x.c (ascii_strcasecmp): New.
+       * device-x.c (Fx_get_resource): Use ascii_strcasecmp.
+       Avoid using non-standard non-portable strcasecmp.
+
+2000-09-16  Martin Buchholz  <martin@xemacs.org>
+
+       * Makefile.in.in (mostlyclean): remove reference to prefix-args.
+       * font-lock.c: remove reference to emacsfns.h.
+       * search.c: small doc improvement.
+       * event-Xt.c: correct file names in comments.
+       * console-x.h Correct file names in comments.
+       * frame.c: Correct file names in comments.
+       * event-stream.c: remove Energize from comments.
+
+2000-09-15  Martin Buchholz  <martin@xemacs.org>
+
+       * symeval.h (DEFERROR_STANDARD):
+       (DEFERROR):
+       (DEFSYMBOL):
+       (DEFSYMBOL_NO_DUMP):
+       (DEFSYMBOL_MULTIWORD_PREDICATE):
+       (DEFSYMBOL_MULTIWORD_PREDICATE_NO_DUMP):
+       (DEFKEYWORD):
+       The construct &##name is not sensible C.
+       Fixes compilation errors with Unixware native compiler.
+
+2000-09-14  Martin Buchholz  <martin@xemacs.org>
+
+       * frame.c (device_matches_console_spec): no longer takes a `frame' arg
+       (next_frame_internal): Removed.  We now just have next_frame.
+       (next_frame):
+       Write a simpler and cleaner one-pass algorithm.
+       Remove called_from_delete_device arg and #ifdefed-out code.
+       (previous_frame):
+       Renamed from prev_frame.  Update callers.
+       Cleaned up to have an analogous implementation to next_frame.
+       (other_visible_frames_internal): Remove the
+       called_from_delete_device bogus arg, and hence, remove this
+       function.  Just use other_visible_frames().
+
+       * window.c (Fnext_window):
+       Prettify docstring.
+       Since next_frame() is guaranteed to return a frame, remove check
+       for nil inserted in previous patch.
+       (Fprevious_window):
+       Prettify docstring.
+       Make code look more like Fnext_window.
+       (window_loop):
+       Respect the `console' arg when iterating through windows.
+       Fixes bug: (get-buffer-window buffer t device) not respecting
+       the `device' arg.
+       This function needs more work, as others have pointed out.
+
+       * frame.h: Rename prev_frame to previous_frame.
+       device_matches_console_spec no longer takes a `frame' arg.
+
+       * s/gnu.h:
+       * s/linux.h:
+       * s/hpux.h:
+       Use EMACS_BLOCK_SIGNAL instead of sigblock.
+       From "Golubev I. N." <gin@mo.msk.ru>.
+
+       * make-src-depend: Fix typo.
+
+2000-09-13  Martin Buchholz  <martin@xemacs.org>
+
+       * window.c (Fnext_window):
+       next_frame() might return nil, not a frame.
+       Fixes this crash:
+       (gdb) run -eval '(progn  (make-device (quote x) "polgar:0") (next-window (minibuffer-window) t (quote visible) (second (device-list))))'
+
+       * frame.c (next_frame_internal):
+       We've passed a frame if we've passed its device.
+       Fixes this crash:
+       (gdb) run -eval '(progn (make-frame nil (make-device (quote x) "polgar:0")) (next-window (minibuffer-window) t (quote visible) (second (device-list))))'
+Fatal error: assertion failed, file /project/xemacs/ws/dev/src/frame.h, line 245, RECORD_TYPEP (obj, lrecord_type_frame)
+
+2000-09-11  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+       * menubar-msw.c (mswindows_translate_menu_or_dialog_item):
+       Allow option to suppress accelerators in menu/dialog items.
+       (populate_or_checksum_helper): Pass dialog title through above.
+
+2000-09-10  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+       * event-msw.c (mswindows_key_to_emacs_keysym):
+       Add "pause" key, fix "menu" key.
+
+2000-09-09  Martin Buchholz  <martin@xemacs.org>
+
+       * eval.c (reinit_vars_of_eval):
+       Increase max_lisp_eval_depth to 1000,
+       required for thai-xtis.el to byte-compile under some circumstances.
+
+2000-09-04  Martin Buchholz  <martin@xemacs.org>
+
+       * event-Xt.c (x_to_emacs_keysym): Increase size of `buffer' to 513.
+       From Kenichi Handa.
+
+2000-09-01  Martin Buchholz  <martin@xemacs.org>
+
+       * make-src-depend: Make the generated Makefiles smaller.
+
+       * s/hpux.h (SETUP_SLAVE_PTY):
+       Provide a %d in the format string for the errno argument.
+
+       * editfns.c (Ftemp_directory):
+       Warning fix.
+       Avoid buffer overrun on very long file name.
+
+       * input-method-xlib.c (XIM_init_device):
+       6th parameter of XRegisterIMInstantiateCallback has different
+       pointer types on different OSes, so simply cast to (void *).
+
+       * unexhp9k800.c: Warning fixes.  Fiddly changes.
+
+       * sysdll.c (dll_open):
+       shl_load will hang hard if passed a NULL filename.
+       Simply return NULL for compatibility with dlopen.
+       * sysdll.c: Conform to XEmacs coding standards.
+
+       * sysdep.c (get_pty_max_bytes):
+       Support pty input lines longer than 512 bytes on HP-UX 10.20.
+
+2000-08-31  Martin Buchholz  <martin@xemacs.org>
+
+       * tooltalk.c: Add #include <syssignal.h>
+
+2000-08-12  Alexandre Oliva  <aoliva@redhat.com>
+
+       * s/hpux.h: Don't use undefined function sigunblock().
+
+2000-08-31  Martin Buchholz  <martin@xemacs.org>
+
+       * config.h.in: Add HAVE_BALLOON_HELP.
+       * emacs.c: Use HAVE_BALLOON_HELP.
+       * Makefile.in.in (x_objs):
+       Make Balloon Help conditional on finding shape.h.
+
+2000-08-23  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * syntax.c (regex_emacs_buffer_p): New variable.
+       * syntax.h (regex_emacs_buffer_p): extern.
+       * search.c (looking_at_1):
+       (string_match_1):
+       (fast_string_match):
+       (search_buffer): Set regex_emacs_buffer_p.
+       * regex.c (re_match_2_internal): Reference regex_emacs_buffer_p
+       when before_dot, at_dot, after_dot.
+
+2000-08-23  Andy Piper  <andy@xemacs.org>
+
+       * gui-x.c (popup_selection_callback): Only set action_occurred
+       when we really have an image instance.
+       * gui-msw.c (mswindows_handle_gui_wm_command): ditto.
+
+2000-08-23  Andy Piper  <andy@xemacs.org>
+
+       * gui-msw.c (mswindows_handle_gui_wm_command): set
+       action_occurred.
+       * gui-x.c (popup_selection_callback): ditto.
+
+       * glyphs.h (IMAGE_INSTANCE_WIDGET_ACTION_OCCURRED): new accessor.
+       (XIMAGE_INSTANCE_WIDGET_ACTION_OCCURRED): ditto.
+       (struct Lisp_Image_Instance): add action_occurred flag.
+
+       * glyphs.c (redisplay_subwindow): use action_occurred flag.
+       (image_instance_changed): ditto.
+       (reset_frame_subwindow_instance_cache): only unmap windows - do
+       not remove them from the cache also.
+
+       * glyphs-widget.c (tab_control_update): better debug.
+       (progress_gauge_update): ditto.
+       (layout_update): ditto.
+       (layout_instantiate): ditto.
+       (tab_control_order_only_changed): cope with null pending items.
+
+       * glyphs-msw.c (mswindows_tab_control_redisplay): add better
+       debug. Force selection of an item when an action occurred. Cope
+       with null pending_items.
+       (mswindows_progress_gauge_redisplay): better debug.
+       * glyphs-x.c (x_tab_control_redisplay): ditto.
+
+       * redisplay.c (redisplay_frame): reset the frame cache if the
+       frame is garbaged.
+
+       * window.c (Fset_window_configuration): potentially re-enable
+       frame cache reset.
+       (window_unmap_subwindows): need to finalize instances here since
+       it is only used in mark_window_as_deleted.
+
+2000-08-22  Stephen J. Turnbull  <stephen@xemacs.org>
+
+       * nas.c (SndOpenDataForReading):
+       nas.c (WaveOpenDataForReading):
+       nas.c (readChunk): {BIG,LITTLE}_ENDIAN -> NAS_{BIG,LITTLE}_ENDIAN.
+       Somehow escaped from the 2000-08-14 patch.
+
+2000-08-14  Stephen J. Turnbull  <stephen@xemacs.org>
+
+       * nas.c:  Preprocessor trickery to use NAS_LITTLE_ENDIAN instead
+       of LITTLE_ENDIAN (conflicts with glibc, at least) in NAS <= 1.2p5.
+
+2000-08-21  Andy Piper  <andy@xemacs.org>
+
+       * glyphs-x.c (x_map_subwindow): Minor optimization - only map the
+       window if it is not already displayed.
+
+       * glyphs-msw.c (mswindows_map_subwindow): only map the window if
+       it is not already displayed.
+
+       * window.c (Fset_window_configuration): don't reset the frame
+       cache.
+
+       * glyphs.c (unmap_subwindow_instance_cache_mapper): only remove
+       instances from the frame cache if we are actually finalizing them.
+       (reset_frame_subwindow_instance_cache): reset frame cache only
+       after unmapping everything.
+       (map_subwindow): set displayed flag after mapping.
+
+2000-08-21  Martin Buchholz  <martin@xemacs.org>
+
+       * data.c (indirect_function):
+       Rename ERRORP to non-misleading VOID_FUNCTION_ERRORP.
+
+       * eval.c (function_argcount):
+       Use original function when signaling errors.
+
+2000-08-18  Andy Piper  <andy@xemacs.org>
+
+       * frame.c (delete_frame_internal): use new
+       free_frame_subwindow_instances name.
+
+       * glyphs-msw.c (mswindows_tab_control_instantiate): verify index.
+       (add_tab_item): make return type correct.
+       (mswindows_tab_control_instantiate): assert index of tab.
+       (mswindows_tab_control_redisplay): Re-code to use
+       gui_item_equal_sans_selected and gui_item_list_find_selected.
+
+       * glyphs-widget.c (tab_control_update): Correct comment.
+
+       * window.c (window_unmap_subwindows): use new
+       unmap_subwindow_instance_cache_mapper.
+       (window_unmap_subwindows_cache_mapper): deleted.
+       (Fset_window_configuration): comparisons should now be with
+       EQ. Preserve the subwindow instance cache across configuration
+       changes.
+       (allocate_window): ditto.
+       (make_dummy_parent): ditto.
+
+       * glyphs.c (free_frame_subwindow_instances): rename from
+       free_frame_subwindow_instance_cache. finalize all instances rather
+       than just those in the display cache.
+       (finalize_all_subwindow_instances): walk windows unmapping and
+       finalizing subwindows.
+       (unmap_subwindow_instance_cache_mapper): moved from
+       window.c. Allow finalization as well as unmapping.
+
+       * gui.c (gui_item_list_find_selected): new function.
+
+       * gui.h (gui_item_list_find_selected): declare.
+
+       * glyphs-x.c (x_tab_control_redisplay): pick tab
+       explicitly. Re-code to use gui_item_equal_sans_selected and
+       gui_item_list_find_selected.
+
+       * glyphs-x.h: add lwlib-utils.h
+
+       * buffer.c (Frecord_buffer): undo previous change.
+
+2000-08-09  Vin Shelton  <acs@xemacs.org>
+
+       * config.h.in, s/gnu.h, s/hpux.h, s/linux.h: Use UNIX98 PTYs if
+       possible.  Create temporary files more securely.  The patch was
+       generated by Torsten Duwe <duwe@caldera.de>, Florian Weimer
+       <Florian.Weimer@RUS.Uni-Stuttgart.DE> and Olaf Kirch.  See
+       http://www.xemacs.org/list-archives/xemacs-patches/200007/msg00123.html
+       for details.
+
+2000-08-07  Ben Wing  <ben@xemacs.org>
+
+       * getloadavg.c: remove duplicate (and windows-breaking)
+       includes of fcntl.h and sys/file.h.
+
+       * nt.c: remove duplicate getloadavg() definition.
+
+       * sysdll.h (Qdll_filename_encoding): add missing stand-in
+       encodings.
+
+2000-08-07  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+
+       * eval.c (function_argcount): If function needs to be autoloaded
+       actually use the loaded definition.
+       GCPRO function.
+
+2000-08-05  Ben Wing  <ben@xemacs.org>
+
+       * getloadavg.c: add prototype for getloadavg().  remove
+       duplicate WIN32_NATIVE/CYGWIN code (already in the middle
+       of the code).  remove duplicate header includes.
+
+       * s\cygwin32.h, s\mingw32.h: remove stray NO_ARG_ARRAY.
+
+       * s\cygwin32.h, s\mingw32.h, m\windowsnt.h:
+       don't define LOAD_AVE_TYPE/LOAD_AVE_CVT because we have no
+       useful load average.
+
+       * alloc.c (reinit_alloc_once_early): removed references to
+       VIRT_ADDR_VARIES, malloc_sbrk_used/free, and data-bytes-used/free.
+       the lisp vars are the only things referencing the malloc_sbrk_*
+       vars, and they were already if 0'd out.  these vars only exist
+       in the older malloc.c, which is basically unused, and they're
+       only for informational purposes.
+
+       * m\*.h: removed useless VIRT_ADDR_VARIES.
+
+       * m\powerpc.h: removed stray NO_ARG_ARRAY.
+
+2000-04-26  IKEYAMA Tomonori  <tomonori@suiyokai.org>
+
+        * redisplay-msw.c (mswindows_output_dibitmap): Set foreground
+        color if the image is a mono pixmap.
+
+2000-07-30  Ben Wing  <ben@xemacs.org>
+
+       * Makefile.in.in (release):
+       Remove stray @.
+
+       * buffer.c (directory_is_current_directory):
+       * dired-msw.c (mswindows_get_files):
+       * dired.c:
+       * dired.c (Fdirectory_files):
+       * dired.c (file_name_completion_stat):
+       * dired.c (Ffile_attributes):
+       [[[[1]]]]: Rename stat() -> xemacs_stat() and eliminate nasty
+       preprocessor tricks, to avoid problems on some machines
+       (e.g. SCO).
+
+       * callproc.c (egetenv): GC docs.
+
+       * console-msw.h:
+       * console-msw.h (struct mswindows_dialog_id):
+       * lrecord.h (lrecord_type):
+       New object for use with MSW dialogs.
+
+       * console.h (struct console_methods):
+       New enable/disable frame methods, for proper modal dialogs.
+
+       * device-msw.c (msprinter_default_printer): Fix to follow
+       proper Mule conventions.
+
+       * device-msw.c:
+       * device-msw.c (signal_open_printer_error):
+       * device-msw.c (msprinter_init_device):
+       * device-msw.c (ensure_not_printing):
+       * device-msw.c (plist_get_margin):
+       * device-msw.c (Fmsprinter_select_settings):
+       * device-msw.c (finalize_devmode):
+       * device-msw.c (Fmsprinter_settings_despecialize):
+       * device-msw.c (signal_enum_priner_error):
+       * extents.c (decode_extent):
+       * extents.c (decode_map_extents_flags):
+       * extents.c (decode_extent_at_flag):
+       * extents.c (Fextent_at):
+       * extents.c (Fextents_at):
+       * extents.c (symbol_to_glyph_layout):
+       [[[[2]]]] Use structured errors.
+
+       * dialog-msw.c:
+       * dialog-msw.c (mswindows_is_dialog_msg):
+       * dialog-msw.c (mark_mswindows_dialog_id):
+       * dialog-msw.c (dialog_proc):
+       * dialog-msw.c (handle_question_dialog_box):
+       * dialog-msw.c (syms_of_dialog_mswindows):
+       Define new object to clean up marking; use it as a dialog identifier.
+       Call new delete-dialog-box-hook.
+
+       * dialog-x.c (dbox_selection_callback):
+       * dialog-x.c (dbox_descriptor_to_widget_value):
+       * dialog-x.c (x_make_dialog_box_internal):
+       Call new delete-dialog-box-hook.
+       Return an id.
+
+       * dialog.c:
+       * dialog.c (syms_of_dialog):
+       * dialog.c (vars_of_dialog):
+       Define new delete-dialog-box-hook, for use w/modal dialog boxes.
+
+       * eval.c:
+       * eval.c (signal_call_debugger):
+       when noninteractive, output stack traces on the console instead
+       of in a (never-seen) buffer.
+
+       * eval.c (signal_type_error):
+       * eval.c (invalid_argument_2):
        * lisp.h:
-       * lisp-union.h:
-       * lisp-disunion.h:
-       * linuxplay.c (linux_play_data_or_file):
-       * linuxplay.c (audio_init):
-       * line-number.c:
-       * keymap.h:
-       * keymap.c (describe_map):
-       * keymap.c (describe_map_mapper):
-       * keymap.c (Fdescribe_bindings_internal):
-       * keymap.c (Fsingle_key_description):
-       * keymap.c (map_keymap_sorted):
-       * keymap.c (get_relevant_keymaps):
-       * keymap.c (Flookup_key):
-       * keymap.c (raw_lookup_key_mapper):
-       * keymap.c (Fdefine_key):
-       * keymap.c (Fevent_matches_key_specifier_p):
-       * keymap.c (key_desc_list_to_event):
-       * keymap.c (define_key_parser):
-       * keymap.c (define_key_check_and_coerce_keysym):
-       * keymap.c (keymap_submaps):
-       * keymap.c (keymap_store_internal):
-       * keymap.c (keymap_delete_inverse_internal):
-       * keymap.c (keymap_store_inverse_internal):
-       * keymap.c (print_keymap):
-       * keymap.c (Lisp_Keymap):
-       * keymap.c:
-       * intl.c:
-       * insdel.c (convert_bufbyte_string_into_emchar_dynarr):
-       * insdel.c (make_gap):
-       * input-method-xlib.c (get_XIM_input):
-       * input-method-xlib.c (XIM_init_frame):
-       * imgproc.c:
-       * hash.h:
-       * hash.c:
-       * gui.c:
+       new funs for use w/structured errors.
+
+       * event-Xt.c:
+       * event-Xt.c (x_to_emacs_keysym):
+       * event-Xt.c (describe_event):
+       * event-Xt.c (emacs_Xt_event_handler):
+       * event-Xt.c (vars_of_event_Xt):
+       * event-msw.c:
+       * event-msw.c (mswindows_wnd_proc):
+       * event-msw.c (vars_of_event_mswindows):
+       rename {x,mswindows}-debug-events to debug-{}-events for
+       consistency with other debug-foo variables.
+
+       * event-stream.c:
+       document next-event more clearly.
+
+       * fileio.c (Ffile_name_directory):
+       * fileio.c (Ffile_name_nondirectory):
+       * fileio.c (Funhandled_file_name_directory):
+       * fileio.c (file_name_as_directory):
+       * fileio.c (Ffile_name_as_directory):
+       * fileio.c (directory_file_name):
+       * fileio.c (Fdirectory_file_name):
+       * fileio.c (Fmake_temp_name):
+       * fileio.c (Ffile_truename):
+       * fileio.c (Fsubstitute_in_file_name):
+       * fileio.c (expand_and_dir_to_file):
+       * fileio.c (barf_or_query_if_file_exists):
+       * fileio.c (check_executable):
+       * fileio.c (Ffile_exists_p):
+       * fileio.c (Ffile_writable_p):
+       * fileio.c (Ffile_directory_p):
+       * fileio.c (Ffile_regular_p):
+       * fileio.c (Ffile_modes):
+       * fileio.c (Ffile_newer_than_file_p):
+       * fileio.c (Fverify_visited_file_modtime):
+       * fileio.c (Fset_visited_file_modtime):
+       * fileio.c (auto_save_1):
+       (1). (2).
+       fix up gcpro's.
+
+       * frame-msw.c:
+       * frame-msw.c (mswindows_init_frame_1):
+       * frame-msw.c (mswindows_enable_frame):
+       * frame-msw.c (error_frame_unsizable):
+       * frame-msw.c (msprinter_init_frame_1):
+       * frame-msw.c (msprinter_init_frame_3):
+       * frame-msw.c (console_type_create_frame_mswindows):
+       (2).
+       implement new enable/disable frame methods.
+
+       * frame-x.c:
+       * frame-x.c (x_enable_frame):
+       * frame-x.c (console_type_create_frame_x):
+       implement new enable/disable frame methods.
+
+       * frame.c:
+       * frame.c (Fdisable_frame):
+       * frame.c (syms_of_frame):
+       * frame.h (struct frame):
+       implement new enable/disable frame methods/functions.
+
+       * general-slots.h:
+       add initial-focus.
+
+       * glyphs-msw.c (mswindows_widget_instantiate):
+       comment that initial-focus should be implemented.
+
+       * glyphs-widget.c:
+       * glyphs-widget.c (check_valid_instantiator):
+       * glyphs-widget.c (check_valid_orientation):
+       * glyphs-widget.c (check_valid_tab_orientation):
+       * glyphs-widget.c (check_valid_justification):
+       * glyphs-widget.c (check_valid_border):
+       * glyphs-widget.c (check_valid_callback):
+       * glyphs-widget.c (check_valid_int_or_function):
+       * glyphs-widget.c (check_valid_string_or_vector):
+       * glyphs-widget.c (check_valid_item_list_1):
+       * glyphs-widget.c (widget_validate):
+       * glyphs-widget.c (combo_box_validate):
+       * glyphs-widget.c (widget_instantiate):
+       * glyphs-widget.c (syms_of_glyphs_widget):
+       * glyphs-widget.c (VALID_WIDGET_KEYWORDS):
+       * glyphs-widget.c (image_instantiator_combo_box):
+       * glyphs-widget.c (image_instantiator_scrollbar):
+       * glyphs-widget.c (image_instantiator_tab_control):
+       * glyphs-widget.c (VALID_LAYOUT_KEYWORDS):
+       (2).
+       support (unimplemented) keyword initial-focus.
+       reindent long macros.
+
+       * glyphs-x.c (x_redisplay_widget):
+       * glyphs-x.c (x_button_instantiate):
+       * glyphs-x.c (x_button_redisplay):
+       * glyphs-x.c (x_progress_gauge_instantiate):
+       * glyphs-x.c (x_edit_field_instantiate):
+       * glyphs-x.c (x_combo_box_instantiate):
+       * glyphs-x.c (x_tab_control_instantiate):
+       * glyphs-x.c (x_label_instantiate):
+       * gui-x.c:
        * gui-x.c (button_item_to_widget_value):
-       * gui-x.c (popup_selection_callback):
-       * glyphs.h (struct image_instantiator_methods):
-       * glyphs.c (mark_glyph_cachels):
-       * glyphs.c (Fglyph_type):
-       * glyphs.c (image_instantiate):
-       * glyphs.c (image_create):
-       * glyphs.c (make_image_instance_1):
-       * glyphs.c (finalize_image_instance):
+       * gui-x.c (gui_items_to_widget_values_1):
+       * gui-x.c (gui_item_children_to_widget_values):
+       * gui-x.c (gui_items_to_widget_values):
+       * gui-x.h:
+       * menubar-x.c (menu_item_descriptor_to_widget_value_1):
+       add new flag to gui-parsing routines to indicate whether
+       accelerator specs should be supported.
+
+       * glyphs.c (syms_of_glyphs): use DEFSYMBOL.
+
+       * glyphs.h (struct Lisp_Image_Instance):
+       * glyphs.h (IMAGE_INSTANCE_WANTS_INITIAL_FOCUS):
+       add initial-focus flag.
+
+       * gui.c:
+       * gui.c (syms_of_gui):
+       * gui.c (vars_of_gui):
+       clean up menu-no-selection-hook.
+
+       * gui.h:
+       support delete-dialog-box-hook.
+
+       * lread.c (Fload_internal):
+       * lread.c (locate_file_in_directory_mapper):
+       (1).
+
+       * lrecord.h:
+       * lrecord.h (struct toolbar_button):
+       * lrecord.h (syms_of_toolbar):
+       document how to create a new object.
+
+       * menubar-msw.c (mswindows_char_is_accelerator):
+       may be called on frames w/o menus.
+
+       * menubar.c (vars_of_menubar):
+       clean up :filter docs.
+
+       * nt.c (readdir):
+       * ntproc.c:
+       (1).
+
+       * process-nt.c:
+       * process-nt.c (validate_signal_number):
+       * process-nt.c (signal_cannot_launch):
+       * process-nt.c (nt_create_process):
+       * process-nt.c (nt_send_process):
+       * process-nt.c (nt_kill_child_process):
+       * process-nt.c (nt_open_network_stream):
+       * process-nt.c (syms_of_process_nt):
+       (2).
+       delete quote-handling.  call new lisp code that does it better.
+
+       * process-unix.c (connect_to_file_descriptor):
+       * process-unix.c (allocate_pty):
+       * process-unix.c (unix_send_process):
+       * process-unix.c (unix_kill_child_process):
+       * process-unix.c (unix_open_network_stream):
+       * process-unix.c (unix_open_multicast_group):
+       (1). (2).
+
+       * process.c:
+       * process.c (Fstart_process_internal):
+       (2).  need to canonicalize process path even if absolute.
+
+       * select-msw.c (symbol_to_ms_cf):
+       * select-msw.c (ms_cf_to_symbol):
+       * select-msw.c (cf_is_autofreed):
+       * select-msw.c (mswindows_destroy_selection):
+       * select.c:
+       * select.c (syms_of_select):
+       * select.h:
+       support dibv5, fix bugs. (from Mike Alexander)
+
+       * select.c (Fget_selection_internal):
+       * select.c (select_convert_out):
+
+       * sysdep.c:
+       * sysdep.c (xemacs_stat):
+       renamed.
+
+       * sysdep.c (mkdir):
+       * sysdep.c (rmdir):
+       but keep original stat() here because we provide encapsulation
+       around these funs.
+
+       * sysfile.h:
+       * sysfile.h (fstat):
+       remove stat garbage.
+
+       * syswindows.h:
+       fix X/MSW conflict.
+       don't include tchar.h.  it's inappropriate because it makes
+       compile-time distinctions when we want runtime distinctions.
+       (we provide our own tchar replacements)
+
+       * toolbar.c:
+       use default object printer for toolbar-button.
+
+       * unexcw.c:
+       make sure we don't encapsulate.
+
+       * window.c (vars_of_window):
+       emphasize that temp-buffer-show-hook is obsolete.
+
+2000-08-05  Martin Buchholz  <martin@xemacs.org>
+
+       * glyphs.c (image_instance_hash): HASH2 wants EMACS_INT args.
+       (Fimage_instance_subwindow_id): make_int wants EMACS_INT arg.
+
+       * events.c (Fevent_timestamp_lessp):
+       Not 64-bit clean.  Use EMACS_INT, not int.
+
+2000-06-05  Andrew Begel <abegel@cs.berkeley.edu>
+
+       * lrecord.h (lrecord_types): Changed lrecord_type_count to an
+       unsigned int and changed the last enum to
+       lrecord_type_last_built_in_type.
+       (lrecord_implementations_table): changed prototype to know how
+       long the array is supposed to be.
+       (lrecord_type_count): new unsigned int to keep track of the
+       current number of lisp lrecord types.
+       (DEFINE_EXTERNAL_LRECORD):
+       (DECLARE_EXTERNAL_LRECORD): Added these two for external
+       dynamic-modules to declare new lisp types. They are the same
+       as the non-EXTERNAL forms, but declare an lrecord_type unsigned
+       int for each new type, and increment lrecord_type_count by 1.
+
+       * alloc.c (lrecord_implementations_table): Changed to reference
+       lrecord_type_last_built_in_type for the size of the array.
+       Moved MODULE_DEFINABLE_TYPE_COUNT to lrecord.h.
+
+2000-08-03  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * glyphs.h (check_valid_item_list): Renamed from
+       check_valid_item_list_1.
+
+2000-08-01 Alastair J. Houghton <ajhoughton@lineone.net>
+
+       * select.c (Qselect_coerce): New.
+       * select.c (Vselection_coercion_alist): New.
+       * select.c (syms_of_select): Declare.
+       * select.c (get-selection-internal): Use it.
+       Use the new select-coerce functionality.
+
+       * select.c (select_coerce): New.
+       * select.h (select_coerce): Declare.
+       New function to coerce one type of data into another.
+
+2000-08-03  Martin Buchholz  <martin@xemacs.org>
+
+       * callproc.c (Fcall_process_internal):
+       (Fcall_process_internal):
+       * process-unix.c (unix_create_process):
+       Save and restore the value of errno, so that error messages are accurate.
+
+2000-08-01  Martin Buchholz  <martin@xemacs.org>
+
+       * elhash.c (print_hash_table):
+       Fix printing of hash tables to also use `key-and-value' instead of `t'.
+       Prettify docstrings and indentation.
+
+2000-07-31  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * window.c (Fwindow_pixel_edges): Subtract frame border and
+       gutter size.
+
+2000-07-31  Andy Piper  <andy@xemacs.org>
+
+       * buffer.c (Frecord_buffer): make absolutely sure that redisplay
+       will acknowledge the change.
+
+       * glyphs.h: declare tab_control_order_only_changed.
+
+       * glyphs-x.c (x_tab_control_redisplay): use
+       tab_control_order_only_changed.
+
+       * glyphs-widget.c (tab_control_order_only_changed): new function.
+
+       * glyphs-msw.c (mswindows_tab_control_redisplay): use
+       tab_control_order_only_changed.
+
+       * gui.c (gui_item_equal_sans_selected): new function.
+       (gui_item_equal): use it.
+
+       * glyphs-msw.c (mswindows_combo_box_instantiate): deprecate
+       :properties in favor of :items..
+
+       * glyphs-widget.c (check_valid_item_list): rename from
+       check_valid_item_list_1.
+       (check_valid_item_list_1): renamed.
+       (combo_box_validate): deprecate :properties in favor of :items.
+       (widget_instantiate): ditto.
+       (tab_control_update): ditto.
+       (image_instantiator_combo_box): ditto.
+       (image_instantiator_tree_view): ditto.
+       (image_instantiator_tab_control): ditto.
+       (layout_post_instantiate): remove dead code.
+
+       * print.c (debug_print_no_newline): only write to debugger if in
+       WIN32_NATIVE.
+
+       * elhash.c (Fmake_hash_table): update doc string.
+
+       * event-msw.c (mswindows_wnd_proc): don't allow processing of
+       messages whilst in GC. This at least stops XEmacs crashing but has
+       the potential for wierd behaviour.
+
+2000-07-31  Martin Buchholz  <martin@xemacs.org>
+
+       * config.h.in:
+       Make existence of s&m files optional.
+
+       * s/bsd386.h: Remove HAVE_GETLOADAVG.
+       * s/freebsd.h: Remove HAVE_GETLOADAVG.
+       * s/gnu.h: Remove HAVE_GETLOADAVG.
+       * s/netbsd.h: Remove HAVE_GETLOADAVG.
+       * s/sol2.h: Remove HAVE_GETLOADAVG.
+       * lisp.h: Remove getloadavg() declaration.
+       * fns.c:
+       Include <sys/loadavg.h> if available.
+       Don't declare our own getloadavg() if HAVE_GETLOADAVG.
+       * config.h.in:  Group together getloadavg()-related macros.
+       Use only configure-time tests to detect getloadavg().
+
+2000-07-30  Martin Buchholz  <martin@xemacs.org>
+
+       * Makefile.in.in (TransientEmacsShell.o): Fix race condition.
+
+2000-07-25  Andy Piper  <andy@xemacs.org>
+
+       * syswindows.h: add tchar.h for native builds.
+
+       * frame.c (syms_of_frame): remove set-glyph-image.
+
+       * general-slots.h: add Qset_glyph_image.
+
+       * glyphs-widget.c (layout_update): add domain arg to
+       set-glyph-image.
+       (syms_of_glyphs_widget): remove set-glyph-image.
+
+2000-07-23  Ben Wing  <ben@xemacs.org>
+
+       * dialog-msw.c (vars_of_dialog_mswindows): need to staticpro
+       Vpopup_frame_list.
+
+2000-07-22  Andy Piper  <andy@xemacs.org>
+
+       * symsinit.h: add syms_of_win32().
+
+       * gui-msw.c (syms_of_gui_mswindows): remove
+       Fmswindows_shell_execute.
+       (Fmswindows_shell_execute): moved to win32.c.
+
+       * emacs.c (main_1): add syms_of_win32 ().
+
+       * win32.c (init_potentially_nonexistent_functions): rewrite in
+       compiler-friendly terms.
+       (Fmswindows_shell_execute): move here from gui-msw.c.
+       (syms_of_win32): new.
+
+       * device-msw.c (Fmswindows_printer_list): clean up args to
+       EnumPrinters.
+       Don't include tchar under cygwin or mingw.
+       (msprinter_default_printer): make cygwin-friendly.
+
+2000-07-21  Andy Piper  <andy@xemacs.org>
+
+       * glyphs-widget.c (image_instantiator_tree_view): use tab
+       control's update function.
+       (layout_property): new function. Retrieve items.
+
+       * glyphs-msw.c (mswindows_tree_view_redisplay): new
+       function. Re-populate the tree view from the pending items.
+
+       * glyphs.c (instantiate_image_instantiator): Make sure the domain
+       is designated the parent if the domain is an image instance. This
+       is needed so that dirtiness can be cascade up the hierarchy and
+       thus for layout children to be redisplayed correctly.
+       (allocate_image_instance): rename glyph -> parent.
+
+       * redisplay.h: change redisplay_output_layout signature.
+
+       * redisplay-msw.c (mswindows_output_display_block): use domain
+       arg.
+
+       * redisplay-x.c (x_output_display_block): use domain arg.
+
+2000-07-10  Andy Piper  <andy@xemacs.org>
+
+       * window.c (Fset_window_configuration): add comment.
+
+       * redisplay-output.c (compare_runes):
+       (redisplay_output_subwindow): redisplay rather than update subwindow.
+       (redisplay_output_layout): ditto.
+
+       * redisplay-msw.c (mswindows_frame_output_end):
+       (mswindows_frame_output_end): make defer window pos optional.
+
+       * lisp.h: add Flast.
+
+       * glyphs.h (struct image_instantiator_methods): add dest_mask top
+       normalize method. Change update method to be for changed
+       instantiators. Add redisplay method. Change signature of layout
+       method.
+       (struct Lisp_Image_Instance): add instantiator.
+       (IMAGE_INSTANCE_INSTANTIATOR): new.
+       (IMAGE_INSTANCE_SUBWINDOW_FACE): new.
+       (XIMAGE_INSTANCE_INSTANTIATOR): new.
+       (XIMAGE_INSTANCE_SUBWINDOW_FACE): new.
+
        * glyphs.c:
-       * glyphs-x.c (finalize_subwindow):
-       * glyphs-x.c (xface_validate):
-       * glyphs-x.c (x_locate_pixmap_file):
-       * glyphs-x.c (convert_EImage_to_XImage):
+       (find_instantiator_differences): new function.
+       (Fset_instantiator_property): new convenience function.
+       (check_image_instance_structure): strictly check for vector
+       instantiators.
+       (normalize_image_instantiator): make non-static.
+       (instantiate_image_instantiator): pass on dest_mask and use new
+       signatures for image_instance_layout and friends.
+       (mark_image_instance): mark the instantiator. Mark the subwindow
+       face not the widget face.
+       (image_instance_equal): add instantiator.
+       (image_instance_hash): ditto.
+       (allocate_image_instance): ditto.
+       (Fset_image_instance_property): removed.
+       (Fimage_instance_file_name): ditto.
+       (Fcolorize_image_instance): ditto.
+       (image_instance_layout): add offsets to be set.
+       (update_image_instance): new function. update an image instance
+       from its changed instantiator.
+       (inherit_normalize): add dest_mask.
+       (xbm_normalize): ditto.
+       (xface_normalize): ditto.
+       (xpm_normalize): ditto.
+       (text_update): set_property -> update.
+       (image_instantiate): use the glyph identity as a hash key, not the
+       instantiator.
+       (glyph_width): use new image_instance_layout signature.
+       (glyph_ascent): ditto.
+       (glyph_descent): ditto.
+       (glyph_height): ditto.
+       (glyph_query_geometry): ressurrect.
+       (glyph_layout): ditto.
+       (redisplay_subwindow): update -> redisplay.
+       (syms_of_glyphs): add Fset_instantiator_property.
+       (image_instantiator_format_create): set_property -> update.
+
+       * glyphs-x.c:
+       (autodetect_normalize): add dest_maks to signature.
+       (x_redisplay_subwindow): update -> redisplay.
+       (x_redisplay_widget): ditto.
+       (x_button_redisplay): ditto.
+       (x_progress_gauge_redisplay): ditto.
+       (x_tab_control_redisplay): ditto. Rewrite to cope with changed
+       stacking order.
+       (console_type_create_glyphs_x): update -> redisplay.
+       (image_instantiator_format_create_glyphs_x): ditto.
+
+       * glyphs-widget.c:
+       (check_valid_instantiator): disallow glyphs in the instantiator,
+       they must now be vectors.
+       (check_valid_instantiator_list): ditto.
+       (glyph_instantiator_to_glyph): use internal symbol rather than
+       intern.
+       (widget_update): renamed from widget_set_property. Call cascaded
+       update methods.
+       (redisplay_widget): renamed from update_widget.
+       (widget_layout): image_instance_layout now takes position as well
+       as size.
+       (widget_normalize): ditto.
+       (widget_instantiate): ditto.
+       (tab_control_query_geometry) ditto.:
+       (tab_control_update): renamed from tab_control_set_property.
+       (progress_gauge_update): set_property -> update.
+       (layout_normalize): rewrite so that child instantiators are
+       normalized also.
+       (layout_update): new function. Create glyphs from the normalized
+       children and cope with any other layout keywords. We do not
+       instantiate children here that will be take care of by
+       redisplay_output_layout.
+       (layout_instantiate): call layout_update and not much else.
+       (layout_post_instantiate): not sure whether this is needed
+       anymore.
+       (layout_query_geometry): query glyph geometry rather than
+       image_instance geometry.
+       (layout_layout): set offsets from pass in parameters. Use glyph
+       geometry and layout functions rather than image instance ones.
+       (native_layout_layout): ditto.
+       (syms_of_glyphs_widget): add make-glyph and set-glyph-image.
+       (image_instantiator_widget): set_property -> update.
+       (image_instantiator_buttons): ditto.
+       (image_instantiator_progress_guage): ditto.
+       (image_instantiator_tab_control): ditto.
+       (VALID_LAYOUT_KEYWORDS): instantiators must now be vectors.
+       (image_instantiator_layout): add update method.
+
+       * glyphs-msw.c (bmp_normalize):
+       (mswindows_resource_normalize): add dest_mask so that it can be
+       proprogated by layout_normalize.
+       (begin_defer_window_pos): make optional because it may not be the
+       right thing to do and it introduces differences with X.
+       (mswindows_unmap_subwindow): ditto.
+       (mswindows_map_subwindow): ditto.
+       (mswindows_redisplay_subwindow): renamed from
+       mswindows_update_subwindow.
+       (mswindows_redisplay_widget): ditto.
+       (mswindows_button_redisplay): renamed from
+       mswindows_button_update. Update is now what the instantiation
+       function does for a changed instantiator.
+       (mswindows_progress_gauge_instantiate): set the progress value
+       here if appropriate.
+       (mswindows_tab_control_redisplay): cope with re-ordering of the
+       members of the tab widget by simply selecting the new top
+       widget. This makes things appear ok if you click on a tab.
+       (mswindows_combo_box_instantiate): image_instance_layout now takes
+       position as well as size.
+       (mswindows_progress_gauge_redisplay): renamed from
+       mswindows_progress_gauge_update.
+       (console_type_create_glyphs_mswindows): fix update -> redisplay.
+       (image_instantiator_format_create_glyphs_mswindows): ditto.
+
+       * glyphs-eimage.c (jpeg_normalize):
+       (gif_normalize):
+       (png_normalize):
+       (tiff_normalize): add dest_mask so that it can be proprogated by
+       layout_normalize.
+
+       * elhash.c:
+       (print_hash_table):
+       (hash_table_weakness_validate):
+       (decode_hash_table_weakness):
+       (Fhash_table_weakness):
+       (Fhash_table_type):
+       (syms_of_elhash): use Ben's naming scheme for hashtable types..
+
+       * console.h (struct console_methods): move update_* to
+       redisplay_*.
+
+2000-07-20  Ben Wing  <ben@xemacs.org>
+
+       * *.[ch] (XSETOBJ): remove unused middle argument.
+       lisp-disunion.h: correct wrap_object() to one argument.
+
+2000-07-15  Ben Wing  <ben@xemacs.org>
+
+        * s/cygwin32.h:
+        * s/cygwin32.h (CYGWIN_CONV_PATH):
+        Add missing logb prototype for v1.1.
+        Use post-b20 names and alias to pre-b20 names when pre-b20.
+
+        * s/windowsnt.h: [5].
+
+2000-07-15  Ben Wing  <ben@xemacs.org>
+
+       * Makefile.in.in (x_objs):
+       * Makefile.in.in (sheap_objs):
+       * Makefile.in.in (objs):
+       added win32.o, cosmetic cleanups.
+
+        * alloc.c (Fmake_byte_code):
+        [[[1]]]: Changes for new LIST_LOOP, EXTERNAL_LIST_LOOP,
+        etc. macros which declare their own args now.
+
+        * alloc.c (syms_of_alloc):
+        [[[2]]]: Use DEFSYMBOL, DEFKEYWORD, DEFERROR and friends.
+
+        * buffer.c:
+        Moved buffer-dedicated-frame, set-buffer-dedicated-frame into lisp.
+
+        * buffer.c (Fget_file_buffer):
+        Fixed GCPRO problem.
+
+        * buffer.c (get_truename_buffer):
+        Fixed comment about GC checking.
+
+        * buffer.c (syms_of_buffer):
+        Undeclared those dedicated frame funs.
+        [2].
+
+        * buffer.h:
+        Define convenience macros for internal/external conversions.
+       [[[3]]]: Define codesys aliases Qcommand_argument_encoding
+        and Qenvironment_variable_encoding for cleaner code.
+
+        * bufslots.h:
+        Remove dedicated-frame; in lisp.
+
+        * bytecode.c (funcall_compiled_function):
+        [1].
+
+        * bytecode.c (syms_of_bytecode):
+        [2].
+
+        * console-msw.c:
+        * console-msw.c (mswindows_show_console): Rewrote.
+
+        * console-msw.c (Fmswindows_debugging_output): New.
+        Sends to OutputDebugString (special MSWin debugger interface).
+
+        * console-msw.c (Fmswindows_message_box):
+        Fixed stupid bugs so it works when called from kill-emacs.
+
+        * console-msw.c (syms_of_console_mswindows):
+        Declare Fmswindows_debugging_output.
+
+        * console-msw.h:
+        New MSWin prototypes.
+
+        * console-msw.h (struct mswindows_frame):
+        New entry last-click-mods for improved button-modifier support.
+
+        * console-msw.h (FRAME_MSWINDOWS_POPUP):
+        New struct entry `popup' with corresponding accessor.
+
+        * console-x.c:
+        * console-x.c (split_up_display_spec):
+        * console-x.c (get_display_arg_connection):
+        * console-x.c (x_semi_canonicalize_console_connection):
+        * console-x.c (x_canonicalize_device_connection):
+        [[[6]]]: Change char to more specific type.
+        [[[8]]]: Make use of abstracting codesys aliases defined in [3], [4];
+
+        * console-x.c (x_semi_canonicalize_console_connection):
+        * console-x.c (x_canonicalize_device_connection):
+        [[[9]]]: Fix up error signalling to use new structured error system.
+
+        * console-x.h:
+        [[[4]]]: Define codesys aliases:
+        Qlwlib_encoding, Qx_atom_name_encoding, Qx_font_name_encoding,
+        Qx_color_name_encoding, Qx_display_name_encoding.
+
+        * console.h (struct console_methods):
+        New method make_dialog_box_internal supersedes older
+        popup_dialog_box method.
+
+        * data.c:
+        Define many new errors, part of new structured errors.
+
+        * data.c (init_errors_once_early):
+        * data.c (syms_of_data):
+        [2].
+
+        * device-msw.c (mswindows_init_device):
+        [[[5]]]: Cleanup to support NT 3.51.
+
+        * device-msw.c (decode_devmode): Cleanup.
+
+        * device-msw.c (mswindows_handle_print_setup_dialog_box):
+        * device-msw.c (mswindows_handle_print_dialog_box):
+        * device-msw.c (mswindows_handle_page_setup_dialog_box):
+        * device-msw.c (syms_of_device_mswindows):
+        Delete the dialog box primitives recently introduced by Kirill and
+       instead interface to general dialog box interface.
+
+        * device-x.c:
+        * device-x.c (compute_x_app_name):
+        * device-x.c (x_init_device):
+        * device-x.c (Fx_valid_keysym_name_p):
+        * device-x.c (Fx_set_font_path):
+        [6].
+        [7].
+
+        * device.h (wrap_device): New.
+        First of its kind; meant to replace XSETDEVICE.
+
+        * dialog-msw.c: Many file-dialog symbols.
+
+        * dialog-msw.c (mswindows_register_popup_frame): New.
+        * dialog-msw.c (mswindows_is_dialog_msg): New.
+        For supporting kbd traversal in dialog boxes.
+
+        * dialog-msw.c (dialog_proc):
+        Support hitting ESC in dialogs.
+
+        * dialog-msw.c (struct):
+        Common dialog box errors.
+
+        * dialog-msw.c (handle_file_dialog_box): New.
+        Add file dialog code.
+
+        * dialog-msw.c (handle_question_dialog_box):
+        Redo existing code to support new question dialog syntax.
+
+        * dialog-msw.c (console_type_create_dialog_mswindows):
+        We support new dialog console method.
+
+        * dialog-msw.c (syms_of_dialog_mswindows):
+        * dialog-msw.c (vars_of_dialog_mswindows):
+        New file dialog symbols, vars.
+
+        * dialog-x.c:
+        * dialog-x.c (maybe_run_dbox_text_callback):
+        * dialog-x.c (dbox_descriptor_to_widget_value):
+        * dialog-x.c (x_make_dialog_box_internal):
+        * dialog-x.c (console_type_create_dialog_x):
+        Mule-ize entire file.
+        Redo to support question dialog syntax.
+        [6].
+
+        * dialog.c:
+        * dialog.c (Fmake_dialog_box_internal):
+        * dialog.c (syms_of_dialog):
+        Kill old popup-dialog-box, replace with new primitive.
+        Just call device method or signal error.
+
+        * eldap.c (Fldap_open):
+        * eldap.c (Fldap_search_basic):
+        * eldap.c (Fldap_add):
+        * eldap.c (Fldap_modify):
+        [1].
+        [7].
+
+        * emacs.c:
+        * emacs.c (make_arg_list_1):
+        * emacs.c (make_arg_list):
+        Mule-ize call to dll_init().
+        [6].
+        [8].
+
+        * emacs.c (make_argc_argv):
+        * emacs.c (free_argc_argv):
+        * emacs.c (init_cmdargs):
+        * emacs.c (main_1):
+        * emacs.c (Fkill_emacs):
+        * emacs.c (Fdump_emacs):
+        Update comments about what can be used in syms_* etc.
+        Call init_win32() when necessary.
+        Fix up MS Win dialog box in kill-buffer to actually work right.
+        [7].
+
+        * eval.c:
+        * eval.c (For):
+        * eval.c (Fand):
+        * eval.c (Fprogn):
+        * eval.c (Fprog1):
+        * eval.c (Fprog2):
+        * eval.c (FletX):
+        * eval.c (Flet):
+        * eval.c (condition_case_3):
+        * eval.c (Feval):
+        * eval.c (function_argcount):
+        * eval.c (funcall_lambda):
+        [1].
+
+        * eval.c (type_error): New.
+        * eval.c (maybe_type_error): New.
+        * eval.c (continuable_type_error): New.
+        * eval.c (maybe_continuable_type_error): New.
+        * eval.c (type_error_with_frob): New.
+        * eval.c (maybe_type_error_with_frob): New.
+        * eval.c (continuable_type_error_with_frob): New.
+        * eval.c (maybe_continuable_type_error_with_frob): New.
+        New functions for use with structured errors.
+
+        * event-Xt.c:
+        * event-Xt.c (x_event_to_emacs_event):
+        Buttons are now modifiers too.
+
+        * event-Xt.c (emacs_Xt_current_event_timestamp):
+        Implement new event method.
+        * event-Xt.c (reinit_vars_of_event_Xt): Set it.
+
+        * event-msw.c:
+        * event-msw.c (ntpipe_shove_writer): [5].
+        * event-msw.c (mswindows_enqueue_mouse_button_event):
+        * event-msw.c (mswindows_drain_windows_queue):
+        * event-msw.c (mswindows_wnd_proc): [7].
+        * event-msw.c (mswindows_current_layout_has_AltGr): [5].
+        * event-msw.c (mswindows_modifier_state):
+        Throughout: support new button modifiers.
+
+        * event-msw.c (emacs_mswindows_current_event_timestamp):
+        Implement new event method.
+        * event-msw.c (reinit_vars_of_event_mswindows): Set it.
+
+        * event-stream.c:
+        * event-stream.c (event_stream_current_event_timestamp): New.
+        * event-stream.c (maybe_kbd_translate): New functionality.
+        * event-stream.c (vars_of_event_stream):
+        Document new kbd-translate-table functionality.
+
+        * event-stream.c (Fcurrent_event_timestamp): New.
+        New primitive for use in fabricated events.
+        * event-stream.c (syms_of_event_stream): [2]. Declare new primitive.
+
+        * events-mod.h (XEMACS_MOD_BUTTON1): new button modifiers.
+
+        * events.c:
+        * events.c (Fmake_event):
+        * events.c (WRONG_EVENT_TYPE_FOR_PROPERTY):
+        [1].
+        [9].
+
+        * events.c (format_event_object): fix gcc warnings.
+
+        * events.c (Fevent_timestamp): Document new primitives.
+
+        * events.c (TIMESTAMP_HALFSPACE): New.
+
+        * events.c (Fevent_timestamp_lessp): New.  New primitive for
+       comparing timestamps correctly (half-space algorithm).
+
+        * events.c (Fevent_modifier_bits): Doc fix.
+
+        * events.c (Fevent_modifiers): Major doc addition.
+        * events.c (event_x_y_pixel_internal): Typo fix.
+        * events.c (syms_of_events): Declare new primitives.
+
+        * events.h:
+        Update long comment for button modifiers, timestamps.
+
+        * events.h (struct event_stream):
+        New current_event_timestamp method.
+
+        * extents.c:
+        * extents.c (extent_in_region_p):
+        * extents.c (decode_extent):
+        * extents.c (Fset_extent_parent):
+        * extents.c (decode_map_extents_flags):
+        Fix gcc warnings.
+        [9].
+
+        * extents.c (struct extent_at_arg):
+        * extents.c (decode_extent_at_flag):
+        * extents.c (extent_at_mapper):
+        * extents.c (extent_at_bytind):
+        * extents.c (Fextent_at): Adapt to new lower-level interface. [9].
+        * extents.c (Fextents_at): New primitive. [9].
+        * extents.c (symbol_to_glyph_layout): [9].
+        Support new primitive `extents-at'.
+
+
+        * extents.c (get_text_property_bytind):
+        extent_at_bytind has another arg.
+        [9].
+
+        * extents.c (syms_of_extents): New primitive.
+
+        * file-coding.c (Fmake_coding_system): [1].
+        * file-coding.c (subsidiary_coding_system): fix gcc warning
+        * file-coding.c (syms_of_file_coding): [2].
+
+        * fileio.c (Fexpand_file_name):
+        * fileio.c (Fsysnetunam):
+        * fileio.c (Ffile_exists_p):
+        * fileio.c (Ffile_executable_p):
+        * fileio.c (Fverify_visited_file_modtime):
+        Clean up GCPROing.
+
+        * fileio.c (syms_of_fileio): [2].
+
+        * filelock.c (lock_file_1):
+        * filelock.c (current_lock_owner):
+        * filelock.c (lock_if_free):
+        * filelock.c (lock_file):
+        * filelock.c (unlock_file):
+        Clean up GCPROing.
+
+        * fns.c (concat): Fix gcc warning.
+
+        * fns.c (Fmember):
+        * fns.c (Fold_member):
+        * fns.c (Fmemq):
+        * fns.c (Fold_memq):
+        * fns.c (memq_no_quit):
+        * fns.c (Fassoc):
+        * fns.c (Fold_assoc):
+        * fns.c (Fassq):
+        * fns.c (Fold_assq):
+        * fns.c (assq_no_quit):
+        * fns.c (Frassoc):
+        * fns.c (Fold_rassoc):
+        * fns.c (Frassq):
+        * fns.c (Fold_rassq):
+        * fns.c (rassq_no_quit):
+        * fns.c (Fdelete):
+        * fns.c (Fold_delete):
+        * fns.c (Fdelq):
+        * fns.c (Fold_delq):
+        * fns.c (delq_no_quit):
+        * fns.c (Fremassoc):
+        * fns.c (Fremassq):
+        * fns.c (remassq_no_quit):
+        * fns.c (Fremrassoc):
+        * fns.c (Fremrassq):
+        * fns.c (remrassq_no_quit):
+        * fns.c (Freverse):
+        * fns.c (mapcar1):
+        [1].
+
+        * frame-msw.c (mswindows_init_frame_1):
+        * frame-msw.c (mswindows_delete_frame):
+        Register popups with dialog code so keyboard traversing works.
+
+        * frame-tty.c (tty_raise_frame_no_select): [1].
+
+        * frame-x.c:
+        * frame-x.c (x_set_frame_text_value):
+        * frame-x.c (x_set_frame_properties):
+        * frame-x.c (x_create_widgets):
+        [7].
+
+        * frame.c:
+        * frame.c (Fmouse_pixel_position): Minor doc fixes.
+
+        * frame.h (wrap_frame): New.
+        Macro like wrap_device.
+
+        * general.c:
+        * general.c (SYMBOL):
+        * general.c (syms_of_general):
+        Major reorg.  This is now just a wrapper and symbols themselves
+        are listed in general-slots.h.
+
+        * glyphs-eimage.c (tiff_instantiate): Need cast to fix warning.
+        * glyphs-msw.c (mswindows_resource_instantiate): [5].
+
+        * glyphs-msw.c (mswindows_native_layout_instantiate):
+        Add DS_CONTROL so keyboard traversal will work.
+
+        * glyphs-widget.c:
+        * glyphs-widget.c (syms_of_glyphs_widget):
+        Move some symbols to general-slots.h.
+
+        * glyphs-x.c:
+        * glyphs-x.c (xbm_instantiate_1):
+        * glyphs-x.c (x_xbm_instantiate):
+        * glyphs-x.c (x_xface_instantiate):
+        * glyphs-x.c (autodetect_instantiate):
+        * glyphs-x.c (cursor_font_instantiate):
+        * glyphs-x.c (x_update_widget):
+        * glyphs-x.c (x_widget_instantiate):
+        * glyphs.c (bitmap_to_lisp_data):
+        * glyphs.c (pixmap_to_lisp_data):
+        [7].
+
+        * glyphs.c (syms_of_glyphs):
+        [2].
+
+        * gui-x.c:
+        * gui-x.c (print_widget_value):
+        * gui-x.c (menu_separator_style_and_to_external):
+        * gui-x.c (add_accel_and_to_external):
+        * gui-x.c (button_item_to_widget_value):
+        * gui-x.c (gui_items_to_widget_values_1):
+        * gui-x.c (gui_items_to_widget_values):
+        * gui-x.c (syms_of_gui_x):
+        * gui-x.c (vars_of_gui_x):
+        Mule-ize entire file.  Move menu-no-selection-hook to gui.c.
+        [9].
+
+        * gui-x.h:
+        Muleize, prototype changes matching gui-x.c.
+
+        * gui.c:
+        * gui.c (separator_string_p):
+        * gui.c (gui_item_add_keyval_pair):
+        * gui.c (make_gui_item_from_keywords_internal):
+        * gui.c (signal_too_long_error):
+        * gui.c (parse_gui_item_tree_item):
+        * gui.c (syms_of_gui):
+        * gui.c (vars_of_gui):
+        * gui.h:
+        menu-no-selection-hook moved here (used by MSWin).
+        Move some symbols to general-slots.h.
+        [6].
+        [9].
+
+        * insdel.c (get_buffer_pos_char):
+        * insdel.c (get_buffer_range_char):
+        Add GC comments.
+
+        * keymap.c (keymap_lookup_directly):
+        * keymap.c (keymap_store):
+        * keymap.c (ensure_meta_prefix_char_keymapp):
+        * keymap.c (describe_map):
+        * keymap.h:
+        Support new button modifiers.
+
+        * lisp-disunion.h (wrap_object):
+        * lisp-disunion.h (XSETOBJ):
+        Rename make_obj to wrap_object.
+
+        * lisp-union.h:
+        * lisp-union.h (make_int):
+        * lisp-union.h (make_char):
+        Support wrap_object.
+
+        * lisp.h:
+        * lisp.h (LIST_LOOP):
+        * lisp.h (EXTERNAL_LIST_LOOP):
+        * lisp.h (LIST_LOOP_2):
+        * lisp.h (EXTERNAL_LIST_LOOP_1):
+        * lisp.h (EXTERNAL_LIST_LOOP_2):
+        * lisp.h (EXTERNAL_LIST_LOOP_3):
+        * lisp.h (EXTERNAL_LIST_LOOP_4_NO_DECLARE):
+        * lisp.h (PRIVATE_EXTERNAL_LIST_LOOP_6):
+        * lisp.h (GET_EXTERNAL_LIST_LENGTH):
+        * lisp.h (EXTERNAL_ALIST_LOOP_5):
+        * lisp.h (EXTERNAL_ALIST_LOOP_6):
+        * lisp.h (EXTERNAL_ALIST_LOOP_6_NO_DECLARE):
+        * lisp.h (EXTERNAL_PROPERTY_LIST_LOOP_5_NO_DECLARE):
+        * lisp.h (EXTERNAL_PROPERTY_LIST_LOOP_7):
+        * lisp.h (struct Lisp_Symbol):
+        * lisp.h (maybe_continuable_error_with_frob):
+        Fix up section comments.
+        Add new types for char to indicate usage.
+        Delete symbols auto-generated from general-slots.h.
+        Add prototypes for structured error functions.
+        Add long comments describing looping macros and change interface
+        so that lvalues are automatically declared.
+       Add NO_DECLARE macro in case callers want to declare lvalues
+       themselves.
+
+        * lread.c (read_syntax_error):
+        * lread.c (continuable_read_syntax_error):
+        * lread.c (read_structure):
+        * lread.c (sequence_reader):
+        * lread.c (read_list_conser):
+        * lread.c (read_compiled_function):
+        Rename syntax_error and continuable_syntax_error to avoid clash
+        with same-named structured error functions.
+
+        * menubar-msw.c (mswindows_translate_menu_or_dialog_item):
+        * menubar-msw.c (populate_menu_add_item):
+        * menubar-msw.c (populate_or_checksum_helper):
+        [5].
+        [9].
+
+        * menubar-x.c:
+        * menubar-x.c (menu_item_descriptor_to_widget_value_1):
+        Mule-ize whole file.
+
+        * menubar.c (Fnormalize_menu_item_name): Add optimization.
+
+        * mule-charset.c (Fmake_charset):
+        * mule-wnnfns.c (Fwnn_set_param):
+        [1].
+
+        * ntproc.c (create_child):
+        * ntproc.c (Fwin32_set_current_locale):
+        Add comments portending doom.
+
+        * objects-msw.c:
+        * objects-msw.c (old_font_enum_callback_2):
+        * objects-msw.c (font_enum_callback_1):
+        * objects-msw.c (mswindows_enumerate_fonts):
+        [5].
+
+        * objects-x.c:
+        * objects-x.c (allocate_nearest_color):
+        * objects-x.c (x_parse_nearest_color):
+        * objects-x.c (x_initialize_color_instance):
+        * objects-x.c (x_print_color_instance):
+        * objects-x.c (x_finalize_color_instance):
+        * objects-x.c (x_valid_color_name_p):
+        * objects-x.c (x_initialize_font_instance):
+        * objects-x.c (x_print_font_instance):
+        * objects-x.c (valid_x_font_name_p):
+        * objects-x.c (truename_via_FONT_prop):
+        * objects-x.c (truename_via_random_props):
+        * objects-x.c (truename_via_XListFonts):
+        * objects-x.c (x_font_truename):
+        * objects-x.c (x_font_instance_truename):
+        * objects-x.c (x_font_instance_properties):
+        * objects-x.c (x_list_fonts):
+        * objects-x.c (x_find_charset_font):
+        Mule-ize entire file.
+        [7].
+
+        * objects-x.h:
+        Mule-verify.
+
+        * print.c:
+        * print.c (std_handle_out_external):
+        * print.c (debug_print_no_newline):
+        * print.c (syms_of_print):
+        Output to all debugger kinds in debug-print.
+        Fix console-output code under MSWin to actually work.
+
+        * process-nt.c (send_signal):
+        * process-nt.c (nt_create_process):
+        Use newer Unicode macros.
+
+        * process-unix.c (unix_create_process):
+        * process-unix.c (unix_canonicalize_host_name):
+        * process-unix.c (unix_open_network_stream):
+        [7].
+
+        * scrollbar-x.c:
+        Mule-verify.
+
+        * search.c (syms_of_search):
+        [2].
+
+        * select-msw.c (mswindows_destroy_selection):
+        Use LIST_LOOP_2.
+
+        * select-x.c (symbol_to_x_atom):
+        [7].
+
+        * select.c (syms_of_select):
+        [2].
+
+        * sound.c (Fplay_sound_file):
+        [7].
+
+        * specifier.c:
+        * specifier.c (decode_specifier_type):
+        * specifier.c (Fvalid_specifier_locale_type_p):
+        * specifier.c (check_valid_locale_or_locale_type):
+        * specifier.c (decode_locale):
+        * specifier.c (decode_locale_type):
+        * specifier.c (decode_locale_list):
+        * specifier.c (check_valid_domain):
+        * specifier.c (decode_specifier_tag_set):
+        * specifier.c (Fcanonicalize_tag_set):
+        * specifier.c (Fdefine_specifier_tag):
+        * specifier.c (Fspecifier_tag_predicate):
+        * specifier.c (check_valid_inst_list):
+        * specifier.c (check_valid_spec_list):
+        * specifier.c (decode_how_to_add_specification):
+        * specifier.c (check_modifiable_specifier):
+        * specifier.c (specifier_add_spec):
+        * specifier.c (boolean_validate):
+        * specifier.c (display_table_validate):
+        [9].
+
+        * specifier.c (syms_of_specifier):
+        Move some symbols to general-slots.h.
+        [2].
+
+        * symbols.c:
+        * symbols.c (Fmapatoms):
+        * symbols.c (Fapropos_internal):
+        Add GCPROs.
+
+        * symbols.c (set_default_buffer_slot_variable):
+        * symbols.c (set_default_console_slot_variable):
+        [1].
+
+        * symbols.c (defsymbol_massage_name_1):
+        * symbols.c (defkeyword_massage_name):
+        * symbols.c (deferror_1):
+        * symbols.c (deferror):
+        * symbols.c (deferror_massage_name_and_message):
+        * symeval.h:
+        * symeval.h (DEFSYMBOL):
+        Support DEFSYMBOL*, DEFKEYWORD, DEFERROR
+
+        * symbols.c (syms_of_symbols):
+        [2].
+
+        * symsinit.h:
+        * symsinit.h (init_win32): New.
+        Also new is syms_of_dialog_mswindows.
+
+        * syswindows.h:
+       Add new Unicode macros, missing Cygwin wide-char functions,
+       convenience conversion macros for Qmswindows_tstr, macros for
+       encapsulating required MSWin <-> Cygwin filename conversions,
+       prototype for dynamically-extracted (not in NT 3.51) functions.
+
+        * toolbar-x.c:
+        Mule-verify.
+
+        * tooltalk.c (Fadd_tooltalk_message_arg):
+        * tooltalk.c (Fadd_tooltalk_pattern_attribute):
+        * tooltalk.c (Fadd_tooltalk_pattern_arg):
+        [7].
+
+        * tooltalk.c (syms_of_tooltalk):
+        [2].
+
+        * unexnt.c:
+        * unexnt.c (unexec):
+        Fix up headers, declaration of unexec() to be more standard.
+
+2000-07-20  Martin Buchholz  <martin@xemacs.org>
+
+       * offix.h: Revert change to guard macros - they're used in offix.c!
+
+2000-07-18  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
+
+       * lisp.h: Defsubred Fdelete.
+
+       * console-msw.h:  (msprinter_default_printer): Added.
+
+       * console-msw.c (msprinter_canonicalize_console_connection):
+       (msprinter_canonicalize_device_connection): Added.
+
+       * device-msw.c (msprinter_default_printer):
+       (Fmswingows_get_default_printer):
+       (signal_enum_priner_error):
+       (Fmswingows_printer_list): Added.
+
+2000-07-19  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.35 is released.
+
+2000-07-19  Martin Buchholz  <martin@xemacs.org>
+
+       * select-x.c (x_handle_selection_request):
+       Text selected in xemacs and pasted into xterm failed to appear.
+       Spelling fixes and cosmetic changes.
+
+2000-07-18  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
+
+       * event-msw.c (mswindows_drain_windows_queue): Correctly check for
+       XEmacs frame (fix for doubling chars in dialog boxes).
+
+2000-07-17 Alastair J. Houghton <ajhoughton@lineone.net>
+
+       * select.c (select_convert_in, select_convert_out):
+       Don't call intern() every time.
+
+       * select.c (Qselect_convert_in, Qselect_convert_out): New.
+       * select.c (vars_of_select): Initialise them.
+
+2000-07-18 Alastair J. Houghton <ajhoughton@lineone.net>
+
+       * select.c (selection-coercible-types): New.
+
+       * select.c (own-selection-internal):
+       * select.c (get-selection-internal):
+       MULE bug fix - these should default to COMPOUND_TEXT and not
+       STRING for MULE. I think.
+
+       * select.c (select_convert_out): Use selection-coercible-types
+       to find types that we can attempt to perform coercions on.
+
+2000-07-18  Martin Buchholz  <martin@xemacs.org>
+
+       * mule-wnnfns.c:
+       * mule-canna.c:
+       Add coding: cookie to identify encoding.
+
+       * mule-canna.c (CANNA_mode_keys): make static.
+       Use proper prototypes, even for functions of no arguments.
+       Remove external prototype for Fding().
+
+       * symsinit.h: Add missing prototype for reinit_vars_of_mule_wnn.
+
+       * select.c (syms_of_select): Add missing DEFSUBR.
+
+2000-07-18 Alastair J. Houghton <ajhoughton@lineone.net>
+
+       * select.c (get_selection_internal, own_selection_internal):
+       Make the type default to STRING, rather than placing a nil type
+       into Vselection_alist.
+
+2000-07-17 Alastair J. Houghton <ajhoughton@lineone.net>
+
+       * gpmevent.c (tty_selection_exists_p):
+       * gpmevent.c (tty_own_selection):
+       Updated parameter lists.
+
+2000-07-15 Alastair J. Houghton <ajhoughton@lineone.net>
+
+       * select.h (selection-alist): Removed declaration.
+
+       * select.h (get_local_selection):
+       * select.c (get_local_selection):
+       Made static.
+
+       * select.h (convert_selection): Removed declaration.
+       * select.c (convert_selection): Removed.
+       This function belongs in Lisp.
+
+       * select.h (select_convert_in): Declare.
+       * select.h (select_convert_out): Declare.
+       * select.c (select_convert_in): New.
+       * select.c (select_convert_out): New.
+       New conversion functions for other files to call.
+
+       * select.h (select_notify_buffer_kill): Declare.
+       * select.c (select_notify_buffer_kill): New.
+       New functions that get called from kill-buffer.
+
+       * buffer.c (kill-buffer): Call select_notify_buffer_kill, rather than
+       X-specific lisp code.
+
+       * select.h: Declare some of the lisp-visible functions for
+       external use.
+
+       * select.c (clean_local_selection_data): Removed. This was
+       a disgusting function, and previously should have been in
+       select-x.c in any case. The functionality is now provided
+       in select-convert-from-integer (select.el).
+
+       * select.c (available-selection-types): Fixed stupidity where
+       INTEGER and ATOM got added twice. Also add STRING when we see an
+       extent.
+
+       * select.c (get-selection-internal): Removed symbol stripping. No
+       longer causes conversion when data comes from the internal cache.
+
+       * select.c (syms_of_select): Added new functions.
+
+       * select-x.c (motif_clipboard_cb): Use select_convert_out. Rewrote
+       error checking - previously this called abort!
+
+       * select-x.c (x_own_selection): Changed comment.
+
+       * select-x.c (x_handle_selection_request): Use select_convert_out.
+       Don't mess with selection-alist; it's an internal variable of select.c.
+
+       * select-x.c (x_get_foreign_selection): Use select_convert_in.
+
+       * select-x.c (x_handle_selection_clear): Use get-selection-timestamp,
+       rather than messing with selection-alist.
+
+       * select-msw.c (mswindows_get_foreign_selection):
+       Use TO_INTERNAL_FORMAT rather than hacking.
+
+2000-07-14  Martin Buchholz  <martin@xemacs.org>
+
+       * process-unix.c (unix_open_multicast_group):
+       (unix_open_multicast_group): Remove useless casts.
+
+2000-07-13  Martin Buchholz  <martin@xemacs.org>
+
+       * sound.c (Fplay_sound): Fix `unused variable' warning.
+
+       * emacs.c (main): Use correct type for _environ on SCO5.
+
+2000-07-12 Alastair J. Houghton <ajhoughton@lineone.net>
+
+       * console.h (own_selection_method):
+       * console.h (selection_exists_p_method):
+       * console.h (available_selection_types_method): New.
+       * console.h (register_selection_data_type_method): New.
+       * console.h (selection_data_type_name): New.
+
+       * console-msw.h (mswindows_destroy_selection): Declare it.  New
+       function & alist to track GlobalAlloc()'d handles that need
+       releasing when the clipboard data gets replaced or emptied.
+
+       * event-msw.c (mswindows_wnd_proc): Call it.
+
+       * lisp.h, general.c (Qappend): New symbol representing a
+       `how-to-add' mode.
+
+       * select.c (own-selection-internal):
+       * select.c (selection-exists-p):
+       * select.c (available-selection-types): New.
+       * select.c (register-selection-data-type): New.
+       * select.c (selection-data-type-name): New.  New functions to deal
+       with device-specific selection data formats.
+       * select.c (selection-converter-out-alist): Renamed.
+       * select.c (selection-converter-in-alist): New.
+       * select.c (selection-appender-alist): New.  Added new alists.
+       * select.c (syms_of_select, vars_of_select): Added new symbols &
+       variables.
+       * select.c (get_local_selection): Split.
+       * select.c: Removed spurious type checking - selections may now be
+       of any type, not just strings.
+       * select.c (own-selection-internal):
+
+       * select.h, select.c (convert_selection): New. Created
+       convert_selection() function based on get_local_selection().
+       * select.h, select.c (QCF_*): New symbols representing mswindows
+       clipboard formats.
+       * select.h, select.c (Qreplace_all, Qreplace_existing): New
+       symbols representing `how-to-add' modes.
+
+       * select-msw.c (x_sym_p): New.
+       * select-msw.c (symbol_to_ms_cf): New.
+       * select-msw.c (ms_cf_to_symbol): New. New functions to deal with
+       symbols & clipboard formats. Can also handle string names.
+       * select-msw.c (mswindows_own_selection):
+       * select-msw.c (mswindows_selection_exists_p):
+       Added `data-type' parameter. Use it.
+       * select-msw.c (mswindows_available_selection_types): New.
+       * select-msw.c (mswindows_register_selection_data_type): New.
+       * select-msw.c (mswindows_selection_data_type_name): New.
+       * select-msw.c (mswindows_own_selection):
+       * select-msw.c (mswindows_get_foreign_selection):
+       * select-msw.c (mswindows_selection_exists_p):  Rewrote.
+       * select-msw.c (console_create_select_mswindows): Added new methods.
+       * select-msw.c (mswindows_destroy_selection): New.
+       * select-msw.c (Vhandle_alist): New list.
+       * select-msw.c (mswindows_own_selection):
+
+       * select-x.c (x_own_selection):
+       * select-x.c (x_selection_exists_p):
+       * select-x.c: Added some comments about maybe using new
+       functionality.
+       * select-x.c (x_own_selection):
+
+       * specifier.c: Remove definition of Qappend (now in general.c)
+       * specifier.c (syms_of_specifier): Remove Qappend.
+
+2000-07-12  Martin Buchholz  <martin@xemacs.org>
+
+       * config.h.in: Add socklen_t.
+
+       * s/decosf4-0.h: No special compiler flags needed or desired.
+       In particular, undefine _BSD for DEC OSF 4.0.
+
+2000-07-07  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
+
+       * redisplay-msw.c (msprinter_frame_output_end): Added.
+       (console_type_create_redisplay_mswindows): Referred the above.
+
+       * frame.c (setup_frame_without_minibuffer): Do not create a
+       default minibuffer frame on a printer device.
+
+       * frame-msw.c (apply_dc_geometry): Added.
+       (msprinter_start_page):
+       (msprinter_init_frame_3):
+       (msprinter_eject_page): Use it.
+
+       * console-msw.h (struct msprinter_frame): Added pix_left and top,
+       and removed residual duplex and orientation properties.
+
+2000-07-11  Martin Buchholz  <martin@xemacs.org>
+
+       * eval.c (function_argcount): Work around a DEC CC compiler bug.
+
+       * unexalpha.c: Remove system prototypes from C sources!
+
+2000-07-09  Adrian Aichner  <aichner@ecf.teradyne.com>
+
+       * eval.c: Remove references to M-x edit-options in DEFUNs for
+       `defvar' and `defconst'.
+
+2000-07-09  Martin Buchholz  <martin@xemacs.org>
+
+       * config.h.in: Remove SMART_INCLUDE hackery.
+
+       PostgreSQL hacking:
+       * config.h.in: Don't use SMART_INCLUDE.
+
+       * postgresql.h: Include libpq-fe.h here.  Fix typo.
+       * inline.c: Simply #include "postgresql.h"
+       * postgresql.c:
+       - Don't use SMART_INCLUDE
+       - Use simply "const".
+       - Use standard doc string conventions.
+       - Use correct type for result of PQstatus.
+
+2000-07-09  Martin Buchholz  <martin@xemacs.org>
+
+       * glyphs-x.c (x_xface_instantiate): Fix C++ compilation warnings.
+
+       C++ compilation changes.
+       * config.h.in (EXTERN_C): Define.
+       * config.h.in (not): This is also a C++ keyword.
+       * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Enable C++ compilation.
+       * cm.c: Use EXTERN_C.
+       * redisplay-tty.c: Use EXTERN_C.
+       * sysdep.c: Use EXTERN_C.  Remove Gould support.
+
+2000-07-09  Martin Buchholz  <martin@xemacs.org>
+
+       * general.c: Remove duplicate definition for Qfunction.
+
+2000-07-08  Ben Wing  <ben@xemacs.org>
+
+       * device-msw.c (msprinter_init_device):
+       * device-msw.c (sync_printer_with_devmode):
+       * device-msw.c (handle_devmode_changes):
+       * device-msw.c (print_dialog_worker):
+       * device-msw.c (Fmsprinter_apply_settings):
+       * device-msw.c (hash_devmode):
+       * device-msw.c (Fmsprinter_settings_despecialize):
+       use Qmswindows_tstr, not Qctext.
+
+       * vm-limit.c (check_memory_limits):
+       avoid infinite loop printing warning messages.
+
+2000-07-05  Craig Lanning  <lanning@scra.org>
+
+        * Makefile.in.in: Add support for including the Windows resources
+        when building with the cygwin and mingw targets.
+
+        * buffer.c: from Dan Holmsand, on Windows $PWD is most likely either
+        not set or not correct.
+        (directory_is_current_directory): Don't compile for WIN32_NATIVE.
+        (init_initial_directory): Don't try to use $PWD on the
+        WIN32_NATIVE target.
+
+        * s\cygwin32.h:
+       [[Add -mwindows to eliminate console window.]] not required --ben
+        (HAVE_NATIVE_SOUND): removed; now handled by configure.
+        (MAIL_USE_POP): removed; now handled by configure.
+
+        * s\mingw32.h: [[Add -mwindows to eliminate console window.]] not in
+       C_SWITCH_SYSTEM or it will affect lib-src progs. --ben
+        (HAVE_NATIVE_SOUND): removed; now handled by configure.
+        (MAIL_USE_POP): removed; now handled by configure.
+        (ENCAPSULATE_STAT): from Dan Holmsand, added.
+        (ENCAPSULATE_FSTAT): from Dan Holmsand, added.
+        (DIRECTORY_SEP): from Dan Holmsand, use lisp variable instead of
+        constant string.
+        (HAVE_TIMEVAL): from Dan Holmsand, added; struct timeval is picked
+        up from <winsock.h> via systime.h.
+        (HAVE_GETPAGESIZE): from Dan Holmsand, added.
+        (getpagesize): from Dan Holmsand, added.
+        Added #endif which was left dangling by Ben's mega patch; added
+        comment to help prevent this in the future.
+
+        * sysdll.c: added #include <windows.h> for WIN32_NATIVE case.
+
+2000-07-05  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
+
+       * console-msw.h (struct mswindows_device): Removed unnecessary
+       cached device geometry values.
+       Added update_tick and an accessor macro.
+       (Lisp_Devmode): Added lrecord declaration.
+       (struct msprinter_device): Contain devmode as a Lisp object.
+       Added mswindows_get_selected_frame_hwnd();
+
+       * console.h (struct console_methods): Indentation nitpicking.
+
+       * device-msw.c (mswindows_init_device): Do not initialize geometry
+       cache. Initialize update tick.
+       (mswindows_device_system_metrics): Ask the device for its geometry.
+       (global_free_2_maybe):
+       (devmode_to_hglobal):
+       (handle_printer_changes):
+       (ensure_not_printing):
+       (print_dialog_worker):
+       (Fmsprinter_print_setup_dialog):
+       (Fmsprinter_print_dialog):
+       (plist_get_margin):
+       (plist_set_margin):
+       (Fmsprinter_page_setup_dialog): Added functions.
+       (sync_printer_with_devmode):
+       (handle_devmode_changes):
+       (Fmsprinter_get_settings):
+       (Fmsprinter_select_settings):
+       (Fmsprinter_apply_settings):
+       (allocate_devmode):
+       (Fmsprinter_settings_copy):
+       (Fmsprinter_settings_despecialize):
+       (print_devmode):
+       (finalize_devmode):
+       (equal_devmode):
+       (hash_devmode): Added functions
+       (syms_of_device_mswindows): Init devmode lrecord class.
+
+       * device.h: Added an exfun for find-device.
+
+       * event-msw.c (mswindows_wnd_proc): Do not update the cached
+       geometry; although, recreate the device compatible DC.
+
+       * frame-msw.c (mswindows_get_selected_frame_hwnd): Added.
+       (msprinter_init_frame_3):
+       (msprinter_frame_property):
+       (msprinter_internal_frame_property_p):
+       (msprinter_frame_properties):
+       (msprinter_set_frame_properties): Removed 'orientation and 'duplex
+       print job properties (will move to device settings).
+
+       * lisp.h: Added symbols.
+
+       * general.c (syms_of_general): Declared them.
+
+       * hash.c (string_hash): Added.
+
+       * lrecord.h (lrecord_type): Added devmode lrecord type.
+
+2000-07-02  Mike Sperber <mike@xemacs.org>
+
+       * s/freebsd.h (INTERRUPTIBLE_OPEN): open *is* interruptible on
+       FreeBSD 4.0.
+
+2000-06-07  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+       * doprnt.c (emacs_doprnt_1): Fix problem with %0XXd for a negative
+       integer.
+
+2000-06-07  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * data.c (Fstring_to_number): Don't recognize floating point if
+       base is not 10.
+
+2000-06-22  Martin Buchholz  <martin@xemacs.org>
+
+       * glyphs-widget.c (tab_control_query_geometry):
+       (widget_query_geometry):
+       (button_query_geometry):
+       * glyphs.c (text_query_geometry):
+       Enforce type correctness.
+
+2000-06-18  Martin Buchholz  <martin@xemacs.org>
+
+       * s/decosf4-0.h (_etext): Use portable _etext instead of etext.
+       * s/decosf4-0.h (_edata): Use portable _edata instead of edata.
+
+2000-06-17  Martin Buchholz  <martin@xemacs.org>
+
+       * s/decosf4-0.h: Never #include "/usr/include/FOO.h" because this
+       conflicts with gcc's fixincluded version of FOO.h.
+
+       * glyphs.h (image_instance_geometry): Remove trailing `,'
+
+2000-06-08  Mike Alexander  <mta@arbortext.com>
+
+        (MAX_SHOVE_BUFFER_SIZE): Change to 512 to match stream buffer size
+        (shove_thread): Don't write the same output twice
+        (make_ntpipe_output_stream): Increase priority of shove thread
+        (ntpipe_shove_writer): Call SwitchToThread to give shove thread a
+        chance to run
+        (ntpipe_shove_closer): Don't delete the pipe until we're done with
+        it.
+
+2000-06-12  Ben Wing  <ben@xemacs.org>
+
+       * s\mingw32.h (sigset):
+       * s\windowsnt.h (sigset):
+       rename msw_ to mswindows_ for consistency with general convention.
+
+2000-06-12  Ben Wing  <ben@xemacs.org>
+
+       * console-msw.c:
+       * console-msw.c (mswindows_get_console_hwnd):
+       * console-msw.c (mswindows_ensure_console_allocated):
+       * console-msw.c (mswindows_hide_console):
+       * console-msw.c (mswindows_show_console):
+       * console-msw.c (mswindows_ensure_console_buffered):
+       * console-msw.c (mswindows_output_console_string):
+       * console-msw.c (mswindows_windows9x_p):
+       * console-msw.h:
+       * device-msw.c (mswindows_get_workspace_coords):
+       * device-msw.c (mswindows_device_system_metrics):
+       * dialog-msw.c (mswindows_popup_dialog_box):
+       * event-msw.c (mswindows_wnd_proc):
+       * frame-msw.c (mswindows_size_frame_internal):
+       * menubar-msw.c (mswindows_translate_menu_or_dialog_item):
+       * menubar-msw.c (displayable_menu_item):
+       * menubar-msw.c (mswindows_char_is_accelerator):
+       * nt.c:
+       * nt.c (mswindows_sigset):
+       * nt.c (mswindows_sigrelse):
+       * nt.c (mswindows_sigpause):
+       * nt.c (mswindows_raise):
+       * nt.c (timer_proc):
+       * ntproc.c:
+       * ntproc.c (find_child_console):
+       * ntproc.c (sys_kill):
+       * print.c:
+       * print.c (std_handle_out_external):
+       * process-nt.c (find_child_console):
+       * process-nt.c (send_signal_the_95_way):
+       * process-nt.c (ensure_console_window_exists):
+       * process-nt.c (nt_create_process):
+       * syssignal.h:
+       rename msw_ to mswindows_ for consistency with general convention.
+
+       * emacs.c:
+       * dumper.c:
+       include nt.h, not syswindows.h.
+
+       * nt.c (mswindows_fstat):
+       * nt.c (mswindows_stat):
+       prefix mswindows_ instead of attempting to directly override the
+       library functions.  fix declarations.
+
+       * nt.h:
+       include syswindows.h.  move some sysdep.h stuff here.
+
+       * ntheap.h:
+       include syswindows.h, not <windows.h>.
+
+       * ntplay.c:
+       clean up headers.
+
+       * sysdep.c:
+       clean up headers.
+
+       * sysdep.c (sys_fstat):
+       * sysdep.c (sys_stat):
+       call mswindows versions when appropriate.
+
+       * sysdep.h:
+       move mswin decls to nt.h.
+
+       * syswindows.h:
+       add long comment describing appropriate use of the various windows
+       headers.
+
+2000-06-11  Ben Wing  <ben@xemacs.org>
+
+       * device-x.c: Correct doc string for sixth arg of x-get-resource.
+
+2000-06-10  Ben Wing  <ben@xemacs.org>
+
+       * Makefile.in.in (release):
+       Correction to make sure xemacs.exe always dumped when correct.
+
+       * alloca.c:
+       * balloon_help.c:
+       [[[[3]]]]: Conditionalize on actual problem, not WINDOWSNT.
+
+       * buffer.c (set_buffer_internal):
+       [[[[2]]]]: Remove HAVE_FEP code.
+
+       * buffer.c (init_initial_directory):
+       [3].
+
+       * bytecode.c:
+       [[[[4]]]]: limits.h standardly included in lisp.h; remove from
+       individual files.
+
+       * callproc.c:
+       * callproc.c (call_process_cleanup):
+       * callproc.c (Fold_call_process_internal):
+       * callproc.c (child_setup):
+       * callproc.c (getenv_internal):
+       * callproc.c (init_callproc):
+       * callproc.c (vars_of_callproc):
+       [[[[1]]]]: WINDOWSNT -> WIN32_NATIVE.
+       __CYGWIN32__ -> CYGWIN.
+       DOS_NT -> WIN32_NATIVE.
+       Remove MSDOS support/references, converting to WIN32_NATIVE
+         where correct.
+       __MINGW32__ -> MINGW.
+       Fix windows.h includes.
+       Remove bogus HAVE_NTGUI.
+
+       * config.h.in:
+       [2].
+
+       * console-msw.c:
+       mswindows_message_outputted added for use in allowing startup
+       errors on the console to be seen.
+
+       * console-msw.c (msw_ensure_console_allocated):
+       * console-msw.c (msw_output_console_string):
+       * console-msw.c (DHEADER):
+       * console-msw.c (DOPAQUE_DATA):
+       * console-msw.c (DEVENT):
+       * console-msw.c (DCONS):
+       * console-msw.c (DCONSCDR):
+       * console-msw.c (DSTRING):
+       * console-msw.c (DVECTOR):
+       * console-msw.c (DSYMBOL):
+       * console-msw.c (DSYMNAME):
+       Fix warnings.
+
+       * console-stream.c (stream_init_console):
+       Fix text/binary problems.
+
+       * device-msw.c:
+       * device-msw.c (mswindows_finish_init_device):
+       * device-msw.c (mswindows_delete_device):
+       [1].
+
+       * device.c (handle_asynch_device_change):
+       [3].
+
+       * dgif_lib.c:
+       * dgif_lib.c (DGifOpenFileName):
+       * dgif_lib.c (DGifOpenFileHandle):
+       * dgif_lib.c (DGifGetLine):
+       * dgif_lib.c (DGifGetPixel):
+       Added config.h/lisp.h, fix up includes.
+       [1].
+
+       * dired-msw.c:
+       [4].
+
+       * dired.c:
+       * dired.c (file_name_completion):
+       * dired.c (Ffile_attributes):
+       * dired.c (syms_of_dired):
+       [1].
+
+       * dumper.c:
+       * dumper.c (pdump_file_unmap):
+       * dumper.c (pdump_load):
+       [1].
+
+       * editfns.c:
+       * editfns.c (Ftemp_directory):
+       * editfns.c (user_login_name):
+       * editfns.c (Fuser_real_login_name):
+       * editfns.c (get_home_directory):
+       [1].
+
+       * elhash.c (finish_marking_weak_hash_tables):
+       [[[[5]]]]: Fix GCC warnings.
+
+       * emacs.c:
+       * emacs.c (mswindows_handle_hardware_exceptions):
+       * emacs.c (make_arg_list_1):
+       * emacs.c (main_1):
+       * emacs.c (Fkill_emacs):
+       * emacs.c (Fdump_emacs):
+       [1].
+       Fix problems with nested crashes, add long comment.
+
+       * event-Xt.c (init_event_Xt_late):
+       [1].
+
+       * event-msw.c:
+       * event-msw.c (mswindows_dde_callback):
+       * event-msw.c (mswindows_handle_sticky_modifiers):
+       * event-msw.c (mswindows_wnd_proc):
+       [1].
+       [5].
+
+       * events.c (character_to_event):
+       [1].
+
+       * fileio.c:
+       * fileio.c (Ffile_name_directory):
+       * fileio.c (Ffile_name_nondirectory):
+       * fileio.c (directory_file_name):
+       * fileio.c (Fexpand_file_name):
+       * fileio.c (Fsubstitute_in_file_name):
+       * fileio.c (Ffile_name_absolute_p):
+       * fileio.c (check_executable):
+       * fileio.c (Ffile_readable_p):
+       * fileio.c (Ffile_accessible_directory_p):
+       * fileio.c (Ffile_modes):
+       * fileio.c (Funix_sync):
+       * fileio.c (vars_of_fileio):
+       [1]. [4].
+
+       [[[[7]]]]: Move CORRECT_DIR_SEPS to s\windowsnt.h.
+
+       Expand getdefdir defn.
+       Fix bogus rename() comment.
+
+       [[[[6]]]]: Fix Windows includes w.r.t. removed nt\inc.  Attempt
+       to use standard XEmacs include files, e.g. sysfile.h, rather
+       than system-specific includes.
+
+       * fns.c:
+       * fns.c (Fsubseq):
+       [5]. [6].
+
+       * frame.c (vars_of_frame):
+       [1].
+
+       * getloadavg.c:
+       * getloadavg.c (getloadavg):
+       [1]. [6].
+       #ifdef XEMACS not defined on Cygwin.  Remove this; no need for it.
+       (We don't use it elsewhere in the code; just add a comment.)
+
+       * gif_io.c:
+       [6].
+       Add config.h.
+
        * glyphs-msw.c:
        * glyphs-msw.c (mswindows_resource_instantiate):
-       * glyphs-msw.c (xpm_to_eimage):
-       * glyphs-msw.c (convert_EImage_to_DIBitmap):
-       * glyphs-eimage.c (tiff_instantiate):
-       * glyphs-eimage.c (png_instantiate):
-       * glyphs-eimage.c (struct png_error_struct):
-       * glyphs-eimage.c (gif_memory_storage):
-       * glyphs-eimage.c:
-       * gifrlib.h:
-       * getloadavg.c (getloadavg):
-       * getloadavg.c:
-       * gdbinit:
-       * free-hook.c (log_gcpro):
-       * free-hook.c (check_malloc):
-       * free-hook.c (check_free):
-       * free-hook.c (ROUND_UP_TO_PAGE):
-       * free-hook.c:
-       * frame.h (struct frame):
-       * frame.h:
-       * frame.c (change_frame_size_1):
-       * frame.c (allocate_frame_core):
-       * frame.c:
-       * frame-x.c (x_focus_on_frame):
-       * frame-x.c (x_init_frame_2):
-       * frame-x.c (x_popup_frame):
-       * frame-x.c (xemacs_XtPopup):
-       * frame-x.c:
-       * frame-x.c (Foffix_start_drag_internal):
-       * frame-x.c (x_cde_destroy_callback):
-       * frame-x.c (x_wm_hack_wm_protocols):
-       * frame-tty.c (tty_frame_visible_p):
-       * frame-msw.c (mswindows_make_frame_invisible):
-       * frame-msw.c (mswindows_after_init_frame):
-       * frame-msw.c (mswindows_init_frame_1):
-       * fns.c (syms_of_fns):
-       * fns.c (Fbase64_decode_string):
-       * fns.c (Fnconc):
-       * fns.c (Ffillarray):
-       * fns.c (Fobject_plist):
-       * fns.c (Fget):
-       * fns.c (Fcanonicalize_lax_plist):
-       * fns.c (Fcanonicalize_plist):
-       * fns.c (Fplist_remprop):
-       * fns.c (Fplist_get):
-       * fns.c (advance_plist_pointers):
-       * fns.c (internal_plist_put):
-       * fns.c (Fnreverse):
-       * fns.c (Fremassq):
-       * fns.c (Felt):
-       * fns.c (Fsubstring):
-       * fns.c (Fbvconcat):
-       * fns.c (Flength):
-       * fns.c (length_with_bytecode_hack):
-       * fns.c (print_bit_vector):
-       * fns.c:
-       * floatfns.c (Ffloor):
-       * floatfns.c:
-       * floatfns.c (in_float_error):
-       * fileio.c (Ffile_modes):
-       * fileio.c (Fexpand_file_name):
-       * fileio.c (Fmake_temp_name):
-       * fileio.c (Ffile_name_nondirectory):
-       * fileio.c (Ffile_name_directory):
-       * file-coding.h:
-       * file-coding.c (vars_of_mule_coding):
-       * file-coding.c (convert_to_external_format):
-       * file-coding.c (encoding_marker):
-       * file-coding.c (decoding_marker):
-       * file-coding.c (Fcopy_coding_system):
-       * file-coding.c (Fmake_coding_system):
-       * file-coding.c (struct coding_system_list_closure):
-       * file-coding.c (Ffind_coding_system):
-       * file-coding.c (symbol_to_eol_type):
-       * file-coding.c:
-       * faces.h (struct face_cachel):
-       * faces.c (vars_of_faces):
-       * faces.c (face_property_was_changed):
-       * faces.c (mark_face_cachels):
-       * faces.c (temporary_faces_list):
-       * faces.c (struct face_list_closure):
-       * faces.c:
-       * extents.h (struct extent):
-       * extents.c (vars_of_extents):
-       * extents.c (struct copy_string_extents_1_arg):
-       * extents.c (add_string_extents_mapper):
-       * extents.c (Fextent_property):
-       * extents.c (Fset_extent_property):
-       * extents.c (symbol_to_glyph_layout):
-       * extents.c (properties_equal):
-       * extents.c (print_extent):
-       * extents.c (print_extent_1):
-       * extents.c (extent_in_region_p):
-       * extents.c (gap_array_make_gap):
-       * extents.c:
-       * events.h (struct Lisp_Event):
-       * events.h:
-       * events.c (Fevent_properties):
-       * events.c (format_event_object):
-       * events.c (Fmake_event):
-       * events.c (event_equal):
-       * events.c (print_event):
-       * events.c (mark_event):
-       * event-stream.c ((read-char)
-       * event-stream.c (vars_of_event_stream):
-       * event-stream.c (syms_of_event_stream):
-       * event-stream.c (Fset_recent_keys_ring_size):
-       * event-stream.c (Fsit_for):
-       * event-stream.c (Fnext_event):
-       * event-stream.c (execute_help_form):
-       * event-stream.c (maybe_kbd_translate):
-       * event-stream.c:
-       * event-msw.c (vars_of_event_mswindows):
+       [1].
+
+       * glyphs-x.c (x_native_layout_instantiate):
+       [5].
+
+       * gui-msw.c (Fmswindows_shell_execute):
+       [1].
+
+       * insdel.c:
+       [4].
+
+       * lisp.h:
+       [4]. [5].
+
+       * lread.c (locate_file_in_directory_mapper):
+       [1].
+
+       * lstream.c:
+       [4].
+
+       * mem-limits.h:
+       * mem-limits.h (get_lim_data):
+       [1].
+
+       * menubar-msw.c:
+       [4].
+
+       * ndir.h:
+       [1].
+
+       * nt.c:
+       * nt.c (getwd):
+       * nt.c (closedir):
+       * nt.c (rva_to_section):
+       * nt.c (mswindows_executable_type):
+       [1]. [6].
+       Fix closedir() defn.
+
+       * nt.h:
+       [[[[8]]]]: *_OK defs moved to sysfile.h.
+
+       * ntproc.c:
+       [6]. [7].
+
+       * objects-x.c:
+       [4].
+
+       * print.c:
+       * print.c (std_handle_out_external):
+       [1]. [4].
+
+       * process-nt.c:
+       * process-nt.c (nt_create_process):
+       [6].
+       try to fix process quoting somewhat.
+
+       * process-unix.c (unix_create_process):
+       [1].
+
+       * process.c:
+       * process.c (vars_of_process):
+       Add Vnull_device.
+
+       * process.h:
+       [1].
+
+       * realpath.c:
+       * realpath.c (xrealpath):
+       [1].
+
+       * redisplay-tty.c (init_tty_for_redisplay):
+       [3].
+
+       * redisplay.c:
+       [4]. [6].
+
+       * scrollbar-msw.c:
+       [4].
+
+       * sheap.c:
+       * sheap.c (more_static_core):
+       * sheap.c (report_sheap_usage):
+       [5]. [6].
+
+       * signal.c:
+       * signal.c (alarm_signal):
+       [1]. [6].
+
+       * sound.c:
+       [6].
+
+       * strftime.c:
+       * strftime.c (zone_name):
+       [1]. [5].
+
+       * symsinit.h (init_sunpro):
+       [1].
+
+       * syscommctrl.h:
+       commctrl.h not in Cygwin b20.1.
+
+       * sysdep.c:
+       * sysdep.c (endif):
+       * sysdep.c (sys_subshell):
+       * sysdep.c (init_baud_rate):
+       * sysdep.c (emacs_get_tty):
+       * sysdep.c (emacs_set_tty):
+       * sysdep.c (tty_init_sys_modes_on_device):
+       * sysdep.c (init_system_name):
+       * sysdep.c (sys_open):
+       * sysdep.c (interruptible_open):
+       * sysdep.c (sys_fopen):
+       * sysdep.c (sys_mkdir):
+       * sysdep.c (sys_rename):
+       * sysdep.c (get_process_times_1):
+       [1]. [6].
+
+       * sysdep.h:
+       [1].
+
+       * sysdir.h:
+       * sysdir.h (DIRENTRY_NONEMPTY):
+       [1]. [6].
+
+       * sysdll.c (dll_init):
+       * sysdll.h:
+       [1].
+
+       * sysfile.h:
+       [1]. [6]. [8].
+       added text/binary defs.
+
+       * sysfloat.h:
+       [1].
+
+       * sysproc.h:
+       * sysproc.h (EDESTADDRREQ):
+       * sysproc.h (poll_fds_for_input):
+       [1]. [6].
+
+       * syspwd.h:
+       [6].
+
+       * syssignal.h:
+       [1].
+
+       * systime.h:
+       [1]. [6].
+
+       * systty.h:
+       [1].
+
+       * syswindows.h:
+       [1].
+       Always define WIN32_LEAN_AND_MEAN.
+
+       * unexcw.c (unexec):
+       [5].
+
+       * unexec.c:
+       * unexec.c (copy_text_and_data):
+       * unexec.c (adjust_lnnoptrs):
+       [1].
+
+       * unexnt.c:
+       * unexnt.c (_start):
+       [1].
+
+2000-06-07  Ben Wing  <ben@xemacs.org>
+
+       * mule-mcpath.c, mule-mcpath.h: Removed.  Old, crufty code that
+       was used only as a model.  We've long since extracted any useful
+       logic or code out of this. (I just did an exhaustive search.)
+
+       * s\msdos.h: Removed.
+
+       * s\windows95.h: Removed.
+
+2000-06-10  Ben Wing  <ben@xemacs.org>
+
+       * s\cygwin32.h:
+       [1]. [5].
+       Don't use extern with fun defs.
+
+       * s\mingw32.h:
+       [1]. [7].
+       Remove nt\inc include.
+       Remove getdisk, getdefdir. (The former is unused, the latter
+       expanded in fileio.h.)
+
+       * s\windowsnt.h:
+       * s\windowsnt.h (WIN32_NATIVE):
+       * s\windowsnt.h (HAVE_STRCASECMP):
+       [1]. [7].
+       Add long comment about preprocessor changes.
+       Remove getdisk, getdefdir. (The former is unused, the latter
+       expanded in fileio.h.)
+
+2000-06-10  Ben Wing  <ben@xemacs.org>
+
+       * m\arm.h:
+       * m\delta.h:
+       * m\intel386.h:
+       * m\sequent.h:
+       * m\template.h:
+       * m\windowsnt.h:
+       [1].
+       Remove bogus/unused NO_SOCK_SIGIO.
+
+2000-06-08  Hrvoje Niksic  <hniksic@iskon.hr>
+
+       * lisp.h (set_string_char): Call set_string_byte with a Bufbyte,
+       not an Emchar.
+
+2000-06-04  Mike Sperber <mike@xemacs.org>
+
+       * casetab.c (set_case_table): For `set-standard-case-table',
+       actually deposit the new case tables where the rest of XEmacs can
+       see them.
+
+2000-06-05  Yoshiki Hayashi <yoshiki@xemacs.org>
+
+       * data.c (Faset): Don't cast XCHAR() to unsigned char.
+
+2000-06-05  Ben Wing  <ben@xemacs.org>
+
+       * callproc.c (child_setup): Don't do close_load_descs() under
+       MS Windows.  Put in a comment explaining why.
+
+2000-05-28  Adrian Aichner  <aichner@ecf.teradyne.com>
+
+       * process-nt.c: Reverting patch "Fixing nt_create_process for MKS
+       Toolkit shell" which breaks `kill-compilation' on Windows NT
+       native, retaining STDERR handling improvements.
+
+2000-06-01  Andreas Jaeger  <aj@suse.de>
+
+       * s/s390.h: Support for S390, based on a patch by Martin
+       Schwidefsky <schwidefsky@de.ibm.com>.
+
+2000-05-30  Andy Piper  <andy@xemacs.org>
+
+       * window.c (allocate_window):
+       (make_dummy_parent):
+       (Fset_window_configuration): use new hashtable type.
+
+       * glyphs.h (IMAGE_UNSPECIFIED_GEOMETRY):
+       (struct image_instantiator_methods):
+       (struct Lisp_Image_Instance): make instance geometry signed.
+
+       * glyphs.c (instantiate_image_instantiator):
+       (image_instance_query_geometry):
+       (image_instance_layout):
+       (image_instance_layout):
+       (query_string_geometry):
+       (text_query_geometry):
+       (image_instantiate):
+       (image_instantiate):
+       (cache_subwindow_instance_in_frame_maybe):
+       (subwindow_query_geometry): make instance geometry signed.
+
+       * glyphs-widget.c (widget_query_geometry):
+       (widget_layout):
+       (button_query_geometry):
+       (tree_view_query_geometry):
+       (tab_control_query_geometry):
+       (layout_query_geometry):
+       (layout_layout):
+       (native_layout_layout): make instance geometry signed.
+
+2000-05-29  Olivier Galibert  <galibert@pobox.com>
+
+       * lisp.h: Add Qfull_assoc symbol and WEAK_LIST_FULL_ASSOC
+       constant.
+
+       * general.c (syms_of_general): Add Qfull_assoc symbol.
+
+       * data.c (finish_marking_weak_lists): Mark full-assoc lists
+       correctly.
+       (decode_weak_list_type): Decode full-assoc type.
+       (encode_weak_list_type): Encode full-assoc type.
+       (Fmake_weak_list): Update doc string.
+
+2000-05-30  Andy Piper  <andy@xemacs.org>
+
+       * elhash.h (hash_table_weakness): new KEY_VALUE weak hashtable.
+
+       * elhash.c (print_hash_table): new KEY_VALUE weak hashtable.
+       (decode_hash_table_weakness): ditto.
+       (Fhash_table_weakness): ditto.
+       (Fhash_table_type): ditto.
+       (finish_marking_weak_hash_tables): ditto.
+       (hash_table_weakness_validate): ditto.
+       (syms_of_elhash): ditto.
+
+2000-05-28  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.34 is released.
+
+2000-05-22  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+       * redisplay.c (VERTICAL_CLIP): No longer reset when updating line
+       start cache.
+       (updating_line_start_cache): Gone.
+       (regenerate_window): Replace resetting of VERTICAL_CLIP by
+       generic code to force a minimum of 1 line laid out in the
+       CMOTION_DISP case.
+
+2000-05-22  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+       * glyphs.c (instantiate_image_instantiator): Check for initialized
+       height & width no longer special cases IMAGE_NOTHING.
+       (nothing_instantiate): Set height and width of instance.
+
+2000-05-24  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * unexelf.c (unexec): Search for ".data" section.
+       Initialize new_data2_offset from old_data_index.
+       Remove redundant check for ElfW.
+
+2000-05-23  Andy Piper  <andy@xemacs.org>
+
+       * glyphs.c (get_image_instantiator_governing_domain): allow more
+       specific domains as the governing domain rather than expecting an
+       exact match. This fixes problems with layouts.
+
+2000-05-22  Andy Piper  <andy@xemacs.org>
+
+       * redisplay-output.c (compare_runes): check for non-images
+
+       * glyphs.c (set_glyph_dirty_p): ditto.
+       (update_glyph_cachel_data): ditto.
+
+       * glyphs-widget.c (layout_post_instantiate): ditto.
+       (layout_post_instantiate): ditto.
+
+       * event-msw.c (mswindows_wnd_proc): warning removal.
+
+2000-05-12  Craig Lanning  <CraigL@DyCon.com>
+
+       * s\mingw32.h: Added #undef for CLASH_DETECTION.
+
+       * syswindows.h: Moved PBS_SMOOTH definition to syscommctrl.h.
+
+       * syscommctrl.h (PBS_SMOOTH): Moved from syswindows.h.
+
+       * nt.c (rva_to_section): mingw32 needs rva_to_section.
+       (mswindows_executable_type): mingw32 now has enough headers for
+       this to work.
+
+2000-05-20  Andy Piper  <andy@xemacs.org>
+
+       * console-msw.c (mswindows_output_last_error): ; -> ,
+
+2000-05-12  Andy Piper  <andy@xemacs.org>
+
+       * console-msw.c (FROB): compare ints with ints.
+
+2000-05-11  Andy Piper  <andy@xemacs.org>
+
+       * glyphs-x.c (x_finalize_image_instance): make minimal build
+       happy.
+
+2000-05-20  Ben Wing  <ben@xemacs.org>
+
+       * event-Xt.c:
+       * event-Xt.c (vars_of_event_Xt):
+       move modifier-keys-are-sticky to event-stream.c.
+
+       * event-msw.c:
+       * event-msw.c (mswindows_enqueue_mouse_button_event):
+       * event-msw.c (key_needs_default_processing_p):
+       * event-msw.c (XEMSW_LCONTROL):
+       * event-msw.c (mswindows_handle_sticky_modifiers):
+       * event-msw.c (FROB):
+       * event-msw.c (clear_sticky_modifiers):
+       * event-msw.c (output_modifier_keyboard_state):
+       * event-msw.c (output_alt_keyboard_state):
        * event-msw.c (mswindows_wnd_proc):
-       * event-msw.c (mswindows_need_event):
-       * event-msw.c (mswindows_drain_windows_queue):
-       * event-msw.c (mswindows_pump_outstanding_events):
+       * event-msw.c (mswindows_modifier_state):
+       * event-msw.c (emacs_mswindows_handle_magic_event):
+       implement sticky modifiers.
+
+       * event-stream.c:
+       * event-stream.c (vars_of_event_stream):
+       move modifier-keys-are-sticky here.
+
+       * lisp.h:
+       add CHECK_FUNCTION.
+
+       * rangetab.c:
+       implement map-range-table.
+
+
+2000-05-17  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * redisplay-tty.c (reset_tty_modes):
+       (tty_redisplay_shutdown): Adjust argument type to
+       tty_frame_output_end.
+
+2000-05-11  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * eval.c (Fbacktrace): Don't output a line with only right
+       parenthesis.
+
+2000-05-17  Kenji Itoh  <keit@tpj.co.jp>
+
+       * postgresql.c (Fpq_connect_poll): Replace `PS' with `polling_status'.
+       (Fpq_reset_poll): Ditto.
+
+2000-05-16  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+       * redisplay-tty.c: Replace tty_output_end with tty_frame_output_end.
+
+2000-05-16  Ben Wing  <ben@xemacs.org>
+
+       * buffer.c:
+       * buffer.c (dfc_convert_to/from_internal_format):
+       * buffer.c (reinit_vars_of_buffer):
+       Fix conversion functions to allow reentrancy.
+
+       * console-msw.c:
+       * console-msw.c (mswindows_output_last_error):
+       New fun, generally useful -- output a human-readable
+       version of GetLastError() on the console.
+
+       * console-msw.h:
+       * console-msw.h (struct mswindows_frame):
+       Changes for DeferWindowPos.  Declare mswindows_output_last_error().
+
+       * console-stream.c (stream_output_begin):
+       * console-stream.c (stream_output_end):
+       * console-stream.c (stream_output_vertical_divider):
+       * console-stream.c (stream_clear_region):
+       * console-stream.c (stream_flash):
+       * console-stream.c (console_type_create_stream):
+       Delete blank stream methods, not needed.
+
+       * console.h (struct console_methods):
+       Split begin/end methods into window and frame.
+
        * event-msw.c:
-       * event-msw.c (slurp_thread):
-       * event-msw.c (struct ntpipe_slurp_stream):
-       * event-msw.c (HANDLE_TO_USID):
-       * event-Xt.c (emacs_Xt_handle_magic_event):
-       * event-Xt.c (x_event_to_emacs_event):
-       * event-Xt.c (x_reset_modifier_mapping):
-       * event-Xt.c (x_reset_key_mapping):
-       * event-Xt.c:
-       * eval.c (syms_of_eval):
-       * eval.c (warn_when_safe):
-       * eval.c (warn_when_safe_lispobj):
-       * eval.c (Fbacktrace_frame):
-       * eval.c (Fbacktrace):
-       * eval.c (top_level_set):
-       * eval.c (unbind_to_hairy):
-       * eval.c (specbind_magic):
-       * eval.c (specbind_unwind_wasnt_local):
-       * eval.c (call2_trapping_errors):
-       * eval.c (call1_trapping_errors):
-       * eval.c (catch_them_squirmers_call2):
-       * eval.c (call0_trapping_errors):
-       * eval.c (run_hook_trapping_errors):
-       * eval.c (catch_them_squirmers_eval_in_buffer):
-       * eval.c (call4_in_buffer):
-       * eval.c (call3_in_buffer):
-       * eval.c (call2_in_buffer):
-       * eval.c (call1_in_buffer):
-       * eval.c (call0_in_buffer):
-       * eval.c (run_hook):
-       * eval.c (run_hook_with_args_in_buffer):
-       * eval.c (Fapply):
-       * eval.c (Feval):
-       * eval.c (do_autoload):
-       * eval.c (un_autoload):
-       * eval.c (Fautoload):
-       * eval.c (Finteractive_p):
-       * eval.c (Fcommand_execute):
-       * eval.c (signal_quit):
-       * eval.c (call_with_suspended_errors):
-       * eval.c (signal_error):
-       * eval.c (return_from_signal):
-       * eval.c (Fcall_with_condition_handler):
-       * eval.c (run_condition_case_handlers):
-       * eval.c (condition_case_1):
-       * eval.c (Funwind_protect):
-       * eval.c (unwind_to_catch):
-       * eval.c (internal_catch):
-       * eval.c (Fmacroexpand_internal):
-       * eval.c (Fuser_variable_p):
-       * eval.c (Fdefconst):
-       * eval.c (Fdefvar):
-       * eval.c (Ffunction):
-       * eval.c (signal_call_debugger):
-       * eval.c (call_debugger):
-       * eval.c:
+       * event-msw.c (mswindows_handle_paint):
+       * event-msw.c (output_alt_keyboard_state):
+       * event-msw.c (mswindows_wnd_proc):
+       * event-msw.c (vars_of_event_mswindows):
+       Comment about problems with ignored-expose.
+       Define mswindows-debug-events; not really implemented.
+
+       * frame-msw.c (mswindows_init_frame_1):
+       random cleanups.
+
+       * glyphs-msw.c:
+       * glyphs-msw.c (begin_defer_window_pos):
+       * glyphs-msw.c (mswindows_unmap_subwindow):
+       * glyphs-msw.c (mswindows_map_subwindow):
+       * glyphs-msw.c (mswindows_resize_subwindow):
+       Use DeferWindowPos to reduce flashing when mapping/unmapping.
+
+       * glyphs.c (make_image_instance_1):
+       Fix crash.
+
+       * gutter.c (Fredisplay_gutter_area):
+       Use new begin/end methods.
+
+       * lisp.h (Dynarr_new2):
+       New creation fun.
+
+       * redisplay-msw.c:
+       * redisplay-msw.c (mswindows_frame_output_begin):
+       * redisplay-msw.c (mswindows_frame_output_end):
+       * redisplay-msw.c (console_type_create_redisplay_mswindows):
+       New begin/end methods -- handle DeferWindowPos.
+
+       * redisplay-output.c (redisplay_move_cursor):
+       * redisplay-output.c (redraw_cursor_in_window):
+       * redisplay-output.c (redisplay_update_line):
+       * redisplay-output.c (redisplay_output_window):
+       New begin/end methods.
+
+       * redisplay-tty.c:
+       * redisplay-tty.c (tty_frame_output_begin):
+       * redisplay-tty.c (tty_frame_output_end):
+       * redisplay-tty.c (console_type_create_redisplay_tty):
+       New begin/end methods.
+
+       * redisplay-x.c:
+       * redisplay-x.c (x_window_output_begin):
+       * redisplay-x.c (x_window_output_end):
+       * redisplay-x.c (console_type_create_redisplay_x):
+       New begin/end methods.
+
+       * redisplay.c (redisplay_frame):
+       * redisplay.c (Fredisplay_echo_area):
+       New begin/end methods.
+       use MAYBE_DEVMETH for clear_frame; it may not exist.
+
+       * window.h (WINDOW_XFRAME):
+       WINDOW_XFOO macros -- get locale and decode struct pointer.
+
+
+2000-05-12  Ben Wing  <ben@xemacs.org>
+
+       * emacs.c:
+       * emacs.c (ensure_no_quitting_from_now_on):
+       * emacs.c (fatal_error_signal):
+       * emacs.c (mswindows_handle_hardware_exceptions):
        * emacs.c (main):
-       * emacs.c (sort_args):
-       * emacs.c (main_1):
-       * elhash.h:
-       * elhash.c:
-       * editfns.c (Fencode_time):
-       * editfns.c (Fdecode_time):
-       * editfns.c (Fuser_full_name):
-       * editfns.c:
-       * editfns.c (save_excursion_restore):
-       * ecrt0.c:
-       * dynarr.c:
-       * doprnt.c (emacs_doprnt_1):
-       * doc.c (verify_doc_mapper):
-       * doc.c (Fsnarf_documentation):
-       * doc.c (Fdocumentation):
-       * dll.c:
-       * dired.c (user_name_completion):
-       * dired.c (Fdirectory_files):
-       * dialog-x.c:
-       * dialog-msw.c:
-       * dgif_lib.c (FreeSavedImages):
-       * dgif_lib.c (DGifGetImageDesc):
+       * emacs.c (Fkill_emacs):
+       * emacs.c (shut_down_emacs):
+       * emacs.c (assert_failed):
+       various improvements in fatal error handling.
+
+       * eval.c:
+       move preparing_for_armageddon to emacs.c.
+
+       * lisp.h:
+       declare fatal_error_in_progress.
+
+       * print.c:
+       * print.c (std_handle_out_external):
+       * print.c (std_handle_out_va):
+       * print.c (stderr_out):
+       * print.c (stdout_out):
+       use console under mswin when no standard output.
+       don't do code conversion during fatal error.
+
+       * scrollbar.c (Fscrollbar_page_up):
+       * scrollbar.c (Fscrollbar_page_down):
+       fix missing else.  reindent.
+
+2000-05-11  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+       Emergency fix.
+
+       * glyphs.h (GLYPH_CACHEL_DESCENT):
+       (GLYPH_CACHEL_DESCENT):
+       (GLYPH_CACHEL_DESCENT):
+       * glyphs.h (GLYPH_CACHEL_ASCENT): Match parameters to variables
+       used in case these are inline functions.
+       Use more absurd values to error check.
+
+       include window.h for error check functions.
+
+2000-05-11  Ben Wing  <ben@xemacs.org>
+
+       * cmdloop.c (Freally_early_error_handler):
+       Display message box under windows; otherwise, message will disappear
+       before it can be viewed.
+
+       * console-msw.c:
+       * console-msw.c (Fmswindows_message_box):
+       * console-msw.c (FROB):
+       * console-msw.c (syms_of_console_mswindows):
+       Define new fun `mswindows-message-box'.
+       #### I will merge this into `popup-dialog-box'; just give me
+       a bit of time.
+
+       * general.c:
+       * general.c (syms_of_general):
+       Some new symbols used in `mswindows-message-box'.
+
+       * glyphs.c:
+       * glyphs.c (Fset_image_instance_property):
+       put warning in this fun.
+
+       * glyphs.h:
+       * glyphs.h (GLYPH_CACHEL_WIDTH):
+       * glyphs.h (GLYPH_CACHEL_ASCENT):
+       * glyphs.h (GLYPH_CACHEL):
+       * glyphs.h (GLYPH_CACHEL_GLYPH):
+       define error-checking versions to try to catch a bug i've seen --
+       redisplay gets in an infinite loop because the glyph width of the
+       continuation glyph is 65535.
+
+       * lisp.h:
+       Extern message-box stuff.
+
+       * window.c (allocate_window):
+       * window.c (make_dummy_parent):
+       * window.c (Fset_window_configuration):
+       Use EQUAL not EQ for subwindow caches to make them work a bit
+       better. (Something is still very broken.)
+
+
+2000-05-11  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * glyphs.c (image_instantiate): Suppress gcc warnings.
+       (Fmake_image_instance): Fix doc string.
+       * specifier.c (Fmake_specifier): Ditto.
+
+2000-05-02  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * paths.h.in (PATH_LOCK): Removed.
+       * config.h.in (LOCKDIR_USER_DEFINED): Removed.
+       * emacs.c (complex_vars_of_emacs): Remove configure-lock-directory.
+
+2000-05-08  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * fns.c (Ffeaturep): Update e-mail address in doc-string.
+       Document (featurep '(and xemacs 21.02)).
+
+2000-05-09  Ben Wing  <ben@xemacs.org>
+
+       * buffer.c (complex_vars_of_buffer):
+       update modeline-format doc.
+
        * device.h:
-       * device.h (struct device):
-       * device.c (Fselect_device):
-       * device.c (allocate_device):
-       * device.c:
-       * device-x.c (Fx_keysym_on_keyboard_p):
-       * device-x.c (Fx_valid_keysym_name_p):
-       * device-x.c (x_IO_error_handler):
-       * device-x.c (x_delete_device):
-       * device-x.c (x_finish_init_device):
-       * device-x.c (x_init_device):
-       * device-x.c:
-       * device-msw.c (mswindows_init_device):
-       * dbxrc:
-       * database.c (vars_of_database):
-       * database.c (Fput_database):
-       * database.c (Fopen_database):
-       * database.c (berkdb_remove):
-       * database.c (berkdb_put):
-       * database.c (Fdatabasep):
-       * database.c (print_database):
-       * database.c:
-       * data.c (vars_of_data):
-       * data.c (syms_of_data):
-       * data.c (init_errors_once_early):
-       * data.c (prune_weak_lists):
-       * data.c (finish_marking_weak_lists):
-       * data.c (print_weak_list):
-       * data.c (Fmod):
-       * data.c (Fstring_to_number):
-       * data.c (Fnumber_to_string):
-       * data.c (Findirect_function):
-       * data.c (Fsetcdr):
-       * data.c (Ffloatp):
-       * data.c (Fsubr_interactive):
-       * data.c (Farrayp):
-       * data.c (Fkeywordp):
-       * data.c (Fnull):
-       * data.c:
-       * console.h (CONSOLE_NAME):
-       * console.h:
-       * console.c (vars_of_console):
-       * console.c (Fselect_console):
-       * console.c:
-       * console-x.h (DEVICE_X_COLORMAP):
-       * console-x.h (struct x_device):
-       * console-x.c (x_device_to_console_connection):
-       * console-tty.h (CONSOLE_TTY_FINAL_CURSOR_Y):
-       * console-tty.c (tty_init_console):
-       * console-tty.c:
-       * console-msw.h (struct mswindows_frame):
-       * conslots.h:
-       * config.h.in:
-       * cmds.c (internal_self_insert):
-       * cmds.c (Fforward_line):
-       * cmds.c (Fforward_char):
-       * cmds.c:
-       * cmdloop.c:
-       * chartab.c (mark_char_table_entry):
-       * chartab.c:
-       * casefiddle.c (casify_word):
-       * callproc.c (child_setup):
-       * callproc.c (Fcall_process_internal):
-       * callproc.c:
-       * callint.c (Fcall_interactively):
-       * bytecode.h:
-       * bytecode.c (execute_rare_opcode):
-       * bytecode.c (execute_optimized_program):
-       * bytecode.c:
-       * bufslots.h:
-       * buffer.h (BUFFER_REALLOC):
-       * buffer.h (GET_CHARPTR_INT_DATA_ALLOCA):
-       * buffer.h (GET_CHARPTR_EXT_DATA_ALLOCA):
+       comment about how DFW_DEVICE should be merged with DOMAIN_DEVICE.
+
+       * emacs.c:
+       timeline of all released versions of Emacs, for use in creating
+       authorship comments and in synching up.
+
+       * glyphs-widget.c (image_instantiator_buttons):
+       * glyphs-widget.c (image_instantiator_edit_fields):
+       * glyphs-widget.c (image_instantiator_combo_box):
+       * glyphs-widget.c (image_instantiator_scrollbar):
+       * glyphs-widget.c (image_instantiator_progress_guage):
+       * glyphs-widget.c (image_instantiator_tree_view):
+       * glyphs-widget.c (image_instantiator_tab_control):
+       * glyphs-widget.c (image_instantiator_labels):
+       * glyphs-widget.c (image_instantiator_layout):
+       * glyphs-widget.c (image_instantiator_native_layout):
+       rename decode_domain method to governing_domain.
+
+       * glyphs.c:
+       * glyphs.c (Fvalid_image_instantiator_format_p): doc update.
+       * glyphs.c (add_entry_to_device_ii_format_list):
+       make sure we don't put an entry more than once into the list.
+       * glyphs.c (check_instance_cache_mapper):
+       *************************************************************
+       allow for nil.  THIS SHOULD FIX A REAL CRASH THAT MANY PEOPLE
+       HAVE BEEN GETTING.
+       *************************************************************
+       * glyphs.c (get_image_instantiator_governing_domain):
+       clean up, expand on new concept of governing domain.
+       * glyphs.c (instantiate_image_instantiator):
+       * glyphs.c (allocate_image_instance):
+       use governing_domain instead of cache_domain in naming.
+       * glyphs.c (Fvalid_image_instance_type_p): fix docs.
+       * glyphs.c (make_image_instance_1):
+       * glyphs.c (Fmake_image_instance):
+       allow for any domain (not just device), and process the
+       governing domain correctly.  very big doc fix.
+       * glyphs.c (Fimage_instance_domain):
+       new primitive, to retrieve the governing domain of an image instance.
+       * glyphs.c (image_instantiate):
+       use new governing_domain stuff.  this fixes a crash you could get
+       by instantiating certain widget glyphs in frame locales. (should
+       signal an error instead of crashing.)
+       * glyphs.c (Fimage_specifier_p): move doc to make-image-specifier.
+       * glyphs.c (Fglyphp): clean up doc.
+       * glyphs.c (subwindow_governing_domain): renamed from *_decode_domain.
+       * glyphs.c (syms_of_glyphs):
+       declare Fimage_instance_domain, remove unused Qlayout_image_instance_p.
+       * glyphs.c (image_instantiator_format_create): add some comments about
+       bogus code.
+       * glyphs.c (specifier_vars_of_glyphs): totally rewrite the doc string
+       for current-display-table. (Apparently Hrjove implemented in 1998 a
+       design I wrote up in 1996, but didn't update the doc string.)
+
+       * glyphs.h: clean up a doc string.
+       * glyphs.h (governing_domain):
+       * glyphs.h (struct image_instantiator_methods):
+       changes for governing_domain stuff.
+
+       * gutter.c:
+       * gutter.c (Fgutter_specifier_p):
+       * gutter.c (Fgutter_size_specifier_p):
+       * gutter.c (Fgutter_visible_specifier_p):
+       * objects.c:
+       * objects.c (Fcolor_specifier_p):
+       * objects.c (Ffont_specifier_p):
+       * objects.c (Fface_boolean_specifier_p):
+       doc strings moved to make-*-specifier.
+
+       * redisplay.c (add_disp_table_entry_runes_1):
+       * redisplay.c (generate_fstring_runes):
+       * redisplay.c (screen):
+       add random comments and doc strings.
+
+       * specifier.c:
+       * specifier.c (Fmake_specifier):
+       major overhaul of this doc string.
+
+       * specifier.c (Fvalid_specifier_domain_p):
+       comment about the bogosity of image instances being domains.
+       * specifier.c (decode_domain):
+       now non-static, used in glyphs.c.
+       * specifier.c (specifier_instance):
+       comment about the bogosity of image instances being domains.
+       * specifier.c (Fgeneric_specifier_p):
+       move doc string to make-generic-specifier.
+       * specifier.c (VALID_SINGLE_DISPTABLE_INSTANTIATOR_P):
+       rebackslashify.
+
+       * specifier.h:
+       * specifier.h (DOMAIN_FRAME):
+       * specifier.h (DOMAIN_LIVE_P):
+       * specifier.h (DOMAIN_XDEVICE):
+       rebackslashify.
+       add comments about problems with these macros.
+       prototype for decode_domain.
+
+       * toolbar.c:
+       * toolbar.c (Ftoolbar_specifier_p):
+       move doc string to `make-toolbar-specifier'.
+
+       * window.c (window_unmap_subwindows_cache_mapper):
+       *************************************************************
+       allow for nil.  THIS SHOULD FIX A REAL CRASH THAT MANY PEOPLE
+       HAVE BEEN GETTING.
+       *************************************************************
+
+2000-05-09  Andy Piper  <andy@xemacs.org>
+
+       * glyphs.h: declare reset_frame_subwindow_instance_cache.
+
+       * window.c (Fset_window_configuration): reset the frame subwindow
+       cache and re-initialize the window subwindow caches.
+
+       * glyphs.c (reset_frame_subwindow_instance_cache): new function.
+
+2000-05-09  Ben Wing  <ben@xemacs.org>
+
+       * ntheap.c (recreate_heap): Changed unknown (VC6 only?) SIZE_T to
+       DWORD.
+
+2000-04-26  Mike Woolley  <mike@bulsara.com>
+
+       * ntheap.c: Changed recreate_heap to limit the amount reserved
+       for the heap to that which is actually available. Also now
+       displays a message box (with some dignostics) in the event that
+       it still can't start.
+
+2000-05-07  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+       * callproc.c (Fold_call_process_internal): GCPRO path
+
+2000-05-08  Jan Vroonhof  <jan@xemacs.org>
+
+       Patch by Bill Perry.
+
+       * scrollbar.c (Fscrollbar_page_up): Conditionalize on type of call
+       back data instead of #ifdef.
+       (Fscrollbar_page_down): ditto.
+
+2000-05-07  Ben Wing  <ben@xemacs.org>
+
        * buffer.h:
-       * buffer.h (MAP_INDIRECT_BUFFERS):
-       * buffer.h (CHECK_LIVE_BUFFER):
-       * buffer.c (init_initial_directory):
-       * buffer.c (complex_vars_of_buffer):
-       * buffer.c (vars_of_buffer):
-       * buffer.c (finish_init_buffer):
-       * buffer.c (Fget_file_buffer):
-       * buffer.c (Fbuffer_list):
-       * buffer.c (mark_buffer):
-       * balloon_help.c (balloon_help_move_to_pointer):
-       * balloon_help.c (show_help):
-       * balloon_help.c:
-       * backtrace.h:
-       * alloc.c (garbage_collect_1):
-       * alloc.c (sweep_strings):
-       * alloc.c (sweep_compiled_functions):
-       * alloc.c (sweep_bit_vectors_1):
-       * alloc.c (sweep_vectors_1):
-       * alloc.c (sweep_lcrecords_1):
-       * alloc.c (tick_lcrecord_stats):
-       * alloc.c (pure_string_sizeof):
-       * alloc.c (mark_conses_in_list):
-       * alloc.c (mark_object):
-       * alloc.c (report_pure_usage):
-       * alloc.c (make_pure_float):
-       * alloc.c (make_pure_string):
-       * alloc.c (free_managed_lcrecord):
-       * alloc.c (mark_string):
-       * alloc.c (noseeum_make_marker):
-       * alloc.c (allocate_event):
-       * alloc.c (Fbit_vector):
-       * alloc.c (Fvector):
-       * alloc.c (make_float):
-       * alloc.c (Fmake_list):
-       * alloc.c (Flist):
-       * alloc.c (FREE_FIXED_TYPE_WHEN_NOT_IN_GC):
-       * alloc.c (PUT_FIXED_TYPE_ON_FREE_LIST):
-       * alloc.c (DECLARE_FIXED_TYPE_ALLOC):
-       * alloc.c (dbg_constants):
-       * alloc.c (gc_record_type_p):
-       * alloc.c (free_lcrecord):
-       * alloc.c (xmalloc):
-       * alloc.c (NOSEEUM_INCREMENT_CONS_COUNTER):
-       * abbrev.c:
-       * Makefile.in.in (mostlyclean):
-       * Makefile.in.in (external_client_xlib_objs_nonshared):
-       * Makefile.in.in (temacs_link_args):
-       * Makefile.in.in (release):
-       * Makefile.in.in (dnd_objs):
-       * Makefile.in.in (objs):
-       * Makefile.in.in (PROGNAME):
-       * EmacsShell.c: cast strings to (XtPointer)
-       * EmacsFrame.c: cast strings to (XtPointer)
-       - mega patch
-       - rewrite basic lisp functions for speed
-       - rewrite bytecode interpreter for speed
-       - rewrite list looping constructs for speed and safety using
-         tortoise/hare.
-       - use size_t where appropriate.
-       - new hashtable implementation
-       - cleanup implementation of opaques
-       - opaques can now be purecopy'ed
-       - move some cl functionality into C for speed.
-       - remove last remaining VMS support
-       - spelling fixes
-       - improve gdb/dbx debugger support
-       - move pure.c back into alloc.c for performance
-       - enable report_pure_usage() if --memory-usage-stats
-       - remove remnants of Energize support (EMACS_BTL, cadillac...)
-       - don't use symbols with leading `_' or embedded `__'
-       - globally cleanup duplicated semicolons `;;'
-       - I give in on %p vs %lx - we use printf("%lx",(long) p)
-         globally.
-       - globally replace O_NDELAY with O_NONBLOCK.
-       - globally replace CDISABLE with _POSIX_VDISABLE.
-       - use O_RDONLY and O_RDWR instead of magic `0' and `2'.
-       - define (and maybe use!) STDERR_FILENO and friends.
-       - add support for macros defined in C
-       - `when', `unless', `not' and `defalias' now defined in C,
-         so that they are universally available.
-       - rename defvar_mumble to defvar_magic
-       - rename RETURN__ to RETURN_SANS_WARNINGS
-       - use consistent style of initial caps in error messages
-       - implement last, butlast, nbutlast, copy-list in C.
-       - provide typedefs for all struct Lisp_foo types
-       - Lisp_Objects must be initialized to Qnil rather than 0.
-       - make sure XEmacs runs (slowly) with always_gc == 1;
-       - fast and safe LOOP_* macros
-       - change calls to XSETOBJ to XSETFOO
-       - replace calls to XSETINT by make_int()
-       - plug up memory leaks
-       - use style markobj (foo), not silly ((markobj) (foo))
-       - use XFLOAT_DATA (obj) instead of float_data (XFLOAT (obj))
-
-1998-12-02  P. E. Jareth Hein  <jareth@camelot.co.jp>
+       Kludge for defining Qmswindows_tstr.
+
+       * nt.c:
+       * nt.c (open_input_file):
+       * nt.c (open_output_file):
+       * nt.c (rva_to_section):
+       * nt.c (mswindows_executable_type):
+       Move all memory-mapped-file routines here (some were in unexnt.c,
+       which is bad because they are used by process-nt.c, and unexnt
+       won't be around when portable dumping).  Synched the above routines
+       with FSF 20.6.
+
+       * nt.h:
+       Removed ifdef'd out bogus code.
+       Fixed some prototypes.
+
+       * nt.h (file_data):
+       * nt.h (OFFSET_TO_RVA):
+       * nt.h (RVA_TO_OFFSET):
+       * nt.h (RVA_TO_PTR):
+       Moved the memory-mapped-file structures, macros and prototypes
+       here, to parallel nt.c.  ntheap.h should really be removed
+       entirely, and it's a non-portable-dumper specific file.
+
+       * ntheap.h (round_to_next):
+       Moved the memory-mapped-file structures, macros and prototypes
+       to nt.h.
+
+       * ntproc.c (compare_env):
+       Moved rva_to_section and mswindows_executable_type to nt.c.
+       Moved compare_env to process-nt.c.
+       ntproc.c will die, one day.
 
-       * unexec.c: Changed a #ifndef statement to fix XEmacs on BSDI 3.0
+       * ntproc.c (sys_spawnve):
+       Account for win32_ -> mswindows_.
 
-1998-11-28  SL Baur  <steve@altair.xemacs.org>
+       * process-nt.c:
+       * process-nt.c (struct nt_process_data):
+       * process-nt.c (ensure_console_window_exists):
+       * process-nt.c (compare_env):
+       * process-nt.c (nt_create_process):
+       * process-nt.c (nt_kill_process_by_pid):
+       * process-nt.c (syms_of_process_nt):
+       * process-nt.c (vars_of_process_nt):
+       Introduce variable `mswindows-quote-process-args', from FSF 20.6.
+       Copy argument quoting code from FSF 20.6 (with appropriate Mule-ization
+       changes).  Eliminate our old `nt-quote-process-args' mechanism.
+       Synch up nt_create_process with FSF 20.6 sys_spawnve.
+       Move compare_env here from ntproc.c.
+
+       * process.c (Fprocess_send_region):
+       Takes an optional fourth argument, BUFFER, which should fix some
+       problems with call-process.
+
+       * syscommctrl.h:
+       Move ICC_BAR_CLASSES here from syswindows.h, to avoid a warning.
+
+       * syswindows.h:
+       Move ICC_BAR_CLASSES to syscommctrl.h.
+       Add preliminary macros for MSWindows/Mule.  More to come.
 
-       * XEmacs 21.2-beta4 is released.
+       * unexnt.c:
+       * unexnt.c (unexec):
+       open_output_file moved to nt.c.
 
-1998-11-27  SL Baur  <steve@altair.xemacs.org>
 
-       * mule-charset.c (complex_vars_of_mule_charset): Fix graphic
-       property in control-1 charset.
-       From Julian Bradfield <jcb@daimi.au.dk>
+2000-05-05  Andy Piper  <andy@xemacs.org>
 
-1998-11-26  Jan Vroonhof  <vroonhof@math.ethz.ch>
+       * window.c (window_unmap_subwindows_cache_mapper): remove the dead
+       instance from the frame cache also since GC may catch up too late
+       to make frame deletion sane.
 
-       * gui-x.c (button_item_to_widget_value): Ignore :key-sequence
-       keyword.
-       Add stub for :label.
+2000-05-04  Andy Piper  <andy@xemacs.org>
 
-       * gui.c (gui_item_add_keyval_pair): ditto.
+       * glyphs-x.c (x_widget_instantiate): gcpro widget callbacks.
+       (x_finalize_image_instance): ungcpro on deletion.
 
-       * menubar-x.c (menu_item_descriptor_to_widget_value_1): Ignore
-       :key-sequence keyword.
-       Add stub for:label.
-       Support :active for submenus like the Windows code and FSF Emacs.
+       * glyphs.c (image_instantiator_format_create): give pointers a
+       query geometry method so that the geometry is at least set.
 
-1998-11-27  Hrvoje Niksic  <hniksic@srce.hr>
+       * glyphs-x.c (image_instantiator_format_create_glyphs_x): only
+       initialize layouts if using widgets.
 
-       * dired.c (make_directory_hash_table): make_string() is OK because
-       readdir() Mule-encapsulates.
+2000-05-03  Andy Piper  <andy@xemacs.org>
 
-1998-11-26  Hrvoje Niksic  <hniksic@srce.hr>
+       * nt.c: remove bogus reference to sysmmsystem.h
 
-       * fns.c (Fbase64_encode_string): Fix docstring.
-       (Fbase64_decode_string): Ditto.
+       * gui-x.c (popup_selection_callback): fix no selection abort.
 
-1998-11-26  Hrvoje Niksic  <hniksic@srce.hr>
+2000-05-02  Andy Piper  <andy@xemacs.org>
 
-       * editfns.c (Ftranslate_region): Use
-       convert_bufbyte_string_into_emchar_string().
+       * glyphs-msw.c (mswindows_update_widget): cope with nil text.
+       (mswindows_widget_instantiate): ditto.
 
-1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
+       * glyphs-widget.c (initialize_widget_image_instance): initialize
+       children correctly.
+       (widget_instantiate): cope with children and items in the same
+       instance.
 
-       * editfns.c (Ftranslate_region): Accept vectors and char-tables as
-       well as strings.
-       (Ftranslate_region): Turn table into an array of Emchars for
-       larger regions.
+       * glyphs.c (mark_image_instance): cope with children as a first
+       class member.
+       (image_instance_equal): ditto.
+       (image_instance_hash): ditto.
+       (image_instance_changed): ditto.
+
+2000-04-30  Andy Piper  <andy@xemacs.org>
+
+       * glyphs.c (subwindow_query_geometry): new function. Return some
+       defaults.
+       (subwindow_instantiate): don't assign dimensions if none have been
+       given.
+       (image_instantiator_format_create): add subwindow_query_geometry.
+       (print_image_instance): cope with layouts as widgets.
+
+2000-04-29  Andy Piper  <andy@xemacs.org>
+
+       * frame.c (delete_frame_internal): call
+       free_frame_subwindow_instance_cache so that all subwindows are
+       finalized before their parent.
+       (mark_frame): remove subwindow_cachels.
+       (Fmake_frame): remove subwindow_cachel manipulation.
+       (allocate_frame_core): subwindow_instance_cache is a weak list.
+       (delete_frame_internal): set subwindow_instance_cache to nil.
+
+       * glyphs-msw.c (mswindows_finalize_image_instance): make double
+       finalization safe.
+       (mswindows_finalize_image_instance): use the device
+       not the domain as the domain may have died already.
+
+       * glyphs-x.c (x_finalize_image_instance): ditto.
+       (x_subwindow_instantiate): remove SUBWINDOW_WIDTH &
+       HEIGHT.
+
+       * redisplay-output.c (redisplay_unmap_subwindows): update for
+       subwindow instance cache as a weak list.
+       (redisplay_unmap_subwindows_maybe): ditto.
+       (redisplay_unmap_subwindows_except_us): ditto.
+
+       * glyphs.c (unmap_subwindow): error checking will check the domain
+       so don't deal with it here. Don't use cachels anymore.
+       (map_subwindow): ditto.
+       (update_subwindow_cachel_data): remove old accessor names.
+       (subwindow_instantiate): remove SUBWINDOW_WIDTH & HEIGHT.
+       (Fresize_subwindow): don't update cachel.
+       (mark_subwindow_cachels):
+       (update_subwindow_cachel_data):
+       (add_subwindow_cachel):
+       (get_subwindow_cachel_index):
+       (update_subwindow_cachel):
+       (reset_subwindow_cachels):
+       (mark_subwindow_cachels_as_not_updated): deleted.
+       (cache_subwindow_instance_in_frame_maybe): new function. Add a
+       subwindow instance to the frame cache.
+       (find_matching_subwindow): update for subwindow instance cache as
+       a weak list.
+       (update_widget_instances): ditto.
+       (image_instance_type_to_mask):inlined.
+       (free_frame_subwindow_instance_cache): new function. finalize all
+       subwindows that are instantiated.
+
+       * glyphs.h (struct Lisp_Image_Instance): add display_data instead
+       of cachel information.
+       (IMAGE_INSTANCE_DISPLAY_X):
+       (IMAGE_INSTANCE_DISPLAY_Y):
+       (IMAGE_INSTANCE_DISPLAY_WIDTH):
+       (IMAGE_INSTANCE_DISPLAY_HEIGHT):
+       (XIMAGE_INSTANCE_DISPLAY_X):
+       (XIMAGE_INSTANCE_DISPLAY_Y):
+       (XIMAGE_INSTANCE_DISPLAY_WIDTH):
+       (XIMAGE_INSTANCE_DISPLAY_HEIGHT): new accessors.
+       remove subwindow_cachel structure and function references.
+       (image_instance_type_to_mask): inline from glyphs.c
+
+       * redisplay.c (redisplay_frame): remove subwindow_cachel
+       references.
+
+       * frame.h (struct frame): remove subwindow_cachels.
+       (FRAME_SUBWINDOW_CACHE): access subwindow_instance_cache.
+
+       * frameslots.h: add subwindow_instance_cache.
+
+       * window.c (replace_window): check subwindow cache of replacement.
+       (window_unmap_subwindows_cache_mapper):
+       (window_unmap_subwindows): new functions. Unmap all subwindows
+       cached on this window.
+       (mark_window_as_deleted): unmap all subwindows.
+
+2000-04-27  Andy Piper  <andy@xemacs.org>
+
+       * glyphs.h (IIFORMAT_METH_OR_GIVEN): cope with null meths.
+
+       * glyphs-widget.c (widget_layout): return something.
+       (layout_layout): return something. Fail if not initialized.
+       (layout_query_geometry): ditto.
+       (image_instantiator_native_layout): new function. Initialized the
+       native layout type.
+       (widget_instantiate): don't do layout stuff here.
+
+       * glyphs.c (instantiate_image_instantiator): reorded calling or
+       instantiate and post_instantiate with layout in between.
+       (image_instance_layout): be more selective about deciding whether
+       the layout has been done or not.
+
+       * glyphs.h (struct image_instantiator_methods): return a value
+       from layout_method.
+
+2000-04-26  Andy Piper  <andy@xemacs.org>
+
+       * glyphs.c (allocate_image_instance): make initial width and
+       height unspecified. Set initialized to 0.
+
+       * syscommctrl.h new file. Encapsulates commctrl.h.
+
+       * syswindows.h new file. Encapsulates windows.h.
+
+       * ntplay.c: use new syswindows.h and syscommctrl.h header.
+       * nt.c: ditto.
+       * console-msw.h: ditto.
+
+       * redisplay-tty.c (tty_output_display_block): remove layout references.
+
+       * glyphs-msw.c (mswindows_widget_instantiate): use the domain
+       window handle rather than just the frame.
+
+       * glyphs.c (mark_image_instance): remove layout references.
+       (print_image_instance): ditto.
+       (image_instance_equal): ditto.
+       (image_instance_hash): ditto.
+       (decode_image_instance_type): ditto.
+       (encode_image_instance_type): ditto.
+       (image_instantiate): ditto.
+       (allocate_glyph): ditto.
+       (Fimage_instance_height): ditto.
+       (Fimage_instance_width): ditto.
+       (update_subwindow): ditto.
+
+       * redisplay-x.c (x_output_display_block): recode for layouts as
+       widgets.
+
+       * redisplay-output.c (redisplay_output_layout): recode for layouts
+       as widgets.
+       (compare_runes): remove layout references.
+
+       * redisplay-msw.c (mswindows_output_display_block): recode for
+       layouts as widgets.
+
+       * glyphs-widget.c (image_instantiator_layout): remove
+       layout_possible_dest_types.
+       (layout_possible_dest_types): deleted.
+
+       * glyphs.h (image_instance_type): remove layout references.
+       (struct Lisp_Image_Instance): ditto. Add initialized flag.
+       (IMAGE_INSTANCE_INITIALIZED): new accessor.
+       (XIMAGE_INSTANCE_INITIALIZED): ditto.
+
+2000-04-25  Andy Piper  <andy@xemacs.org>
+
+       * glyphs-widget.c (image_instantiator_buttons):
+       (image_instantiator_edit_fields):
+       (image_instantiator_combo_box):
+       (image_instantiator_scrollbar):
+       (image_instantiator_progress_guage):
+       (image_instantiator_tree_view):
+       (image_instantiator_tab_control):
+       (image_instantiator_labels):
+       (image_instantiator_layout): call default post_instantiate method.
+       (widget_post_instantiate): new function. Simply lays out the
+       widgets.
+
+       * glyphs.h (struct image_instantiator_methods): add
+       post_instantiate method.
+
+       * glyphs.c (instantiate_image_instantiator): add post_instantiate
+       method calls.
+
+2000-04-23  Andy Piper  <andy@xemacs.org>
+
+       * glyphs.h (struct image_instantiator_methods): add
+       decode_domain_method.
+       (struct Lisp_Image_Instance): remove subwindow frame - it can be
+       derived from the domain.
+       (IMAGE_INSTANCE_FRAME): new accessor.
+       (XIMAGE_INSTANCE_FRAME): ditto.
+
+       * glyphs.c (print_image_instance): use IMAGE_INSTANCE_FRAME
+       instead of _SUBWINDOW_FRAME.
+       (finalize_image_instance): ditto.
+       (Fimage_instance_foreground): ditto.
+       (Fimage_instance_background): ditto.
+       (image_instantiate): ditto.
+       (update_subwindow_cachel): ditto.
+       (update_subwindow): ditto.
+       (unmap_subwindow): ditto.
+       (map_subwindow): ditto
+       (subwindow_instantiate): ditto.
+       * glyphs-msw.c (mswindows_update_widget): ditto.
+       (mswindows_progress_gauge_instantiate): ditto.
+       (mswindows_tab_control_update): ditto.
+       * glyphs-x.c (x_update_widget): ditto.
+       (x_widget_instantiate): ditto.
+       (x_tab_control_instantiate): ditto.
+       (x_tab_control_update): ditto.
+       * event-msw.c (mswindows_wnd_proc): ditto
+
+       * glyphs-widget.c (image_instantiator_layout): use
+       subwindow_decode_domain.
+       (image_instantiator_buttons): ditto.
+       (image_instantiator_edit_fields): ditto.
+       (image_instantiator_combo_box): ditto.
+       (image_instantiator_scrollbar): ditto.
+       (image_instantiator_progress_guage): ditto.
+       (image_instantiator_tree_view): ditto.
+       (image_instantiator_tab_control): ditto.
+       (image_instantiator_labels): ditto.
+       (image_instantiator_layout): ditto.
+
+       * glyphs.c: add instance error checking to many functions.
+       (instantiate_image_instantiator): decode device from cache_domain.
+       (image_instantiate): partially rewrite by using
+       decode_image_instantiator_domain to determine what domain the
+       instance needs to be cached in.
+       (decode_image_instantiator_domain): new function. Determine what
+       domain the image needs to be cached in.
+       (check_window_subwindow_cache): new error checking function.
+       (check_instance_cache_mapper): ditto.
+       (check_image_instance_structure): ditto.
+       (subwindow_decode_domain): new function. Encodes a window as a
+       subwindow's cache domain.
+       (image_instantiator_format_create): use it for text and
+       subwindows.
+
+2000-04-21  Andy Piper  <andy@xemacs.org>
+
+       * glyphs.c (image_instance_device): new function.
+       (image_instance_frame): new function.
+       (image_instance_window): new function.
+       (image_instance_live_p): new function.
+
+       * window.c (mark_window_as_deleted): reset the subwindow_instance_
+       cache to nil.
+
+       * glyphs.h (struct Lisp_Image_Instance): device->domain.
+       (IMAGE_INSTANCE_DOMAIN): new accessor.
+       (XIMAGE_INSTANCE_DOMAIN): ditto.
+
+       * glyphs-x.c (x_finalize_image_instance): device->domain.
+
+       * glyphs-msw.c (init_image_instance_geometry): device->domain.
+       (mswindows_finalize_image_instance): ditto.
+
+       * glyphs-eimage.c (jpeg_instantiate): device->domain.
+       (gif_instantiate): ditto.
+       (png_instantiate): ditto.
+       (tiff_instantiate): ditto.
+
+       * glyphs.c (instantiate_image_instantiator): use domain rather
+       than device.
+       (mark_image_instance): device -> domain.
+       (print_image_instance): ditto.
+       (finalize_image_instance): ditto.
+       (image_instance_equal): ditto.
+       (allocate_image_instance): ditto.
+       (Fcolorize_image_instance): ditto.
+       (query_string_geometry): ditto.
+       (image_instantiate): ditto
+       (query_string_font): ditto.
+       (image_instantiate): ditto.
+       (update_subwindow): ditto.
+       (unmap_subwindow): ditto.
+       (map_subwindow): ditto.
+       (subwindow_instantiate): ditto.
 
-1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
+       * specifier.h (DOMAIN_DEVICE): new, semantically correct, decoder.
+       (DOMAIN_FRAME): ditto.
+       (DOMAIN_WINDOW): ditto.
+       (DOMAIN_LIVE_P): ditto.
+       (XDOMAIN_DEVICE): ditto.
+       (XDOMAIN_FRAME): ditto.
+       (XDOMAIN_WINDOW): ditto.
 
-       * chartab.c (Freset_char_table): Fix wrong placement of #endif.
+       * specifier.c (Fvalid_specifier_domain_p): add image instances as
+       a valid specifier domain.
 
-1998-11-24  Hrvoje Niksic  <hniksic@srce.hr>
+2000-04-19  Andy Piper  <andy@xemacs.org>
 
-       * chartab.c (Freset_char_table): Don't blindly fill chartables of
-       type `char' with nils.
+       * glyphs-widget.c (syms_of_glyphs_widget): remove
+       widget-callback-current-channel.
+       (vars_of_glyphs_widget): ditto.
+       * glyphs.h: ditto
 
-       * chartab.c (canonicalize_char_table_value): Coerce ints to chars
-       for tables of type `char'.
+       * gui.c (get_gui_callback): revert to previous behaviour.
 
-1998-11-26  Didier Verna  <verna@inf.enst.fr>
+2000-04-18  Andy Piper  <andy@xemacs.org>
 
-       * input-method-xlib.c (Initialize_Locale): don't call
-       XtSetLanguageProc. We've done the whole work here.
-       * input-method-xfs.c (Initialize_Locale): ditto.
-       * input-method-motif.c (Initialize_Locale): ditto.
+       * glyphs.h (struct Lisp_Image_Instance): add margin_width.
+       (IMAGE_INSTANCE_MARGIN_WIDTH): new.
+       (XIMAGE_INSTANCE_MARGIN_WIDTH): new.
 
-1998-11-26  Didier Verna  <verna@inf.enst.fr>
+       * glyphs.c (image_instance_equal): add margin_width.
+       (image_instance_hash): ditto.
 
-       * process-unix.c (unix_create_process): handle properly
-       Vfile_name_coding_system for converting the program and directory
-       names.
+       * glyphs-widget.c (widget_instantiate): deal with margin-width.
+       (layout_query_geometry): ditto.
+       (layout_layout): ditto.
+       (syms_of_glyphs_widget): add margin-width.
+       (image_instantiator_layout): allow margin-width.
 
-1998-11-27  SL Baur  <steve@altair.xemacs.org>
+       * glyphs.c (update_widget_instances): make a normal function.
+       (syms_of_glyphs): remove Qupdate_widget_instances.
+       * glyphs.h: ditto.
 
-       * m/arm.h: New file.
-       From James LewisMoss <dres@ioa.com>
+       * gui-x.c (popup_selection_callback): use enqueue_magic_eval_event
+       so that we don't corrupt ideas about the last event or
+       command. Remove widget-callback-current-channel fiddling.
+       * gui-msw.c (mswindows_handle_gui_wm_command): ditto.
 
-1998-11-27  Takeshi Hagiwara  <hagiwara@ie.niigata-u.ac.jp>
+2000-05-01  Martin Buchholz <martin@xemacs.org>
 
-       * m/mips-nec.h:
-       Fix the realpath() problem of UnixWare2.1.3.
-       Patches for NEC's sysv4.2 machine.
+       * XEmacs 21.2.33 is released.
 
-1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
+2000-05-01  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-       * dired.c (Fdirectory_files): Remove redundant code.
+       * make-src-depend: Allow dots in header file name.
 
-1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
+2000-05-01  Yoshiki Hayashi  <yoshiki@xmacs.org>
 
-       * fns.c (free_malloced_ptr): New function.
-       (XMALLOC_OR_ALLOCA): New macro.
-       (XMALLOC_UNBIND): Ditto.
-       (Fbase64_encode_region): Use malloc() for large blocks; arrange it
-       to be freed in case of non-local exit.
-       (Fbase64_encode_string): Ditto.
-       (Fbase64_decode_region): Ditto.
-       (Fbase64_decode_string): Ditto.
-       (STORE_BYTE): New macro.
-       (base64_decode_1): Use it.
+       * mule-charset.h (struct charset_lookup): Add
+       next_allocated_1_byte_leading_byte and
+       next_allocated_2_byte_leading_byte.
+       * mule-charset.c: Move above two variables so that those values
+       will be dumped.
 
-1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
+2000-04-26  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-       * fns.c (base64_value_to_char): Base64 stuff.
+       * insdel.c (find_charsets_in_bufbyte_string): Add Vcharset_ascii
+       when string length is zero.
+       (find_charsets_in_emchar_string): Ditto.
 
-1998-11-24  Hrvoje Niksic  <hniksic@srce.hr>
+2000-04-29  Bjrn Torkelsson  <torkel@hpc2n.umu.se>
 
-       * editfns.c (Fbuffer_substring): New function.
+       * lisp.h: extern Qdialog and Qmenubar.
 
-       * lisp.h: Declare make_string_from_buffer_no_extents().
+       * gui-x.c: added events.h.
+               also fixed typo which made the file uncompilable.
 
-       * insdel.c (make_string_from_buffer_1): New function.
-       (make_string_from_buffer_no_extents): Ditto.
+       * general.c: Added Qmenubar and Qdialog
 
-1998-11-15  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
+2000-04-28  Ben Wing  <ben@xemacs.org>
 
-       * linuxplay.c: Including <fcntl.h> instead of <sys/fcntl.h> makes
-       sound work on AIX with OSS installed.  Linux should still work.
+       * frame-msw.c (mswindows_init_frame_1):
+       * frame-msw.c (mswindows_mark_frame):
+       * event-msw.c (mswindows_enqueue_dispatch_event):
+       * console-msw.h:
+       * console-msw.h (struct mswindows_frame):
+       * console-msw.h (FRAME_MSWINDOWS_WIDGET_HASH_TABLE1):
+       there are now three hash tables for callbacks.
+       mswindows_enqueue_dispatch_event is no longer static.
 
-1998-11-03  Andy Piper  <andyp@parallax.co.uk>
+       * dialog-x.c (maybe_run_dbox_text_callback):
+       * dialog-x.c (dbox_descriptor_to_widget_value):
+       switch to new cons3 form for callbacks.
 
-       * config.h.in: name change for cygwin/version.h
+       * glyphs-msw.c (mswindows_register_gui_item):
+       * glyphs-msw.c (mswindows_widget_instantiate):
+       * glyphs-msw.c (add_tree_item):
+       * glyphs-msw.c (add_tab_item):
+       new image instance parameter, so it can be passed to callback-ex.
+       respect :callback-ex as well as :callback.
 
-       * configure.in: check for cygwin/version.h now.
+       * glyphs-widget.c (VALID_GUI_KEYWORDS):
+       add :callback-ex.
 
-       * cygwin32.h: track CYGWIN_DLL_VERSION_MAJOR ->
-       CYGWIN_VERSION_DLL_MAJOR name change in cygwin b20.
-       move cygwin32/version.h to cygwin/version.h
+       * glyphs.c (print_image_instance):
+       prettify, e.g. now prints widget type.
 
-1998-11-03  Olivier Galibert  <galibert@pobox.com>
+       * gui-x.h:
+       certain funs have new image instance parameter.
 
-       * lisp.h  (struct  Lisp_Bit_Vector): Fix declaration of  bits from
-       int to long.
+       * gui.c:
+       * gui.c (get_gui_callback):
+       * gui.c (gui_item_add_keyval_pair):
+       * gui.c (gui_item_init):
+       * gui.c (gui_add_item_keywords_to_plist):
+       * gui.c (mark_gui_item):
+       * gui.c (gui_item_hash):
+       * gui.c (gui_item_equal):
+       * gui.c (copy_gui_item):
+       * gui.c (syms_of_gui):
+       recognize callback-ex in a number of places.
+       also, fix the annoying "can't get out of yes-no dialog" bug.
+
+       * gui.h:
+       * gui.h (struct Lisp_Gui_Item):
+       recognize callback-ex in a number of places.
 
-1998-10-22  Andy Piper  <andyp@parallax.co.uk>
+       * menubar-x.c (menu_item_descriptor_to_widget_value_1):
+       new parameter in button_item_to_widget_value.
+
+       * glyphs-x.c (x_update_widget):
+       * glyphs-x.c (x_button_instantiate):
+       * glyphs-x.c (x_button_update):
+       * glyphs-x.c (x_progress_gauge_instantiate):
+       * glyphs-x.c (x_edit_field_instantiate):
+       * glyphs-x.c (x_combo_box_instantiate):
+       * glyphs-x.c (x_tab_control_instantiate):
+       * glyphs-x.c (x_label_instantiate):
+       new image instance parameter in various places.
 
-       * cygwin32.h: track CYGWIN_DLL_VERSION_MAJOR ->
-       CYGWIN_VERSION_DLL_MAJOR name change in cygwin b20.
-       enable BROKEN_SIGIO under b20 to make QUIT work.
+       * event-Xt.c:
+       * event-Xt.c (enqueue_Xt_dispatch_event):
+       this fun gets exported.
 
-1998-10-22  Andy Piper  <andyp@parallax.co.uk>
+       * gui-msw.c:
+       * gui-msw.c (mswindows_handle_gui_wm_command):
+       handle both :callback and :callback-ex, and generate our own
+       event because it's one of the callback-ex arguments.
 
-       * frame-msw.c (mswindows_size_frame_internal): force frame sizing
-       to fit within the constraints of the screen size. I.e. make the
-       frame small enough to fit and move it if some of it will be
-       off-screen.
+       * gui-x.c:
+       * gui-x.c (popup_selection_callback):
+       handle both :callback and :callback-ex, and generate our own
+       event because it's one of the callback-ex arguments.
+       * gui-x.c (button_item_to_widget_value):
+       * gui-x.c (gui_items_to_widget_values_1):
+       * gui-x.c (gui_item_children_to_widget_values):
+       * gui-x.c (gui_items_to_widget_values):
+       new image instance parameter in various places.
 
-1998-10-19  Greg Klanderman  <greg@alphatech.com>
+       * fns.c (Freplace_list):
+       fix small typo in doc string.
 
-       * dired.c: conditionalize inclusion of user-name-completion
-       primitives on non-Windows NT.  The needed functions don't exist on NT.
+       * lisp.h:
+       declare enqueue_Xt_dispatch_event.
 
-1998-11-24  SL Baur  <steve@altair.xemacs.org>
+2000-04-28  Ben Wing  <ben@xemacs.org>
 
-       * gifrlib.h: Clean up types for 64 bit compile.
-       * dgif_lib.c (DGifInitRead): Ditto.
-       (MakeSavedImage): Ditto.
-       * emacs.c (decode_path): Ditto.
-       From Steve Carney <carney@pa.dec.com>
+       * buffer.c:
+       * buffer.c (Frecord_buffer):
+       * buffer.c (syms_of_buffer):
+       delete record-buffer-hook.
 
-1998-10-16  William M. Perry  <wmperry@aventail.com>
+       * fns.c:
+       * fns.c (Freplace_list):
+       * fns.c (syms_of_fns):
+       new primitive replace-list.
 
-       * glyphs-msw.c (bitmap_table): Fixed typo in builtin bitmaps
-         (cehckboxes instead of checkboxes).
+       * frameslots.h:
+       slot for old buffer-alist.
 
-1998-10-15  SL Baur  <steve@altair.xemacs.org>
+       * lisp.h:
+       exfun replace-list.
 
-       * XEmacs 21.2-beta3 is released.
+       * redisplay.c:
+       * redisplay.c (redisplay_frame):
+       * redisplay.c (syms_of_redisplay):
+       * redisplay.c (vars_of_redisplay):
+       new hook buffer-list-changed-hook.
+       call it.
 
-1998-10-13  Raymond Toy  <toy@rtp.ericsson.se>
+2000-04-27  Ben Wing  <ben@xemacs.org>
 
-       * runemacs.c (WinMain): If the basename is "rungnuclient.exe", run
-       gnuclient.  Otherwise, we run xemacs as we always did.  This gets
-       rid of the annoying DOS window when running gnuclient.
+       * extents.h: extern in_modeline_generation.
 
-1998-10-13  Andy Piper  <andyp@parallax.co.uk>
+       * redisplay.c (generate_formatted_string_db): set
+       in_modeline_generation.
 
-       * dragdrop.c (vars_of_dragdrop): rename HAVE_MSWINDOWS ->
-       HAVE_MS_WINDOWS typo.
+       * extents.c (extent_changed_for_redisplay): don't mark redisplay
+       flags if in modeline generation.  otherwise frame-modified-tick
+       is ticked far too often.
+       Declare in_modeline_generation.
 
-1998-10-13  SL Baur  <steve@altair.xemacs.org>
+2000-04-26  Ben Wing  <ben@xemacs.org>
 
-       * process-unix.c (unix_send_process): Set closed flag on writable
-       pipe after SIGPIPE is received and before we call deactivate_process.
+       * emacs.c (vars_of_emacs): document quick-build "error-checking"
+       option.
+       (vars_of_emacs): add quick-build as an error-checking option.
+       A bit kludgy, but there doesn't seem much point in creating
+       a real var for this.
 
-1998-10-03  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+       * config.h.in: put in an entry for QUICK_BUILD; remove NO_DOC_FILE.
 
-       * window.c (Fset_window_start): respect narrowing when
-       checking wheter start is at the beginning of a line.
-       (Fset_window_buffer): Ditto
-       Fixes repeatable crash in VM.
+2000-04-14  IKEYAMA Tomonori  <tomonori@suiyokai.org>
 
-1998-10-09  SL Baur  <steve@altair.xemacs.org>
+       * redisplay.h (struct display_line): Add a new variable,
+       line_continuation.
 
-       * window.c (specifier_vars_of_window): Set default vertical
-       divider width to 1 on ttys.
+       * redisplay.c (create_text_block): Set dl->line_continuation if
+       the line continues.
+       (create_string_text_block): Ditto.
+       (regenerate_window_incrementally): Use line_continuation instead
+       of searching continuation glyph.
+       (add_margin_runes): Call add_glyph_rune.
+       (add_glyph_rune): Handle margin glyph.
 
-1998-10-08  Martin Buchholz  <martin@xemacs.org>
+2000-04-20  Martin Buchholz  <martin@xemacs.org>
 
-       * alloc.c:
-       * unexec.c:
-       * malloc.c:
-       Add <stddef.h> to get ptrdiff_t declaration
+       * filelock.c (fill_in_lock_file_name):
+       ANSIfy.
+       Check for IS_ANY_SEP instead of '/'.
+       (lock_file_1):
+       Avoid generating gratuitous garbage.  Call user_login_name() directly.
+       Never check errno without first seeing that system call failed.
+       (unlock_file): Add GCPRO.
+       (Flock_buffer): Fix docstring.
+       (Ffile_locked_p): Fix docstring.  Add GCPRO.
 
-1998-10-07  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+2000-04-19  Martin Buchholz  <martin@xemacs.org>
 
-       * scrollbar-msw.c: Use the same vertical scrollbar drag hack as
-         is used for Motif or Lucid scrollbars under X.
+       * sysdep.c (get_pty_max_bytes):
+       Fix hangs on DEC OSF 4.0 when (process-send-string) sends
+       strings longer than 252 bytes.
 
-1998-10-08  Pierre Wendling  <pw@ebc.vbe.dec.com>
+       * md5.c: Unconditionally include ANSI header <limits.h>
 
-       * m/alpha.h (UNEXEC): quoted to avoid bad expansion when running
-       `configure'
+       * glyphs-x.c (convert_EImage_to_XImage):
+       * lisp-union.h (union Lisp_Object):
+       Use consistently the syntax #ifdef FEATURE, not #if FEATURE.
 
-1998-10-06  Takeshi Hagiwara  <hagiwara@ie.niigata-u.ac.jp>
+2000-04-13  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-       * frame-x.c (x_delete_frame): Fix an argument of XtDestroyWidget.
+       * filelock.c (current_lock_owner): Remove unused variable o, p.
 
-1998-10-05  Andy Piper  <andyp@parallax.co.uk>
+2000-04-17  Norbert Koch  <n.koch@eai-delta.de>
 
-       * s/cygwin32.h: more cygwin b20 reorganisation.
+       * callint.c: Remove multiply defined symbol Qlet
+       (syms_of_callint): ditto.
 
-1998-10-01  Raymond Toy  <toy@rtp.ericsson.se>
+2000-04-14  Andy Piper  <andy@xemacs.org>
 
-       * nas.c: Added necessary support functions to be able to handle
-       WAVE files in memory, just like the support for SND files in
-       memory.
+       * general.c (syms_of_general): add last-command, this-command, let
+       and funcall.
 
-1998-09-30  SL Baur  <steve@altair.xemacs.org>
+       * lisp.h: declare various symbols.
 
-       * callproc.c (child_setup): Fix spelling typo.
+       * glyphs.h: declare Qwidget_callback_current_channel;
 
-1998-09-29  SL Baur  <steve@altair.xemacs.org>
+       * glyphs-widget.c (syms_of_glyphs_widget): add
+       Qgui_callback_current_channel.
+       (vars_of_glyphs_widget): add Vgui_callback_current_channel.
 
-       * XEmacs 21.2-beta2 is released.
+       * gui-msw.c (mswindows_handle_gui_wm_command): bind
+       widget-callback-current-channel when invoking the interactive
+       arg. Also bind last-command and next-command when invoking the
+       widget updates.
+       * gui-x.c (popup_selection_callback): ditto.
 
-1998-09-27  P. E. Jareth Hein  <jareth@camelot.co.jp>
+       * gui.c (get_gui_callback): massage args so that we are always
+       calling eval. This allows us to add our own variable bindings
+       outside.
 
-       * regex.c (re_match_2_internal): Add in code to reset lowest_active_reg
-       to prevent memory corruption in the case of jumping out of a series of
-       nested match patterns. This is a rather brute force approach, though.
+       * glyphs-x.c (x_button_instantiate): use
+       gui_items_to_widget_values since this is GC safe.
+       (x_progress_gauge_instantiate): ditto.
+       (x_edit_field_instantiate): ditto.
+       (x_label_instantiate): ditto.
 
-1998-09-02  Andy Piper  <andyp@parallax.co.uk>
+       * event-Xt.c (emacs_Xt_handle_magic_event): remove old printfs.
+       (emacs_Xt_event_widget_focus_out): new function
+       (emacs_Xt_event_widget_focus_in): new function. Set the keyboard
+       focus.
+       (emacs_Xt_event_add_widget_actions): new function. add focus
+       functions as actions.
+       (init_event_Xt_late): use it.
 
-       * config.h.in: ditto.
+2000-04-14  Hrvoje Niksic  <hniksic@iskon.hr>
 
-       * s/cygwin32.h: rearrange declarations to cope with cygwin
-       b20. Include cygwin32/version.h if it exists.
+       * event-stream.c (Fdispatch_event): Doc fix.
 
-1998-09-20  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+2000-03-29  SL Baur  <steve@musashimaru.m17n.org>
 
-       * device-msw.c (mswindows_init_device): Call new
-         mswindows_enumerate_fonts() function in objects-msw.c instead
-         of font_enum_callback_1() to enumerate fonts.
+       * postgresql.c: Remove all references to PQsetenv*.
 
-         font_enum_callback_1() and _2() moved to objects-msw.c.
+       * postgresql.h: Remove references to PGsetenvHandler object.
+       * lrecord.h (lrecord_type): Ditto.
 
-       * faces.c (complex_vars_of_faces): Make the mswindows default
-         face font fully specified and provide some fallbacks.
+2000-04-11  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
 
-       * objects-msw.c: font_enum_callback_1() and _2() moved here
-         from objects-msw.c. Obtain the enumerated font's character
-         sets by table lookup instead of using the locale-specific
-         string provided by Windows.
+       * glyphs-msw.h (struct mswindows_image_instance_data): Added
+       real_heigh and real_width members, and accessor macros for these.
 
-         New public non-method mswindows_enumerate_fonts() that fills
-         in the supplied mswindows device's font list.
+       * glyphs-msw.c (init_image_instance_geometry): New function.
+       (init_image_instance_from_dibitmap): Use it.
+       (mswindows_resource_instantiate): Use it.
+       (init_image_instance_from_xbm_inline): Use it.
+       (mswindows_initialize_image_instance_mask): Use real bitmap
+       geometry.
+       (mswindows_create_resized_bitmap): Ditto.
+       (mswindows_create_resized_mask): Ditto.
 
-         mswindows_initialize_font_instance: Use the supplied name
-         variable instead of f->name when signalling errors. Match font
-         weights and character sets using lookup tables which handle
-         spaces instead of by frobbing.
+       * redisplay-msw.c (mswindows_output_dibitmap): Stretch real mask
+       and bitmap to their surface size.
 
-1998-09-20  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+2000-04-11  Jan Vroonhof  <jan@xemacs.org>
 
-       * process-nt.c: Define an arbitrary limit, FRAGMENT_CODE_SIZE,
-         on the size of code fragments passed to run_in_other_process.
+       * process-unix.c (unix_send_process): Guard against process MIA
+       after Faccept_process_output.
 
-         run_in_other_process(): Use FRAGMENT_CODE_SIZE to determine
-         the amount of memory to allocate in the other process.
+2000-04-11  Ben Wing  <ben@xemacs.org>
 
-         Removed sigkill_code_end(), sigint_code_end() and
-         sig_enable_code_end() since they are now redundant.
+       * eval.c (unbind_to_hairy): fix brokenness introduced by
+       nanosecond speed improvements.
 
-         send_signal() and enable_child_signals(): Don't try to work
-         out the end of the code fragments passed to
-         run_in_other_process()
+2000-04-07  Raymond Toy  <toy@rtp.ericsson.se>
 
-1998-09-10  Kazuyuki IENAGA  <ienaga@jsys.co.jp>
+       * sunplay.c (init_device): To play sounds correctly, the device
+       apparently needs to be initialized at least once by XEmacs.  Make
+       it so.
 
-       * src/s/freebsd.h: Added __ELF__ and compiler/liker flags for
-       FreeBSD-current.
+2000-04-10  IKEYAMA Tomonori  <tomonori@suiyokai.org>
 
-       * src/unexelf.c: Partially synched with FSF's 20.3.
+       * redisplay.c (add_margin_runes): Add text image glyph
+         handling.
 
-1998-09-10  Hrvoje Niksic  <hniksic@srce.hr>
+2000-04-06  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-       * insdel.c (signal_after_change): Map across indirect buffers
-       here, and not in the upper-level functions.
-       (signal_first_change): Don't check for Armageddon.
-       (signal_before_change): Map across indirect buffers here.
-       (prepare_to_modify_buffer): ...and here.
+       * lisp.h (DOESNT_RETURN): Don't declare as volatile when
+       gcc is newer than 2.5.
 
-1998-09-09  Hrvoje Niksic  <hniksic@srce.hr>
+2000-04-06  Colin Rafferty  <colin@xemacs.org>
 
-       * insdel.c (signal_after_change): Add return value.
-       (buffer_insert_string_1): Use it.
-       (buffer_delete_range): Ditto.
-       (buffer_replace_char): Ditto.
-       (cancel_multiple_change): Map the indirect buffers.
+       * lisp.h (FLEXIBLE_ARRAY_STRUCT_SIZEOF): Created.
 
-1998-09-06  Hrvoje Niksic  <hniksic@srce.hr>
+       * fns.c (size_bit_vector):
+       * alloc.c (size_vector):
+       (make_vector_internal):
+       (make_bit_vector_internal):
+       (sweep_bit_vectors_1):
+       Replace calls to offsetof with FLEXIBLE_ARRAY_STRUCT_SIZEOF macro.
 
-       * insdel.c (init_buffer_text): Remove INDIRECT_P parameter.
-       (uninit_buffer_text): Ditto.
+2000-04-06  Andy Piper  <andy@xemacs.org>
 
-       * buffer.c (Fmake_indirect_buffer): Implement stricter
-       error-checking.
+       * gmalloc.c (malloc): undo previous change.
+       (malloc): ditto.
+       (free): ditto.
+       (realloc): ditto.
 
-1998-09-04  Hrvoje Niksic  <hniksic@srce.hr>
+2000-04-06  IKEYAMA Tomonori <tomonori@suiyokai.org>
 
-       * insdel.c (change_function_restore): Reverse order of
-       function-call and assignment.
-       (first_change_hook_restore): Ditto.
+       * line-number.c (buffer_line_number): Revert to former version.
 
-       * extents.c (mark_extent_auxiliary): Mark them.
-       (Fset_extent_property): Set them.
-       (Fextent_property): Get them.
-       (Fextent_properties): Ditto.
-       (vars_of_extents): Set their default.
+2000-04-06  Andy Piper  <andy@xemacs.org>
 
-       * extents.h (struct extent_auxiliary): Add before_change_functions
-       and after_change_functions.
+       * gmalloc.c (malloc): add error checking.
+       (malloc): ditto.
+       (free): ditto.
+       (realloc): ditto.
 
-       * insdel.c (signal_before_change): Use it.
-       (signal_after_change): Ditto.
+       * dialog-x.c (dbox_descriptor_to_widget_value): add extra
+       button_item_to_widget_value arg.
 
-       * extents.c (report_extent_modification): New function.
+       * glyphs-x.c (x_button_instantiate): add extra
+       button_item_to_widget_value arg.
+       (x_progress_gauge_instantiate): ditto.
+       (x_edit_field_instantiate): ditto.
+       (x_label_instantiate): ditto.
 
-       * insdel.c (signal_before_change): Don't check for Armageddon.
-       (signal_after_change): Ditto.
+       * gui-x.c (gui_items_to_widget_values_1): add extra
+       button_item_to_widget_value arg.
+       (button_item_to_widget_value): add extra menu_item_p arg.
 
-1998-09-11  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
+       * gui-x.h: change signature of button_item_to_widget_value.
 
-       * redisplay.c (redisplay_window): make sure a new starting point
-       is chosen if it somehow got moved from the beginning of the line
-       -- this can happen because Fwiden was called recently.
+       * menubar-x.c (menu_item_descriptor_to_widget_value_1): add extra
+       button_item_to_widget_value arg.
 
-       * window.c (Fset_window_start): set start_at_line_beg correctly
-       (Fset_window_buffer): Ditto
+2000-04-03  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-1998-09-06  Hrvoje Niksic  <hniksic@srce.hr>
+       * buffer.h (struct buffer): auto_save_modified should be long.
 
-       * insdel.c (init_buffer_text): Remove INDIRECT_P parameter.
-       (uninit_buffer_text): Ditto.
+2000-04-05  Andy Piper  <andy@xemacs.org>
 
-       * buffer.c (Fmake_indirect_buffer): Implement stricter
-       error-checking.
+       * glyphs-widget.c (widget_instantiate): pixwidth != pixheight
+       type.
+       (button_query_geometry): give a little more room so that athena
+       buttons fit.
 
-1998-05-14  Jan Vroonhof  <vroonhof@math.ethz.ch>
+2000-04-05  Andy Piper  <andy@xemacs.org>
 
-       * emacs.c (main_1): Removed references to *vars_of_filelock.
+       * faces.c (complex_vars_of_faces): The widget face should inherit
+       the font of the gui-element face.
 
-       * lisp.h: Added Fsystem_name.
+2000-04-04  Andy Piper  <andy@xemacs.org>
 
-       * filelock.c: Replaced by version from FSF 20.2. Now implements
-       locking by using symlinks which is NFS safe. However keep the
-       GCPRO's in lock_file and the calls to callx_in_buffer like our old
-       version (and of course use ansi C, acessor macros, etc).
+       * glyphs-x.c (x_button_update): new function. unconditionally
+       update a button's state when the instance is dirty.
+       (image_instantiator_format_create_glyphs_x): add x_button_update.
+       (x_widget_instantiate): remove old resize cruft.
 
-1998-09-06  Jan Vroonhof  <vroonhof@math.ethz.ch>
+2000-04-02  Andy Piper  <andy@xemacs.org>
 
-       * process-unix.c (unix_create_process): Reset SIGHUP handler to
-       SIG_DFL. We now try to conserve any inherted SIG_IGN settings
-       in init_signals_very_early. However these should not be passed
-       on to children attached to the new pty.
+       * frame.c (change_frame_size_1): The introduction of gutters means
+       that we need to allow 0 as a potential frame dimension.
 
-1998-08-28  Andy Piper  <andyp@parallax.co.uk>
+2000-04-02  IKEYAMA Tomonori  <tomonori@suiyokai.org>
 
-       * glyphs-eimage.c (png_instantiate_unwind): clean up eimage after use.
+       * redisplay.c (add_glyph_rune): Don't set 0 to bufpos for text
+       image glyph if allow_cursor.
+        (add_hscroll_rune): Don't allow cursor to border glyph.
+        (create_text_block): Ditto.
 
-1998-09-07  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+       * redisplay-output.c (redisplay_move_cursor): Do nothing even if
+       text not in buffer.
+        (redisplay_output_layout): Call ensure_face_cachel_complete for
+       text image glyph.
 
-       * fileio.c (file-name-directory, file_name_as_directory):
-         Don't call CORRECT_DIR_SEPS, even when #defined WINDOWSNT.
 
-1998-09-02  Andy Piper  <andyp@parallax.co.uk>
+2000-03-16  IKEYAMA Tomonori  <tomonori@suiyokai.org>
 
-       * emacs.c (main_1): init_ralloc() if initialised and we have REL_ALLOC
+       * redisplay.c (add_glyph_rune): Adding text image as text runes.
 
-       * ralloc.c: uncomment __morecore.
+       * redisplay-output.c (redisplay_move_cursor): NO_CURSOR if text
+       not in buffer
 
-1998-09-92  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+       * redisplay-tty.c (tty_output_display_block): Delete the routine
+       for text image glyph
+       * redisplay-x.c (x_output_display_block): ditto
+       * redisplay-msw.c (mswindows_output_display_block): ditto
 
-       * event-msw.c(winsock_writer): Supply a dummy 4th argument to
-         WriteFile() to fix a winsock 1.x bug on Win95.
+2000-02-02  Mike Alexander  <mta@arbortext.com>
 
-1998-08-28  Hrvoje Niksic  <hniksic@srce.hr>
+       Note: Some of these were committed by accident as part of other
+       patches.
 
-       * event-Xt.c (emacs_Xt_mapping_action): Check for device being
-       deleted.
-       (x_event_to_emacs_event): Ditto.
-       (emacs_Xt_handle_focus_event): Ditto.
-       (emacs_Xt_handle_magic_event): Ditto.
+       * regex.c (regex_compile): Avoid compiler warnings.
 
-       * console-x.h (struct x_device): New flag being_deleted.
-       (DEVICE_X_BEING_DELETED): New macro.
+       * ntproc.c (sys_spawnve): Avoid compiler warnings.
 
-       * device-x.c (x_IO_error_handler): Throw to top-level instead of
-       returning.  Before doing that, set the being_deleted flag on the
-       device.
+       * nt.h: Declare term_ntproc correctly.
 
-1998-08-27  Hrvoje Niksic  <hniksic@srce.hr>
+       * nt.c: Remove incorrect declaration of get_home_directory which
+       is declared correctly in lisp.h.
 
-       * device-x.c (x-seppuku-on-epipe): Removed.
+       * keymap.c (get_keyelt): Avoid compiler warnings.
+       (raw_lookup_key_mapper): Avoid compiler warnings.
 
-1998-08-26  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
+       * gutter.c (gutter_was_visible): Add return statement to avoid warning.
 
-       * frame-x.c (x_delete_frame): Flush the X output buffer after
-       calling XtDestroyWidget to ensure that the windows are really
-       killed right now.
+       * glyphs-eimage.c (png_instantiate): Avoid compiler warnings.
 
-1998-08-26  Hrvoje Niksic  <hniksic@srce.hr>
+       * filemode.c (mode_string): Avoid compiler warnings.
 
-       * menubar-x.c (my_run_hook): New unused function.
-       (pre_activate_callback): Use run_hook for Qactivate_menubar_hook,
-       since we ignore the results of the contained functions anyway.
+       * file-coding.c (Fcoding_system_aliasee): Add return statement to
+       avoid warning.
 
-1998-08-26  P. E. Jareth Hein  <jareth@camelot.co.jp>
+       * events-mod.h: Undef some things that winuser.h defines differently.
 
-       * glyphs-eimage.c (gif_instantiate): Fix a crash in handling
-       interlaced GIF files that are smaller than 4 lines high...
+       * data.c (Faset): Avoid compiler warnings.
 
-1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
+       * alloc.c (Fmake_byte_code): Avoid compiler warnings.
 
-       * buffer.c (map_over_sharing_buffers): Deleted.
+2000-03-03  Jan Vroonhof  <vroonhof@math.ethz.ch>
 
-       * insdel.c (MAP_INDIRECT_BUFFERS): Move to buffer.h.
+       * sound.c (Fplay_sound_file): Wrap ESD in start/stop_interrupts.
+       Fall through to simple beep on error.
+       Replace "extern" by real header file.
 
-       * buffer.c (Fkill_buffer): Keep indirect_children updated while
-       killing them.
+       * linuxplay.c: Use nativesound.h
+       (play_sound_data): Return error code. Be less verbose on error.
 
-1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
+       * sunplay.c: Use nativesound.h
+       (play_sound_data): Return error code. Be less verbose on error.
 
-       * insdel.c (buffer_insert_string_1): Advance the point bytind in
-       all the buffers.
-       (buffer_delete_range): Ditto.
+       * ntplay.c: Use nativesound.h
+       (play_sound_data): Return fake error code
 
-       * marker.c (init_buffer_markers): Set point-marker to the value of
-       point in an indirect buffer.
+       * sgiplay.c: Use nativesound.h
+       (play_sound_data): Return error code
 
-1998-08-30  Hrvoje Niksic  <hniksic@srce.hr>
+       * hpplay.c: Use nativesound.h, partially implement
+       new error code. Break compilation until finished.
+       (play_sound_data): error code.
 
-       * undo.c (undo_prelude): Test last-undo-buffer against base
-       buffer.
+       * nativesound.h (play_sound_file):
+         (play_sound_data): Prototype in new header.
 
-       * insdel.c (MAP_INDIRECT_BUFFERS): Use it.
+2000-03-31  Andy Piper  <andy@xemacs.org>
 
-       * buffer.h (BUFFER_BASE_BUFFER): New macro.
+       * glyphs-widget.c: (button_query_geometry): new function. Adjust
+       for toggle and radio buttons.
+       (image_instantiator_buttons): use it.
 
-1998-08-30  Hrvoje Niksic  <hniksic@srce.hr>
+2000-03-03  Jan Vroonhof  <vroonhof@math.ethz.ch>
 
-       * insdel.c (init_buffer_text): Initialize it here.
+       * scrollbar-x.c (x_update_vertical_scrollbar_callback):
+       (x_update_horizontal_scrollbar_callback): Return if no mirror was
+       found. Scrollbar event probably belonged to some old config.
 
-       * line-number.c: Address line_number_cache through buffer->text.
+2000-03-31  Andy Piper  <andy@xemacs.org>
 
-       * buffer.c (mark_buffer): Mark line number cache.
+       * glyphs-widget.c (widget_instantiate): use LAYOUT_VERTICAL rather
+       than 1.
+       (initialize_widget_image_instance): default layout to
+       LAYOUT_HORIZONTAL rather than 0.
+       (widget_instantiate): reverse the item list at the end rather than
+       every iteration.
+       (layout_layout): re-code for the border text at the front of the
+       item list rather than at the end.
+       (layout_query_geometry): ditto. Pick up fixed and dynamic sizes
+       provided by the user.
+       (widget_query_geometry): comment.
 
-       * bufslots.h (line_number_cache): Move to struct buffer_text.
+2000-03-30  Andy Piper  <andy@xemacs.org>
 
-       * insdel.c (buffer_insert_string_1): Propagate signals and changes
-       across the children buffers.
-       (buffer_delete_range): Ditto.
-       (buffer_replace_char): Ditto.
-       (gap_left): Ditto.
-       (gap_right): Ditto.
+       * glyphs-widget.c (image_instantiator_layout): allow standard
+       widget keywords in layouts.
 
-       * insdel.c (MAP_INDIRECT_BUFFERS): New macro.
+       * gutter.c (output_gutter): cope with nil gutter contents.
 
-       * buffer.c (Fmake_indirect_buffer): Uncomment.
+       * frame.c (Fset_frame_properties): add gutter docs.
 
-1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
+2000-03-29  Andy Piper  <andy@xemacs.org>
 
-       * macros.c (Fend_kbd_macro): Remove trailing period from error
-       message.
-       (Fexecute_kbd_macro): Ditto.
+       * toolbar-msw.c (TBSTYLE_FLAT): add.
+       (mswindows_output_toolbar): minor fiddling.
 
-1998-08-21  Greg Klanderman  <greg@alphatech.com>
+2000-03-29  Andy Piper  <andy@xemacs.org>
 
-       * dired.c (Fuser_name_completion): remove optional 2nd argument.
-       (Fuser_name_completion_1): new function to return uniqueness
-       indication in addition to the user name completion.
-       (user_name_completion): change type of `uniq' argument.
+       * gutter.c (output_gutter): force gutter size recalculation if
+       what we are trying to display won't fit.
+       (update_gutter_geometry): new function. A per-gutter version of
+       update_frame_gutter_geometry.
+       (update_frame_gutter_geometry): use it.
+       (redraw_exposed_gutter): add extra debugging output.
 
-1998-08-19  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
+2000-03-28  Mike Alexander  <mta@arbortext.com>
 
-       * lread.c (vars_of_lread): Removed `source-directory' variable.
+       * dumper.c: Declare pdump_hFile and pdump_hMap (Windows only)
+       (pdump_file_unmap): Implement it on Windows
+       (pdump_file_get): Save alocated handles for pdump_file_unmap
 
-1998-08-22  Hrvoje Niksic  <hniksic@srce.hr>
+2000-03-28  Andy Piper  <andy@xemacs.org>
 
-       * fileio.c (Ffile_readable_p): Apply the DOS/Windows logic to
-       Cygwin.
+       * gui.c (get_gui_callback): treat Quit specially.
 
-1998-08-19  SL Baur  <steve@altair.xemacs.org>
+2000-03-27  Andy Piper  <andy@xemacs.org>
 
-       * dired.c (vars_of_dired): Fix misapplied patch.
+       * glyphs.c (image_instantiate): be careful to check in the same
+       way we assigned.
 
-1998-08-16  Martin Buchholz  <martin@xemacs.org>
+2000-03-27  Didier Verna  <didier@xemacs.org>
 
-       * fns.c (Fremrassq, remrassq_no_quit):
-       A XCAR that should have been an XCDR turned Fremrassq into Fremassq
+       * config.h.in: define the proper SMART_INCLUDE macro.
+       handle renaming of `foo_h_path' to `foo_h_file'.
 
-1998-07-17  Didier Verna  <verna@inf.enst.fr>
+       * database.c: ditto.
 
-       * redisplay-x.c (x_get_gc): returns a GC with a FillStipple fill
-       style as foreground GC for faces that have the `dim' property.
-       (x_output_string): when the `dim' face property is set,
-       ensure the gray pixmap has been created, and get a proper
-       foreground GC to draw the text.
+       * emacs.c: ditto.
 
-1998-08-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+       * linuxplay.c: ditto.
 
-       * event-msw.c (mswindows_wnd_proc): Workaround for a Win95 bug:
-         Manually track the state of the left and right Ctrl and Alt
-         modifiers.
+       * terminfo.c: ditto.
 
-1998-08-07 Matt Stupple <matts@tibco.com>
+       * tooltalk.h: ditto.
 
-        * ntproc.c: don't wait on char_consumed at thread entry.
-       Additionally, to get the 'process' marked as finished, ensure
-       that the CHILD_ACTIVE macro returns false, so before exiting
-       close char_avail and set it to NULL, and close other handles
-       to reduce handle leak problems.
+2000-03-27  Andy Piper  <andy@xemacs.org>
 
-1998-08-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+       * glyphs-msw.c (mswindows_update_widget): make sure the widget
+       gets updated whenever the face might have changed.
 
-       * menubar-msw.c (displayable_menu_item): take account of menu
-         depth when deciding whether to try to display accelerators.
+2000-03-26  Mike Alexander  <mta@arbortext.com>
 
-1998-08-04  Andy Piper  <andyp@parallax.co.uk>
+       * dumper.c (pdump_resource_free): Fix the comment.
 
-       * event-msw.c: use MsgWaitForMultipleObjects if there are no
-       subprocesses.
+2000-03-21  Olivier Galibert  <galibert@pobox.com>
 
-       * glyphs-msw.c: fix a couple of potential handle leaks.
+       * input-method-xlib.c (XIM_init_frame): Remove painful warning.
 
-1998-08-04  P. E. Jareth Hein  <jareth@camelot.co.jp>
+2000-03-22  Mike Alexander  <mta@arbortext.com>
 
-       * dgif_lib.c gif_io.c gifrlib.h: New files to put GIF
-         *decoding ONLY* back into the core.
-       * glyphs-eimage.c: Change referenced header file for GIF
-         reading to point to the incore version.
+       * dumper.c: Include Windows headers on Windows
+       (pdump_resource_free): Add a body to the function
+       (pdump_load): exe_name -> exe_path and add some comments.
 
-1998-07-20  Martin Buchholz  <martin@xemacs.org>
+2000-03-25  Mike Alexander  <mta@arbortext.com>
 
-       * casefiddle.c (casify_object):
-       Change algorithm from O(N**2) to O(N).
-       Code cleanup.
-       Doc string cleanup.
-
-1998-07-22  Greg Klanderman  <greg@alphatech.com>
-
-       * dired.c (file_name_completion_unwind): don't leak the cons.
-
-1998-07-20  Greg Klanderman  <greg@alphatech.com>
-
-       * dired.c (Fuser_name_completion): new function.
-       (Fuser_name_all_completions): new function.
-       (user_name_completion): new function.
-       (syms_of_dired): 2 new DEFSUBRs.
-       (vars_of_dired): initialize user name cache vars.
-
-1998-07-29  P. E. Jareth Hein  <jareth@camelot.co.jp>
-
-       * glyphs-eimage.c (png_instantiate): Add proper handling for background
-       colors taken from the default face.  Also correct a thinko in
-       transparency (not alpha) handling.
-
-1998-07-23  Martin Buchholz  <martin@xemacs.org>
-
-       * s/decosf4-0.h:  Use a perfectly ordinary link.  Nuke BSD crap.
-       * unexalpha.c: ANSI C-ize.  Clean compiler warnings.
-       * lread.c (Fload_internal):  Be very careful with printfs of
-       size_t's
-       * gui-x.c (menu_name_to_accelerator): tolower wants an `int'
-       argument.
-
-1998-07-27  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
-
-       * callint.c (Fcall_interactively): GCPRO prompt string before
-       passing it to Fread_key_sequence
-
-1998-07-27  SL Baur  <steve@altair.xemacs.org>
-
-       * keymap.c (vars_of_keymap): Initialize Vkey_translation_map and
-       Vvertical_divider_map.
-
-       * mule-canna.c (vars_of_mule_canna): Initialize every symbol to
-       Qnil or 0, none were initialized prior to this change.
-
-       Rename misnamed `V' prefixed integer variables:
-       Vcanna_empty_info, Vcanna_through_info, Vcanna_underline,
-       Vcanna_inhibit_hankakukana, Vcanna_henkan_length, Vcanna_henkan_revPos,
-       Vcanna_henkan_revLen, Vcanna_ichiran_length, Vcanna_ichiran_revPos,
-       Vcanna_ichiran_revLen.
-
-       Rename misnamed `V' prefixed integer variables and initialize
-       properly in the vars_of routine.
-       Vcanna_mode_AlphaMode, Vcanna_mode_EmptyMode, Vcanna_mode_KigoMode,
-       Vcanna_mode_YomiMode, Vcanna_mode_JishuMode, Vcanna_mode_TankouhoMode,
-       Vcanna_mode_IchiranMode, Vcanna_mode_YesNoMode, Vcanna_mode_OnOffMode,
-       Vcanna_mode_AdjustBunsetsuMode, Vcanna_mode_ChikujiYomiMode,
-       Vcanna_mode_ChikujiTanMode, Vcanna_mode_HenkanMode,
-       Vcanna_mode_HenkanNyuryokuMode, Vcanna_mode_ZenHiraHenkanMode,
-       Vcanna_mode_HanHiraHenkanMode, Vcanna_mode_ZenKataHenkanMode,
-       Vcanna_mode_HanKataHenkanMode, Vcanna_mode_HanKataHenkanMode,
-       Vcanna_mode_ZenAlphaHenkanMode, Vcanna_mode_HanAlphaHenkanMode,
-       Vcanna_mode_ZenHiraKakuteiMode, Vcanna_mode_HanHiraKakuteiMode,
-       Vcanna_mode_ZenKataKakuteiMode, Vcanna_mode_HanKataKakuteiMode,
-       Vcanna_mode_ZenAlphaKakuteiMode, Vcanna_mode_HanAlphaKakuteiMode,
-       Vcanna_mode_HexMode, Vcanna_mode_BushuMode, Vcanna_mode_ExtendMode,
-       Vcanna_mode_RussianMode, Vcanna_mode_GreekMode, Vcanna_mode_LineMode,
-       Vcanna_mode_ChangingServerMode, Vcanna_mode_HenkanMethodMode,
-       Vcanna_mode_DeleteDicMode, Vcanna_mode_TourokuMode,
-       Vcanna_mode_TourokuEmptyMode, Vcanna_mode_TourokuHinshiMode,
-       Vcanna_mode_TourokuDicMode, Vcanna_mode_QuotedInsertMode,
-       Vcanna_mode_BubunMuhenkanMode, Vcanna_mode_MountDicMode,
-       Vcanna_fn_SelfInsert, Vcanna_fn_FunctionalInsert,
-       Vcanna_fn_QuotedInsert, Vcanna_fn_JapaneseMode, Vcanna_fn_AlphaMode,
-       Vcanna_fn_HenkanNyuryokuMode, Vcanna_fn_Forward, Vcanna_fn_Backward,
-       Vcanna_fn_Next, Vcanna_fn_Prev, Vcanna_fn_BeginningOfLine,
-       Vcanna_fn_EndOfLine, Vcanna_fn_DeleteNext, Vcanna_fn_DeletePrevious,
-       Vcanna_fn_KillToEndOfLine, Vcanna_fn_Henkan, Vcanna_fn_Kakutei,
-       Vcanna_fn_Extend, Vcanna_fn_Shrink, Vcanna_fn_AdjustBunsetsu,
-       Vcanna_fn_Quit, Vcanna_fn_ConvertAsHex, Vcanna_fn_ConvertAsBushu,
-       Vcanna_fn_KouhoIchiran, Vcanna_fn_BubunMuhenkan, Vcanna_fn_Zenkaku,
-       Vcanna_fn_Hankaku, Vcanna_fn_ExtendMode, Vcanna_fn_ToUpper,
-       Vcanna_fn_Capitalize, Vcanna_fn_ToLower, Vcanna_fn_Hiragana,
-       Vcanna_fn_Katakana, Vcanna_fn_Romaji, Vcanna_fn_BaseHiragana,
-       Vcanna_fn_BaseKatakana, Vcanna_fn_BaseEisu, Vcanna_fn_BaseZenkaku,
-       Vcanna_fn_BaseHankaku, Vcanna_fn_BaseKana, Vcanna_fn_BaseKakutei,
-       Vcanna_fn_BaseHenkan, Vcanna_fn_BaseHiraKataToggle,
-       Vcanna_fn_BaseZenHanToggle, Vcanna_fn_BaseKanaEisuToggle,
-       Vcanna_fn_BaseKakuteiHenkanToggle, Vcanna_fn_BaseRotateForward,
-       Vcanna_fn_BaseRotateBackward, Vcanna_fn_Touroku, Vcanna_fn_HexMode,
-       Vcanna_fn_BushuMode, Vcanna_fn_KigouMode, Vcanna_fn_Mark,
-       Vcanna_fn_TemporalMode, Vcanna_key_Nfer, Vcanna_key_Xfer,
-       Vcanna_key_Up, Vcanna_key_Left, Vcanna_key_Right, Vcanna_key_Down,
-       Vcanna_key_Insert, Vcanna_key_Rollup, Vcanna_key_Rolldown,
-       Vcanna_key_Home, Vcanna_key_Help, Vcanna_key_KP_Key,
-       Vcanna_key_Shift_Nfer, Vcanna_key_Shift_Xfer, Vcanna_key_Shift_Up,
-       Vcanna_key_Shift_Left, Vcanna_key_Shift_Right, Vcanna_key_Shift_Down,
-       Vcanna_key_Cntrl_Nfer, Vcanna_key_Cntrl_Xfer, Vcanna_key_Cntrl_Up,
-       Vcanna_key_Cntrl_Left, Vcanna_key_Cntrl_Right, Vcanna_key_Cntrl_Down
-
-1998-07-16  Jan Vroonhof  <vroonhof@math.ethz.ch>
-
-       * event-Xt.c (x_to_emacs_keysym): Return nil for modifier keysyms.
-       (x_event_to_emacs_event): Let x_to_emacs_keysym check for modifier
-       keys thus no longer considering all keysyms on a key.
-
-1998-07-19  SL Baur  <steve@altair.xemacs.org>
-
-       * XEmacs 21.2-beta1 is released.
-
-1998-07-12  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
-
-       * eldap.c (Fldap_search_internal): When converting the list of
-       attributes to search Copy the final 0 from Lisp strings to C
-       strings.
-       Check base, not Vldap_default_base as a a string
-
-1998-07-13  Jonathan Harris  <jhar@tardis.ed.ac.uk>
-
-       * nt.c: Remove Vstdio_str; already defined in console-stream.c.
-
-       * unexnt.c: Unconditionally define bss_start and bss_size, and
-         ensure that they don't go in the .bss section.
-
-1998-07-17  Olivier Galibert  <galibert@pobox.com>
-
-       * glyphs-x.c (convert_EImage_to_XImage):  Fix previous patch (conv
-       byte order is dependant  of  the local  byte order).
-       From Takeshi Hagiwara <hagiwara@ie.niigata-u.ac.jp>
-
-1998-07-18  SL Baur  <steve@altair.xemacs.org>
-
-       * glyphs-msw.c (mswindows_resource_normalize): Qresource ->
-       Qmswindows_resource.
-       From Jonathan Harris <jhar@tardis.ed.ac.uk>
-
-1998-07-12  SL Baur  <steve@altair.xemacs.org>
-
-       * general.c (syms_of_general): Add defsymbol for Qresource.
-
-       * glyphs-msw.c (vars_of_glyphs_mswindows): Rename Qresource to
-       Qmswindows_resource.
-       (TopLevel): Rename 'resource image format to 'mswindows_resource.
-       (mswindows_resource_validate): Rename.
-       (mswindows_resource_normalize): Rename.
-       (mswindows_resource_possible_dest_types): Rename.
-       (mswindows_resource_instantiate): Rename.
-       (image_instantiator_format_create_glyphs_mswindows): Replace
-       `resource' with `mswindows.resource'.
-
-       * XEmacs 21.0-pre5 is released.
-
-1998-07-10  SL Baur  <steve@altair.xemacs.org>
-
-       * mule-wnnfns.c (Fwnn_open): Correctly trap on misdefined Wnn
-       server type in environment.
-       Use alloca-ed strings instead of tiny fixed size ones.
-
-1998-07-09  SL Baur  <steve@altair.xemacs.org>
-
-       * XEmacs 21.0-pre4 is released.
-
-1998-07-01  James N. Potts  <jnpotts@plutonium.net>
-
-       * fileio.c: (expand_file_name): under win32: Don't treat names
-       as UNC names if a drive letter has been specified.  If a drive
-       has been specified, strip out extra directory-seperators that
-       reportedly cause problems under Win95.
+       * gui.c (copy_gui_item_tree): Return a value in all cases
 
-1998-07-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+2000-03-21  Didier Verna  <didier@xemacs.org>
 
-       * windowsnt.h: Define DUMP_SEPARATE_SECTION when building with
-         MSVC >= 5.0. Put emacs init and zero-init data in a special
-         section of the executable when this is defined.
+       * config.h.in: move INCLUDE_GLUE_1 and INCLUDE_GLUE_2 here from
+       lwlib/config.h.in.
+       (SMART_INCLUDE): new macro.
+       (POSTGRES_INCLUDE): new macro to include postgresql headers from
+       the proper location.
 
-       * unexnt.c, ntheap.h:
-         Removed unused find_section() and get_section_size().
+       * postgresql.c: use it.
 
-       * unexnt.c:
-         Fix up the executable's checksum after dumping otherwise the
-         profiler complains.
-         When DUMP_SEPARATE_SECTION is defined, don't need to dump
-         zero-init data separately from init data. Dump emacs data
-         into a special section of the executable.
-         When DUMP_SEPARATE_SECTION not defined, dump .bss up to
-         my_ebss instead of up to the end of bss.
+       * inline.c: ditto.
 
-1998-07-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+2000-03-24  Andy Piper  <andy@xemacs.org>
 
-       * filelock.c: Removed Vconfigure_lock_directory - already
-         defined in emacs.c.
+       * gutter.c (redraw_exposed_gutters): must be "in display" when we
+       do this.
 
-       * frame-msw.c: Removed Qinitially_unmapped and Qpopup - already
-         defined in frame.c and general.c respectively.
+2000-03-24  Andy Piper  <andy@xemacs.org>
 
-       * glyphs-msw.c: Removed Qresource - already defined in
-         general.c.
+       * redisplay-output.c (compare_runes): use image_instance_changed
+       to detect changes. Do not depend on glyphs_changed, only depend on
+       dirtiness.
+        (redisplay_output_layout): add debug messages.
+       (compare_runes): ditto.
 
-1998-07-05  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
+       * glyphs.h: declare new functions.
+       (struct Lisp_Image_Instance): remove percent and associated
+       accessors.
 
-       * eldap.c (Fldap_search_internal): Docstring fixes
+       * gui.h: declare new copying functions.
 
-1998-07-04  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+       * gui.c (copy_gui_item_tree): new function.
+       (copy_gui_item): new function.
+       (gui_item_id_hash): revert to standard hash.
+       (gui_item_hash): ditto.
+       (gui_item_hash_internal): deleted.
+       (mark_gui_item): mark value.
+       (gui_item_add_keyval_pair): add value.
+       (gui_item_init): ditto.
+       (gui_add_item_keywords_to_plist): ditto.
+       (gui_item_equal): ditto.
+       (syms_of_gui): add Q_value.
 
-       * nt.c (init_environment): Removed unused PRELOAD_WINSOCK,
-         EMACSDOC and TERM variables. Added EMACSDEBUGPATHS,
-         EMACSPACKAGEPATH and INFOPATH variables.
-         Removed unused get_emacs_configuration function.
+       * glyphs-x.c (x_progress_gauge_update): use pending items and
+       value for setting the state.
+       (x_update_widget): don't set items from pending here.
 
-       * s/windowsnt.h: Don't define EMACS_CONFIGURATION here because
-         it is now defined at build-time by the makefile.
+       * glyphs-widget.c (update_widget): update items here.
+       (progress_gauge_set_property): use items for storing value. Put
+       new value in pending items.
 
-1998-07-01  James N. Potts  <jnpotts@plutonium.net>
+       * glyphs-msw.c (mswindows_progress_gauge_update): use pending
+       items for new value. Convert percent -> value.
+       (mswindows_tab_control_update): don't update items here.
 
-       * fileio.c: (expand_file_name): under win32: Don't treat names as
-       UNC names if a drive letter has been specified.  If a drive has
-       been specified, strip out extra directory-seperators that
-       reportedly cause problems under Win95.
+       * glyphs.c (Fupdate_widget_instances): use image_instance_changed.
+       (update_subwindow): ditto.
+       (image_instance_changed): new function. Compare hash values and
+       past and present widget items.
+       (image_instantiate): We more careful about where we instantiate
+       things.
+       (image_instantiate): add error checking.
 
-1998-07-05  Andy Piper  <andyp@parallax.co.uk>
+       * gutter.c (syms_of_gutter): use -hook.
 
-       * faces.c (complex_vars_of_faces): for the gui-element face don't
-       fallback to the default face, instead provide reasonable default
-       fallbacks that were previously hardcoded elsewhere.
+2000-03-20  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-1998-07-06  Olivier Galibert  <galibert@pobox.com>
+       * console-tty.c (Fset_console_tty_input_coding_system): Use
+       Qkeyboard.
+       (Fset_console_tty_output_coding_system): Use Qterminal.
+       (tty_init_console): Use Qkeyboard and Qterminal.
 
-       * glyphs-x.c (convert_EImage_to_XImage): Fix pixel writing problem
-       when the X server endianness is different than the client's one.
+2000-03-21  Ben Wing  <ben@xemacs.org>
 
-1998-06-29  Kyle Jones  <kyle_jones@wonderworks.com>
+       * ntproc.c (create_child): remove bogus HAVE_NTGUI's.
+       From Mike Alexander <mta@arbortext.com>.
 
-       * eval.c (run_hook_with_args_in_buffer): Check
-         default (non-buffer-local) value of hook for
-         nil before treating it as a function.  Don't initialize
-         the `globals' variable twice.
+2000-03-21  Ben Wing  <ben@xemacs.org>
 
-1998-06-24  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+       * event-msw.c (mswindows_need_event): Horrible kludge to fix
+       process brokenness.  Proper implementation to come.
+       * callproc.c:
+       Rename call-process-internal to old-call-process-internal.
+       New impl. in process.el.
 
-       * fileio.c: Don't do directory seperator canonicalisation in
-         substitute-in-file-name because we don't know that the
-         filename refers to a local file.
+2000-03-21  Martin Buchholz  <martin@xemacs.org>
 
-1998-06-24  Adrian Aichner  <aichner@ecf.teradyne.com>
+       * Makefile.in.in: Coalesce HAVE_NATIVE_SOUND code fragments.
 
-       * process-nt.c (nt_create_process): Try appending the standard
-         executable file extensions to the filename if none supplied.
+2000-03-20  Andy Piper  <andy@xemacs.org>
 
-1998-06-29  SL Baur  <steve@altair.xemacs.org>
+       * glyphs.c (full_list_hash): make hashes of the same elements in
+       different orders return different values.
 
-       * fileio.c (Fsubstitute_in_file_name): Enable double slash notation
-       for cygwin32.
-       From Keisuke Mori <ksk@ntts.com>
+2000-03-20  Martin Buchholz <martin@xemacs.org>
 
-1998-06-24  Andy Piper  <andyp@parallax.co.uk>
+       * XEmacs 21.2.32 is released.
 
-       * toolbar-msw.c (mswindows_output_toolbar): only enable masked
-       images if we have masks. This handles the xbm case (have masks)
-       and avoids overuse of resources in the xpm case (generally no masks).
-       Don't output small toolbars.
+2000-03-20  Martin Buchholz  <martin@xemacs.org>
 
-1998-06-29  Kyle Jones  <kyle_jones@wonderworks.com>
+       * buffer.h (DFC_ALLOCA_USE_CONVERTED_DATA):
+       (DFC_MALLOC_USE_CONVERTED_DATA):
+       Add aliasing-safe casts to allow use with char* or unsigned char*
+       lvalues.
 
-       * eval.c (run_hook_with_args_in_buffer): Don't treat
-         the default value of a buffer local hook as a list of
-         hooks unless it is both a cons and the car of that cons
-         is not Qlambda.
+       * eldap.c (Fldap_open):
+       (Fldap_search_basic):
+       (Fldap_add):
+       (Fldap_modify):
+       Make C++-compilable.
+       Make sure GCPRO'ed variables are initialized.
+       Use temp variables to avoid repeated calls to Flength.
 
-1998-06-29  SL Baur  <steve@altair.xemacs.org>
+2000-03-16  Martin Buchholz  <martin@xemacs.org>
 
-       * extents.c: Email address for Ben Wing is ben@xemacs.org.
-       * process-unix.c: Ditto.
-       * mule-coding.h: Ditto.
-       * mule-coding.c: Ditto.
-       * mule-charset.c: Ditto.
-       * mule-charset.h: Ditto.
-       * file-coding.c: Ditto.
-       * file-coding.h: Ditto.
+       * sysfile.h:
+       Make sure PATH_MAX is always defined.
+       Include limits.h for PATH_MAX.
+       Deprecate use of MAXPATHLEN.
 
-1998-06-22  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+2000-03-10  Martin Buchholz  <martin@xemacs.org>
 
-       * event-msw.c: Guard against recursion when freeing
-         FRAME_MSWINDOWS_TARGET_RECT struture in WM_SIZE processing.
+       * emacs.c: Add reinit_vars_of_fileio.
+       * symsinit.h: Add reinit_vars_of_fileio.
+       * fileio.c (reinit_vars_of_fileio): New.
+       * fileio.c (Fmake_temp_name):
+       Initialize temp_name random number from microseconds to make
+       collisions even less likely.  Initialize always at process startup
+       time.  (make-temp-name) used to return the same file name twice in
+       a row when PDUMP.
+       Random stylistic fiddling.
+       Comment fixes.
 
-       * frame-msw.c: Don't set WS_VISIBLE attribute on first frame.
-         Call ShowWindow twice in init_frame_3 to get round runemacs
-         weirdness.
+2000-03-20  Andy Piper  <andy@xemacs.org>
 
-1998-06-27  Hrvoje Niksic  <hniksic@srce.hr>
+       * glyphs.c (image_instantiate): allow text glyphs to be
+       instantiated in the minibuffer window.
 
-       * scrollbar.c (vertical_scrollbar_changed_in_window): Ditto.
+2000-03-19  Andy Piper  <andy@xemacs.org>
 
-       * winslots.h: Rename.
+       * glyphs.c (image_instance_hash): be careful about which items we
+       hash on.
 
-       * window.c (specifier_vars_of_window): Renamed
-       vertical-divider-draggable-p to vertical-divider-always-visible-p,
-       as suggested by Ben Wing.
-       (specifier_vars_of_window): Fix docstrings.
+       * glyphs-widget.c (tab_control_set_property): record into pending
+       items rather than the actual items.
 
-1998-06-22  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
+       * glyphs-x.c (x_update_widget): use pending items to update with.
 
-       * unexaix.c: Line number information works correctly again.
+       * glyphs-msw.c (mswindows_tab_control_update): use pending items
+       to update with.
 
-1998-06-22  Olivier Galibert  <galibert@pobox.com>
+       * glyphs.c (mark_image_instance): mark pending items.
 
-       * emacs.c (__sti__iflPNGFile_c___): Added. See comment. Cry.
+       * window.c (Fset_window_configuration): record the buffer.
+       (Fselect_window): totally revert previous change which breaks many
+       things.
 
-1998-06-21  Martin Buchholz  <martin@xemacs.org>
+2000-03-18  Andy Piper  <andy@xemacs.org>
 
-       * editfns.c (get_home_directory): ANSIfy.
-       XEmacs is compilable under C *and* C++.
-       It's XEmacs, not Xemacs!
+       * glyphs-msw.c (mswindows_tab_control_update): force selected
+       item.
 
-1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+       * glyphs.c (image_instantiate): don't allow the minibuffer as a
+       window domain cache, otherwise we get inconsistencies at
+       startup. There is something fishy at startup which can lead to the
+       minibuffer being the selected window when the gutter content is
+       instantiated.
 
-       * console-msw.h: added a list of fonts to device data.
+       * gui.c (parse_gui_item_tree_list): add probably unnecessary
+       gcpros.
+       (parse_gui_item_tree_children): ditto.
+       (parse_gui_item_tree_item): ditto.
 
-       * device-msw.c: enumerate list of available fonts in
-         mswindows_init_device. Free list in mswindows_delete_device.
+       * glyphs.c (Fupdate_widget_instances): return something.
 
-       * objects-msw.c: Added helper function match_font used by
-         mswindows_initialize_font_instance and mswindows_list_fonts.
-         Allow a charset to be specified in a font string, even if
-         previous fields havn't been specified.
+2000-03-18  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-1998-06-23  Greg Klanderman  <greg@alphatech.com>
+       * window.c (Fselect_window): Undo 2000-03-17 change.
 
-       * indent.c (column_at_point): column cache bugfix.
-       Set last_known_column_point to the buffer position for
-       which the column was requested, not buffer's point.
+2000-03-17  SL Baur  <steve@musashimaru.m17n.org>
 
-       * redisplay.c (decode_mode_spec): for current-column, show
-       window's point's column, not buffer's point's column.
+       * postgresql.c (Fpq_setenv): Remove this turkey when linking
+       against v7.0 libraries.  Insta-coredump city until the postgres
+       folks fix it.
 
-1998-06-23  Andy Piper  <andyp@parallax.co.uk>
+2000-03-17  Andy Piper  <andy@xemacs.org>
 
-       * menubar-msw.c (mswindows_handle_wm_command): use
-       enqueue_misc_user event rather than
-       mswindows_enqueue_msic_user_event to fix customize problems. Add some
-       checks that X does.
+       * faces.c (complex_vars_of_faces): don't give the widget face an
+       inherited background pixmap.
 
-       * console-msw.h: declare mswindows_enqueue_magic_event.
+       * glyphs-msw.c (mswindows_tab_control_instantiate): select the
+       selected item.
 
-       * event-msw.c (mswindows_enqueue_magic_event): make global.
+       * event-stream.c (Fdispatch_non_command_events): return something.
 
-1998-06-24  Hrvoje Niksic  <hniksic@srce.hr>
+       * gutter.c (output_gutter): use widget face.
+       (clear_gutter): ditto.
 
-       * line-number.c (LINE_NUMBER_FAR): Reverted to 16384.
-       (buffer_line_number): Use EMACS_INT_MAX instead of random LOTS.
-       (add_position_to_cache): Use EMACS_INT instead of int.
+       * NEWS: adjust again.
 
-1998-06-21  Olivier Galibert  <galibert@pobox.com>
+       * window.c (Fselect_window): make sure this runs to completion to
+       avoid oddities with Fset_window_configuration.
+       (Fcurrent_window_configuration): in general do not save the
+       minibuffer as the selected window.
 
-       * lisp-disunion.h (XMARKBIT): Have XMARKBIT return something
-       suitable for an int used as a boolean (btw, C sucks.).
+       * glyphs.h (IMAGE_INSTANCE_HASH_DEPTH): increase.
 
-1998-06-18  Andy Piper  <andyp@parallax.co.uk>
+2000-03-16  Olivier Galibert  <galibert@pobox.com>
 
-       * object-msw.c: remove warnings.
+       * emacs.c (Frunning_temacs_p): Revert previous patch.
+       (main_1): Reinitialize running_temacs_argc if pdump_load succeeds.
 
-       * device-msw.c: #define wrongly named cygwin structure elements.
+2000-03-16  Andy Piper  <andy@xemacs.org>
 
-       * s/cygwin32.h: define DEMI_BOLD
+       * glyphs-x.c (x_tab_control_update): if no widget values then
+       return.
 
-1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+       * NEWS: update for new features.
 
-       * redisplay-msw.c: new function mswindows_apply_face_effects.
-         This is called by output_string and output_cursor to display
-         underline and strikeout on faces.
+       * event-Xt.c (emacs_Xt_force_event_pending): new function. Post a
+       synthetic event to the native system.
+       (reinit_vars_of_event_Xt): set force_event_pending to
+       emacs_Xt_force_event_pending.
 
-1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+       * events.h (struct event_stream): add force_event_pending.
 
-       * console-msw.h: added a list of fonts to device data.
+       * specifier.c (recompute_one_cached_specifier_in_window): add
+       comment.
 
-       * device-msw.c: enumerate list of available fonts in
-         mswindows_init_device. Free list in mswindows_delete_device.
+       * redisplay.c (redisplay_frame): don't call
+       update_frame_subwindows. Reset subwindow cachels when
+       subwindows_changed, removing this was an optimization too far.
 
-       * objects-msw.c: Added helper function match_font used by
-         mswindows_initialize_font_instance and mswindows_list_fonts.
-         Allow a charset to be specified in a font string, even if
-         previous fields havn't been specified.
+       * redisplay-output.c (compare_runes): reorganize so that we catch
+       glyph changes when we want them. Set optimize_output when this
+       would help layouts.
+       (redisplay_output_layout): remove frame_really_changed, use
+       optimize_output instead.
 
-1998-06-15  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+       * redisplay-msw.c (mswindows_output_display_block): reset
+       optimize_output after outputting a glyph.
+       * redisplay-x.c (x_output_display_block): ditto.
+       * redisplay-tty.c (tty_output_display_block): ditto.
 
-       * objects-msw.c:
-         Removed compilation warnings from mswindows_string_to_color.
-         mswindows_list_fonts returns a more general bogus font.
-         New lisp-visible function mswindows-color-list.
+       * gutter.c: (specifier_vars_of_gutter): use new spec changed
+       functions.
+       (gutter_specs_changed): do specific gutter positions.
+       (top_gutter_specs_changed): new function. Only update the
+       specified gutter specs.
+       (bottom_gutter_specs_changed): ditto.
+       (left_gutter_specs_changed): ditto.
+       (right_gutter_specs_changed): ditto.
+
+       * gui.c (gui_item_hash_internal): new function, does a real hash.
+       (gui_item_id_hash): use it.
+       (gui_item_hash): hash the eval'ed gui_item.
+
+       * gui-x.c (popup_selection_callback): send an eval event to call
+       Fupdate_widget_instances.
+
+       * gui-msw.c (mswindows_handle_gui_wm_command): send an eval event
+       to call Fupdate_widget_instances.
+
+       * glyphs.h (struct Lisp_Image_Instance): add optimize_output flag.
+       (IMAGE_INSTANCE_OPTIMIZE_OUTPUT): access it.
+
+       * glyphs.c: (update_frame_subwindows): deleted.
+       (Fupdate_widget_instances): new function for updating the dirty
+       state of widgets that might have changed.
+       (syms_of_glyphs): add Qupdate_widget_instances.
+       (full_list_hash): hash a list completely.
+       (image_instance_hash): use it for items and properties.
+
+       * frame-msw.c (mswindows_size_frame_internal): remove unused
+       variable.
+
+       * faces.h (struct face_cachel): fix comment.
+
+       * event-stream.c (Fdispatch_non_command_events): new
+       function. Process non-command events, forcing an event cycle
+       beforehand.
+       (syms_of_event_stream): declare.
+       (event_stream_force_event_pending): new function. Force an event
+       on the native event queue so that an event cycle will occur next
+       time we check.
 
-1998-06-19  David Bush <david.bush@adn.alcatel.com>
+       * event-msw.c:
+       (struct ntpipe_shove_stream):
+       (mswindows_enqueue_dispatch_event):
+       (mswindows_dequeue_dispatch_event):
+       (mswindows_cancel_dispatch_event):
+       (mswindows_pump_outstanding_events):
+       (mswindows_drain_windows_queue):
+       (mswindows_handle_paint):
+       (mswindows_wnd_proc):
+       (mswindows_key_to_emacs_keysym):
+       (get_process_input_waitable):
+       (emacs_mswindows_delete_stream_pair): re-indent file.
+       (mswindows_need_event): do not process further fds if the windows
+       fd is set, otherwise you get endless XM_BUMPQUEUE cycles. This
+       fixes the 100% cpu problem.
+       (reinit_vars_of_event_mswindows): set force_event_pending to 0.
+
+2000-03-15  Olivier Galibert  <galibert@pobox.com>
+
+       * alloc.h: New.
+       * dumper.h: New.
+       * dumper.c: New.
+
+       * emacs.c: Moved dump file searching to dumper.c.
+       (Frunning_temacs_p): Fixed.
+
+       * alloc.c: Moved everything pdump-related to dumper.c.  Removed
+       last_lrecord_type_index_assigned.
+
+2000-02-20  Olivier Galibert  <galibert@pobox.com>
+
+       * symsinit.h: Added reinit parameter to init_console_stream
+       declaration.
 
-       * editfns.c (Fuser_login_name): Modify to user new function
-       user_login_name.
-       (user_login_name): C only function to avoid Lisp object overhead
-       Returns "unknown" instead of nil in Cygwin environment
+       * lisp.h: Added file parameter to pdump_load declaration.
+
+       * emacs.c (main_1): Added -nd/--nodump-file and -sd/--show-dump-id
+       support.  Added dump file searching.
+
+       * config.h.in: Added EMACS_PROGNAME.
+
+       * console-stream.c (init_console_stream): Fix reinitialisation
+       when running from temacs.
+
+       * alloc.c (pdump): Add id support.
+       (pdump_load): Add file parameter and signature/id support.
+
+       * Makefile.in.in: Add full pdump support.
+
+2000-03-15  SL Baur  <steve@musashimaru.m17n.org>
+
+       * postgresql.c: Update documentation to reflect latest code
+       status.
+       (print_result): Show tuple counts in printed representation when
+       appropriate.
+       (Fpq_put_nbytes): MULE-ize.
+       (Fpq_get_line_async): Ditto.
+
+2000-03-14  SL Baur  <steve@musashimaru.m17n.org>
+
+       * postgresql.c (Fpq_lo_import): Fix return value.
+       Suggested by: Kenji Itoh <keit@tpj.co.jp>.
+
+2000-03-13  Ben Wing  <ben@xemacs.org>
+
+       * alloc.c (pdump_load):
+       Fix compile warning under mswin.
+
+2000-03-14  SL Baur  <steve@musashimaru.m17n.org>
+
+       * postgresql.c: Mule-ization, bug fixes.
+       Use PG_CODING to encapsulate coding system name changes.
+       Backport a version of TO_EXTERNAL format for 21.1/InfoDock.
+       (pg-coding-system): Create.
+
+       (Fpq_conn_defaults): Mule-ize.
+       (Fpq_connectdb): Mule-ize & bug fix.
+       (Fpq_connect_start): Mule-ize.
+       (Fpq_set_client_encoding): Mule-ize.
+       (Fpq_finish): Document `DEAD' connection status.
+       (Fpq_clear): Ditto.
+       (Fpq_pgconn): Mule-ize.
+       (Fpq_exec): Mule-ize & bug fix.
+       (Fpq_send_query): Ditto.
+       (Fpq_get_result): Ditto.
+       (Fpq_res_status): Mule-ize.
+       (Fpq_result_error_message): Mule-ize.
+       (Fpq_ntuples): fix comments.
+       (Fpq_fname): Mule-ize.
+       (Fpq_fnumber): Mule-ize.
+       (Fpq_ftype): fix comments.
+       (Fpq_get_value): Mule-ize.
+       (Fpq_cmd_status): Ditto.
+       (Fpq_cmd_tuples): Ditto.
+       (Fpq_oid_value): Ditto.
+       (Fpq_notifies): Ditto.
+       (Fpq_lo_import): Ditto.
+       (Fpq_lo_export): Ditto.
+       (Fpq_get_line): Ditto.
+       (Fpq_put_line): Mule-ize and bug fix.
+       (syms_of_postgresql): Fix ifdef'ing, add pg-coding-system.
+
+2000-03-10  SL Baur  <steve@musashimaru.m17n.org>
+
+       * postgresql.c (vars_of_postgresql): Mule-ize.
+       (Fpq_conn_defaults): Ditto.
+
+2000-03-12  Ben Wing  <ben@xemacs.org>
+
+       * alloc.c (Fmake_byte_code):
+       * alloc.c (debug_string_purity_print):
+       * alloc.c (pdump_backtrace):
+       * alloc.c (pdump_get_indirect_count):
+       * alloc.c (pdump_register_sub):
+       * alloc.c (pdump_register_object):
+       * alloc.c (pdump_register_struct):
+       * alloc.c (pdump_dump_data):
+       * alloc.c (pdump_reloc_one):
+        Minor cleanups.
+
+       * console-msw.c:
+       * console-msw.c (GetConsoleHwnd):
+       * console-msw.c (msw_hide_console):
+       * console-msw.c (msw_show_console):
+       * console-msw.c (msw_ensure_console_buffered):
+       * console-msw.c (msw_output_console_string):
+       * console-msw.c (console_type_create_mswindows):
+
+        a) Added functions to manipulate the console window for use with
+        shell support.
+
+        b) Added support for writing text to the console, which is now
+        used under Windows when xemacs is not being run non-interactively,
+        to write text that would otherwise be destined for stdout because
+        under these circumstances, text written to stdout tends to
+        disappear and not be seen.
+
+        * console-msw.h:
+       * event-Xt.c:
+       * event-Xt.c (x_event_to_emacs_event):
+       * event-Xt.c (describe_event_window):
+       * events-mod.h (XEMACS_MOD_CONTROL):
+       * events.c:
+       * events.c (Fmake_event):
+       * events.c (character_to_event):
+       * events.c (event_to_character):
+       * events.c (format_event_object):
+       * events.c (Fevent_modifiers):
+       * events.h:
+       * events.h (struct key_data):
+       * events.h (struct button_data):
+       * events.h (struct misc_user_data):
+       * frame-x.c (Fcde_start_drag_internal):
+       * frame-x.c (Foffix_start_drag_internal):
+       * gpmevent.c (Freceive_gpm_event):
+       * keymap.c:
+       * keymap.c (bucky_sym_to_bucky_bit):
+       * keymap.c (control_meta_superify):
+       * keymap.c (make_key_description):
+       * keymap.c (keymap_lookup_directly):
+       * keymap.c (create_bucky_submap):
+       * keymap.c (keymap_store):
+       * keymap.c (define_key_check_and_coerce_keysym):
+       * keymap.c (define_key_parser):
+       * keymap.c (define_key_alternate_name):
+       * keymap.c (Fdefine_key):
+       * keymap.c (raw_lookup_key_mapper):
+       * keymap.c (struct map_keymap_unsorted_closure):
+       * keymap.c (map_keymap_unsorted_mapper):
+       * keymap.c (map_keymap_sort_predicate):
+       * keymap.c (map_keymap_sorted):
+       * keymap.c (accessible_keymaps_mapper_1):
+       * keymap.c (where_is_recursive_mapper):
+       * keymap.c (describe_map_mapper):
+       * keymap.c (describe_map_sort_predicate):
+       * keymap.c (describe_map):
+       * keymap.c (complex_vars_of_keymap):
+       And a number of other files, the key modifier preprocessor
+       constants that xemacs uses have names that conflict with constants
+       defined under MS Windows for other purposes, so they were renamed
+       to begin with the prefix XEMACS_. The variables that hold such
+       modifiers were changed to consistently be of type int to fix
+       various compile warnings.
+
+       * console.c (complex_vars_of_console):
+       * device.c:
+       * device-msw.c:
+       * device-msw.c (mswindows_finish_init_device):
+       * device-msw.c (msw_get_workspace_coords):
+       * device-msw.c (mswindows_device_system_metrics):
+       and various other files, added support for a new
+        device property called offset-workspace which returns the position
+        of the upper left corner of the workspace area and goes along with
+        the existing size-workspace property.
 
-       * fileio.c (Fexpand_file_name): Treat "~" and "~user" as
-       equivalent for current user in Cygwin environment. Use new
-       function user_login_name to get username.
+       * dialog-msw.c:
+       * dialog-msw.c (push_bufbyte_string_as_unicode):
+       * dialog-msw.c (mswindows_popup_dialog_box):
+        Added support for XEmacs-style accelerator specifications in
+        button text.  Note: I didn't add support for this under X Windows,
+        and somebody needs to do this.
 
-       * lisp.h: Declare user_login_name
+       * dialog.c:
+       * dialog.c (Fpopup_dialog_box):
+        Documented the support for accelerators that was just mentioned.
 
-1998-06-18  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
+       editfns.c (get_home_directory): Changed behavior under Windows
+       when HOME not defined; former behavior was irretrievably broken.
 
-       * unexaix.c (make_hdr): Fixed bias computations so debugging info
-       works again.
-       Some other insignificant nitpicks.
+       * emacs.c:
+       * emacs.c (main_1):
+       * emacs.c (main):
+       * minibuf.c (clear_echo_area_internal):
+       * minibuf.c (echo_area_append):
+       * print.c:
+       * print.c (std_handle_out_external):
+       * print.c (std_handle_out_va):
+       * print.c (fatal):
+       * print.c (write_string_to_stdio_stream):
+       * print.c (output_string):
+       * print.c (debug_print):
+       * print.c (debug_backtrace):
+       * print.c (debug_short_backtrace):
+        Cleaned up the code that prints text to stdout so that this can be
+        changed to output into a console window instead under MS Windows,
+        as described above.
 
-1998-06-18  Andy Piper  <andyp@parallax.co.uk>
+       * eval.c:
+       * eval.c (DEFEND_AGAINST_THROW_RECURSION):
+       * eval.c (internal_catch):
+       * eval.c (unwind_to_catch):
+       * eval.c (throw_or_bomb_out):
+       * eval.c (condition_case_1):
+       * eval.c (signal_1):
+       * eval.c (check_error_state_sanity):
+       * eval.c (call_with_suspended_errors_1):
+       * eval.c (call_with_suspended_errors):
+       * eval.c (reinit_vars_of_eval):
+       Added code to catch throw loops and check for a pesky bug that may
+       be gone now.
 
-       * toolbar-msw.c (mswindows_output_toolbar): specify ILC_MASK when
-       creating the image list and make sure he bk color is transparent.
+       * event-msw.c:
+       * event-msw.c (key_needs_default_processing_p):
+       * event-msw.c (mswindows_wnd_proc):
+       * event-msw.c (mswindows_modifier_state):
+       * event-msw.c (emacs_mswindows_quit_p):
+       * event-msw.c (vars_of_event_mswindows):
+        a) Added support for using the alt key to select menu items as is
+        standard under MS Windows.  This is controlled using the variable
+        menu-accelerator-enabled, just like under X Windows.  There is an
+        option on the options menu to turn this support on.  I really
+        think that it should be on by default under Windows, but I'm not
+        going to make this change yet.
 
-1998-06-18  Jan Vroonhof  <vroonhof@math.ethz.ch>
+        b)  Added support for dynamic display size changes under Windows.
 
-       * event-Xt.c (emacs_Xt_remove_timeout): Also remove timeout from
-       completed_timeouts. The timer could have expired.
+       * event-stream.c:
+       * event-stream.c (maybe_echo_keys):
+       * event-stream.c (Fnext_event):
+       * event-stream.c (command_builder_find_leaf):
+       * event-stream.c (lookup_command_event):
+       * event-stream.c (execute_command_event):
+       * event-stream.c (pre_command_hook):
+       * event-stream.c (post_command_hook):
+       * event-stream.c (syms_of_event_stream):
+       * event-stream.c (vars_of_event_stream):
+       * event-stream.c (complex_vars_of_event_stream):
+       * events.h (struct command_builder):
+
+        a) Tried to clean up a little bit the horribly written x-specific
+        accelerator code that crept into this file.  I moved this code
+        into menubar-x.c where it belongs. I also needed to move the
+        command builder structure into the file events.h because it is
+        accessed directly by this accelerator code.  What I didn't do, but
+        which should be done at some point, is to properly abstract this
+        code using device methods instead of the kludgy way that it
+        currently hooks into the event code.
+
+        b) Added the lisp variables this-command-properties and
+        last-command- properties, which should be used to synchronize two
+        adjacent commands in preference to playing games with the variable
+        this-command, which is typically what happens.
+
+        c) Added some slightly nasty code to hook into the lisp support
+        for shifted- motion-key selection.  This is actually necessary for
+        somewhat complicated reasons, which are described in
+        simple.el. (NB: I think the proper thing would be to have the code
+        that calls the pre and post command hooks also call out to generic
+        lisp functions in simple.el, where all built-in stuff could be
+        added.  I will think about this more.)
+
+       * event-unixoid.c (poll_fds_for_input):
+        * lread.c (readchar):
+       * redisplay-tty.c (tty_clear_frame):
+       * redisplay-x.c (x_get_gc):
+       * signal.c (interrupt_signal):
+       And a whole bunch of other files: fixed up places that printed
+       directly to stderr to instead call the function stderr_out so that
+       the changes I made under Windows work correctly.
+
+       * filemode.c (mode_string):
+       Warning fixes.
+
+       * frame-msw.c:
+       * frame-msw.c (mswindows_size_frame_internal):
+        Fixed the computation of frame size and position to keep the frame
+        within the workspace area, rather than within the physical
+        dimensions of the screen, so that the frame doesn't overlap window
+        manager decorations, such as the start menu and toolbar, typically
+        at the bottom of the screen.
+
+       * frame.c (vars_of_frame):
+        Changed the default frame title format under MS Windows to consist
+        of buffername-XEmacs, which is standard under MS Windows.  I think
+        it might be a good idea to change this everywhere because I think
+        it is superior to the current frame title format, but this is the
+        kind of change that is likely to cause some people to get annoyed,
+        so I'm not making it.
+
+       * glyphs-eimage.c (png_instantiate): Fixed some compile warnings.
+
+       * gui-msw.c (mswindows_handle_gui_wm_command):
+        Fixed compile warnings.
+
+       * gui-x.c:
+       * gui-x.c (strdup_and_add_accel):
+       * gui-x.c (button_item_to_widget_value):
+       * gui-x.h:
+        Added code to automatically put an accelerator onto the beginning
+        of menu items that don't have one as is now the standard, and is
+        described more later.  Also fixed things so that the menu item
+        name can be an evaluated expression, again a new standard.
 
-1998-06-17  Andy Piper  <andyp@parallax.co.uk>
+       * gui.c:
+       * gui.c (gui_item_add_keyval_pair):
+       * gui.c (make_gui_item_from_keywords_internal):
+       * gui.c (gui_add_item_keywords_to_plist):
+       * gui.c (gui_item_accelerator):
+       * gui.c (gui_name_accelerator):
+       * gui.c (gui_item_included_p):
+       * gui.c (gui_item_display_flush_left):
+       * gui.c (gui_item_display_flush_right):
+       * gui.c (parse_gui_item_tree_item):
+       * gui.c (parse_gui_item_tree_children):
+       * gui.c (parse_gui_item_tree_list):
+       Mule-ized.  Cleanup.  GCPRO addition.
+
+       * line-number.c (buffer_line_number):
+       * lisp.h:
+       * lisp.h (EMACS_INT_MAX):
+        Added the manifest constant EMACS_INT_MIN corresponding to the
+        existing constant EMACS_INT_MAX.  This is partially to fix compile
+        warnings under Windows, and partly for cleanliness.
 
-       * console-msw.h: move XEMACS_RECT_WH inside frame
-       parameters. define macors to access it.
+       * menubar-msw.c:
+       * menubar-msw.c (REPLACE_ME_WITH_GLOBAL_VARIABLE_WHICH_CONTROLS_RIGHT_FLUSH):
+       * menubar-msw.c (msw_translate_menu_or_dialog_item):
+       * menubar-msw.c (displayable_menu_item):
+       * menubar-msw.c (populate_menu_add_item):
+       * menubar-msw.c (populate_or_checksum_helper):
+       * menubar-msw.c (populate_menu):
+       * menubar-msw.c (update_frame_menubar_maybe):
+       * menubar-msw.c (prune_menubar):
+       * menubar-msw.c (msw_char_is_accelerator):
+       * menubar-msw.c (unsafe_handle_wm_initmenu_1):
+       * menubar-msw.c (mswindows_handle_wm_command):
+       * menubar-msw.c (mswindows_handle_wm_initmenupopup):
+       * menubar-msw.c (mswindows_handle_wm_initmenu):
+       * menubar-msw.c (mswindows_update_frame_menubars):
+       * menubar-msw.c (mswindows_free_frame_menubars):
+       * menubar-msw.c (mswindows_popup_menu):
+        Fixed a bug in handling accelerators where an extra character
+        would be displayed in the menu item.  Also generalized the
+        function displayable_menu_item because it is now used by the
+        dialog box code as well.  And finally, added code in the functions
+        that create the menubar to extract a list of accelerators for the
+        top level menubar, which is used in the event code to determine
+        whether a particular alt-key combination should be used to invoke
+        a menu item, or should be passed through to access the standard
+        XEmacs keymap binding for this key combination.
+
+       Much needed GCPROing.
 
-       * frame-msw.c (mswindows_init_frame_1): use new target_rect
-       parameter to intialise desired sizing. (mswindows_init_frame_2):
-       enable and size the frame to something sensible when we get
-       here. (mswindows_set_frame_properites): use new
-       mswindows_size_frame_internal function and size frame if frame
-       parameters not just if init is finished - WM_SIZE happens too
-       early for some specs. (mswindows_size_frame_internal): new
-       function abstracted from mswindows_set_frame_properties.
-       (Vmswindows_use_system_frame_size_defaults):
-       new variable controls whether to allow the system to pick frame
-       size defaults, defaults to nil.
+       * menubar-x.c:
+       * menubar-x.c (menu_item_descriptor_to_widget_value_1):
+       * menubar-x.c (menu_item_descriptor_to_widget_value):
+       * menubar-x.c (restore_in_menu_callback):
+       * menubar-x.c (x_popup_menu):
+       * menubar-x.c (menu_move_up):
+       * menubar-x.c (menu_move_down):
+       * menubar-x.c (menu_move_left):
+       * menubar-x.c (menu_move_right):
+       * menubar-x.c (menu_select_item):
+       * menubar-x.c (command_builder_operate_menu_accelerator):
+       * menubar-x.c (menu_accelerator_junk_on_error):
+       * menubar-x.c (command_builder_find_menu_accelerator):
+       * menubar-x.c (Faccelerate_menu):
+       * menubar.h:
+        Moved a whole bunch of code here that was previously in
+        event-stream.c as described above.  There is also code connected
+        to the new standard of adding an accelerator to the beginning of
+        menu items that don't have one as described above and below.
+
+       * menubar.c:
+       * menubar.c (menu_parse_submenu_keywords):
+       * menubar.c (Fmenu_find_real_submenu):
+       * menubar.c (Fnormalize_menu_item_name):
+       * menubar.c (syms_of_menubar):
+       * menubar.c (vars_of_menubar):
+       * menubar.c (complex_vars_of_menubar):
+
+        a) Cleaned up a bunch of documentation and improved it.
+
+        b) XEmacs now automatically adds an accelerator onto the beginning
+        of any menu items that don't have one.  I did this because there
+        will inevitably be some menu items on the main menubar that don't
+        have accelerators on them because the package that adds that
+        particular menu item hasn't yet been fixed up to have accelerators
+        in them and it looked rather strange to have some items with and
+        some items without accelerators, especially since even in items
+        without accelerators, you can, at least under windows, still
+        access the item through an accelerator corresponding to the first
+        character in the item's name.  If people don't like this behavior,
+        I can add a variable to turn it off optionally, but I'm not sure
+        this is a good idea because we really do need to have accelerators
+        on all of the menu items, and if a package doesn't like the
+        accelerators being put on the first character, then it should put
+        the accelerators where they belong.
+
+        c) I made a behavior change, which is that the descriptor that
+        specifies the text of the menu item, which formerly was just a
+        string, can now also be an evaluated expression.  This makes this
+        descriptor parallel with all of the others, which could also be
+        evaluated expressions.  This also obviates the need for the
+        keyword :label, which was previously listed in the documentation
+        as unimplemented, and which was for the same purpose.
+
+       d) GCPROing.
 
-       * event-msw.c: in WM_SIZE use mswindows_size_frame_internal rather
-       than duplicated code.
+       * ntproc.c:
+       * ntproc.c (new_child):
+       * ntproc.c (sys_spawnve):
+       * ntproc.c (find_child_console):
+       * ntproc.c (sys_kill):
+        Fixed compile warnings.  By the way, this file should really go
+        away entirely, and this will happen as soon as Kirill makes his
+        final round of process cleanups, which affect the function
+        call-process.
 
-1998-06-15  Colin Rafferty <colin@xemacs.org>
+       * process-nt.c:
+       * process-nt.c (struct nt_process_data):
+       * process-nt.c (find_process_from_pid):
+       * process-nt.c (send_signal_the_nt_way):
+       * process-nt.c (enable_child_signals):
+       * process-nt.c (find_child_console):
+       * process-nt.c (send_signal_the_95_way):
+       * process-nt.c (nt_finalize_process_data):
+       * process-nt.c (ensure_console_window_exists):
+       * process-nt.c (nt_create_process):
+       * process-nt.c (nt_kill_child_process):
+       * process-nt.c (nt_kill_process_by_pid):
+       * process-nt.c (nt_open_network_stream):
+       * process-nt.c (vars_of_process_nt):
+        Copied over code from Emacs 20.5 to correctly send signals to sub-
+        processes under Windows 95.  Also added code to automatically
+        create and hide console window when a sub-process is created under
+        Windows 95, which obviates the need for the separate runemacs.exe
+        executable, and finally implemented some variables that were
+        implemented in Emacs 20.5, but previously not in XEmacs.  These
+        include mswindows- start-process-share-console and
+        mswindows-start-process-inherit-error-mode. (Both of these only
+        apply to Windows 95.)
+
+        * regex.c (regex_compile): Fixed a compile warning.
+
+       * select-msw.c:
+       * select-msw.c (mswindows_own_selection):
+       * select-msw.c (mswindows_get_foreign_selection):
+       * select-msw.c (mswindows_disown_selection):
+       * select-msw.c (console_type_create_select_mswindows):
+       * select-msw.c (syms_of_select_mswindows):
+        Cleaned up the file and implemented the device method
+        selection_exists_p, which had accidentally been left out.  Also
+        removed four lisp functions that were remnants from before the
+        time when the selection code was properly device abstracted.
+        These functions are no longer needed because there are generic
+        equivalents, and because they were added recently and don't exist
+        in FSF Emacs, I don't think there's any problem with just deleting
+        them.
 
-       * Makefile.in.in: Made EXTW_LINK expand properly.
+       * sysdep.c:
+       * sysdep.c (sys_subshell):
+        Fixed a compile warning, although in this case there's probably
+        something wrong with this code, and it ought to be looked into
+        more thoroughly by somebody who understands it.
 
-1998-06-12  Martin Buchholz  <martin@xemacs.org>
+       * window.c:
+       * window.c (Fwindow_text_area_height):
+       * window.c (Fwindow_width):
+       * window.c (Fwindow_full_width):
+       * window.c (Fwindow_pixel_width):
+       * window.c (debug_print_window):
+       * window.c (syms_of_window):
+        Added functions window-text-area-height and window-full-width,
+        which are functions for returning various width and height
+        characteristics of a window. (One of these functions is necessary
+        for making the file dialog box work correctly, and the other one
+        was added for completeness.)  Also added a table to the
+        documentation for window-height which describes the entire scheme
+        for accessing width and height characteristics of a window.
 
-       * redisplay.c (vars_of_redisplay): default value of
-       column-number-start-at-one should be NIL!
+2000-03-12  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
 
-1998-06-11  Martin Buchholz  <martin@xemacs.org>
+       * nt.c (fstat): Added a comment for another problem with
+       non-encapsulated [f]stat(), reported by Adrian Aichner
+       <aichner@ecf.teradyne.com>.
 
-       * casefiddle.c:
-       (upcase-initials "fooBar") ==> "FooBar" instead of "Foobar"
+2000-03-11  Andy Piper  <andy@xemacs.org>
 
-1998-06-05  Hrvoje Niksic  <hniksic@srce.hr>
+       * window.c (make_dummy_parent): initialize subwindow instance
+       cache.
+       (Fset_window_configuration): zero extent_modiff.
 
-       * eldap.c (Fldap_search_internal): Use build_ext_string instead of
-       build_string to avoid crashes under Mule.
+2000-03-10  Andy Piper  <andy@xemacs.org>
 
-1998-06-13  Andy Piper  <andyp@parallax.co.uk>
+       * redisplay.c (Fredraw_frame): reset the changed_set flags so that
+       more changes can be triggered.
+       (Fredisplay_frame): ditto.
+       (Fredraw_device): ditto.
+       (Fredisplay_device): ditto.
+       (redisplay_frame): make non-static.
+       (redisplay_frame): call update_frame_gutter_geometry outside of
+       display proper.
 
-       * ntplay.c (play_sound_data_1): don't delete the sound data until
-       the next sound is played and the previous one finished.
+       * gutter.h: declare update_frame_gutter_geometry.
 
-1998-06-10  Samuel Mikes  <smikes@alumni.hmc.edu>
+       * redisplay.h: declare redisplay_frame.
 
-       * fileio.c (directory-sep-char): Escape backslashes.
+       * gutter.c (update_frame_gutter_geometry): move geometry changes
+       in update_frame_gutters here. Geometry changes can only occur
+       outside of redisplay.
+       (update_frame_gutters): remove geometry change code.
+       (Fredisplay_gutter_area): make sure that we are in display when we
+       update and that we have flushed any size changes.
 
-1998-06-10  Hrvoje Niksic  <hniksic@srce.hr>
+2000-03-11  Andy Piper  <andy@xemacs.org>
 
-       * event-stream.c: Fix docstring reference.
+       * alloc.c (pdump_dump_data): remove i & count shadows.
 
-1998-06-12  Hrvoje Niksic  <hniksic@srce.hr>
+2000-02-27  Mike Alexander  <mta@arbortext.com>
 
-       * alloc.c (make_float): Remove useless initialization of `next'
-       field.
-       (make_pure_float): Ditto.
+       * sysdep.h: Declare pdump_read_file
 
-       * lisp.h (struct Lisp_Float): Rename `next' to `__unused__next'.
+       * sysdep.c (pdump_read_file): New function
 
-1998-06-08  Kirill M. Katsnelson  <kkm@kis.ru>
+       * alloc.c (pdump_load): Call pdump_read_file to get the portable
+       dump data
 
-       * fileio.c (Fmake_directory_internal): Remove conditionals
-       on WINDOWSNT when calling mkdir.
+2000-03-10  SL Baur  <steve@musashimaru.m17n.org>
 
-       * ntproc.c: Deleted the following unused functions:
-       register_child, reap_subprocess, sys_wait.
+       * lrecord.h: add `lrecord_type_pgsetenv'.
 
-       * nt.c (sys_rename): Ifzeroed this implementation.
-       Deleted the following unused functions:
-       sys_access, sys_chdir, sys_chmod, sys_creat, sys_link, sys_mkdir,
-       sys_mktemp, sys_rmdir, sys_unlink, sys_close, sys_dup, sys_dup2,
-       sys_read, sys_write.
-       Merger sys_fopen and sys_open with sysdep.c implementation.
+2000-03-08  SL Baur  <steve@musashimaru.m17n.org>
 
-       * sysdep.c: Removed MS-DOS code.
-       (sys_rename): Deal with Microsoft rename weirdness.
-       (sys_open): Implemented for Windows.
-       (sys_fopen): Ditto.
-       (sys_mkdir): Ditto.
+       * symsinit.h: declare (vars|syms)_of* functions.
+       * lrecord.h: add `lrecord_type_pgconn' and 'lrecord_type_pgresult'.
 
-1998-06-08  Kirill M. Katsnelson  <kkm@kis.ru>
+2000-03-06  SL Baur  <steve@musashimaru.m17n.org>
 
-       * buffer.c (complex_vars_of_buffer): Removed %t description from
-       the docstring.
+       * config.h.in: Add symbols HAVE_POSTGRESQL and HAVE_POSTGRESQLV7
 
-1998-06-04  Rick Rankin  <Rick_Rankin-P15254@email.mot.com>
+       * inline.c: Include postgresql.h lrecord stuffs to placate buggy
+       GCCs.
 
-       * scrollbar-msw.c: initialize the cbSize element of the
-       SCROLLINFO struct before calling SetScrollInfo. WinNT seems
-       to ignore the value of cbSize, but Win95 (and I presume Win98)
-       appear to want it set to sizeof(SCROLLINFO).
+       * emacs.c (main_1): Call postgres initialization code.
 
-1998-06-04  Kirill M. Katsnelson  <kkm@kis.ru>
+       * postgresql.h: New file.  PostgreSQL RDBMS support.
+       * postgresql.c: New file.
 
-       * event-stream.c: Defined Qcancel_mode_internal.
-       (syms_of_event_stream): defsymbol'ed it.
+2000-03-08  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-       * events.h: Externed it.
+       * redisplay-output.c (redisplay_output_display_block): Disable
+       redundant code.
 
-       * event-msw.c (mswindows_wnd_proc, WM_CANCELMODE): Added this handler.
+2000-03-09  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-1998-06-04  Oliver Graf <ograf@fga.de>
+       * mule-canna.c (Fcanna_henkan_region): Translate doc-string.
+       (Fcanna_henkan_next): Ditto.
+       (Fcanna_bunsetu_henkou): Ditto.
+       (Fcanna_henkan_kakutei): Ditto.
+       (Fcanna_henkan_end): Ditto.
+       (Fcanna_henkan_quit): Ditto.
+       (Fcanna_henkan_next): Set retun value correctly.
+       (c2mu): Use unsigned char instead of signed char.
 
-       * frame-x.c (x_cde_destroy_callback): free the data
-       (cde-start-drag-internal) corrected root position, 21.1 needs this
-       hardcoded in Button events
-       (offix-start-drag-internal) corrected root position
+2000-03-09  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-1998-06-03  Kirill M. Katsnelson  <kkm@kis.ru>
+       * emacs.c (main_1): Always call syms_of_gui.
+       * inline.c: include gui.h
 
-       * process-nt.c (signal_cannot_launch): Use signal_simple_error()
-       instead of error().
+2000-03-09  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-1998-06-03  Kirill M. Katsnelson  <kkm@kis.ru>
+       * redisplay.c (Vvisible_bell): Renamed from visible_bell and
+       converted to Lisp_Object.
+       (Qtop_bottom): New variable.
+       (syms_of_redisplay): Initialize it.
+       * redisplay.h (Vvisible_bell): Ditto.
+       * sound.c (ding): Ditto and check if Vvisible_bell is nil.
+       * redisplay-x.c (x_flash): When Vvisible_bell is top-bottom,
+       only flash top and bottom.
 
-       * dialog-msw.c (button_width): Removed `inline' from the function
-       declaration.
+2000-03-08  Andy Piper  <andy@xemacs.org>
 
-1998-06-03  Rick Rankin  <Rick_Rankin-P15254@email.mot.com>
+       * buffer.c (Frename_buffer): record new buffer name the right way.
 
-       * frame-msw.c: add WS_VISIBLE flag to the first frame created.
-       Note that adding this flag to subsequent frames causes problems.
+2000-03-08  Andy Piper  <andy@xemacs.org>
 
-1998-06-03  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
+       * glyphs.c (update_subwindow): increase hash depth so that widget
+       items get picked up properly.
 
-       * glyphs-eimage.c (png_instantiate) move 'struct
-       png_memory_storage tbr' out of nested block to avoid dangling
-       reference
+       * redisplay-output.c (compare_runes): increase hash depth so that
+       widget items get picked up properly.
 
-1998-06-02  Andy Piper  <andyp@parallax.co.uk>
+2000-03-08  Andy Piper  <andy@xemacs.org>
 
-       * faces.h:
-       * faces.c: rename 3d-object -> gui-element. add toolbar face which
-       inherits from gui-element.
+       * gutter.c (output_gutter): add some debug.
 
-       * glyphs-msw.c: use DIBitmaps for xbm bitmaps to be consistent
-       with existing code, generate masks correctly.
+       * glyphs.h (struct Lisp_Image_Instance): add display_hash.
+       (IMAGE_INSTANCE_DISPLAY_HASH): new macro.
+       (XIMAGE_INSTANCE_DISPLAY_HASH): ditto.
 
-1998-06-03  P. E. Jareth Hein  <jareth@camelot-soft.com>
+       * redisplay-output.c (compare_runes): use display_hash to
+       determine if glyphs really are not the same.
 
-       * glyphs-eimage.c: Changed included header for gifs to use
-       Gifreader instead of giflib.
+       * glyphs.c (update_subwindow): check display_hash to see if
+       anything really needs to be updated. If not then do
+       nothing. Record the display_hash after updating.
+       (image_instance_equal): compare the image_instance face also.
 
-       * glyphs-x.c: removed the image-related functions that were
-       moved into glyphs-eimage.
+2000-03-07  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-1998-06-02  David Bush  <david.bush@adnb.alcatel.com>
+       * redisplay.h: Fix comment style.
 
-       * glyphs.c (bitmap_to_lisp_data) Define XFree to be free
-       if built without X Windows support.
+2000-03-08  Jonathan Harris  <jhar@tardis.ed.ac.uk>
 
-1998-06-02  Hrvoje Niksic  <hniksic@srce.hr>
+       * consle-msw.h (struct mswindows_frame):
+       Added new member paint_pending to indicate whether a WM_PAINT
+       magic event has been queued for this frame.
 
-       * fns.c (Fconcat): Synch docstring with new reality.
+       * event-msw.c (mswindows_drain_windows_queue):
+       Don't queue a WM_PAINT magic event if one is already queued.
+       (emacs_mswindows_handle_magic_event): clear paint_pending flag.
 
-1998-06-03  SL Baur  <steve@altair.xemacs.org>
+       * frame-msw.c (mswindows_init_frame_1): initialise paint_pending flag.
 
-       * frame.c: Remove reference to msdos.h (which is going away).
-       Suggested by Hrvoje Niksic and Kirill Katsnelson.
+2000-03-07  Didier Verna  <didier@xemacs.org>
 
-1998-06-02  P. E. Jareth Hein  <jareth@camelot-soft.com>
+       * dired.c: #include `regex.h' after `sysfile.h'.
 
-       * glyphs-eimage.c (jpeg_instantiate): Fix handling of
-       grayscale images/
+2000-03-06  Martin Buchholz  <martin@xemacs.org>
 
+       * sound.c (init_nas_sound): Fix compiler warning.
 
-1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
+       * alloc.c (ALIASING_VOIDPP_DEREFERENCE): New.
+       (FREE_STRUCT_P):
+       (MARK_STRUCT_AS_FREE):
+       (MARK_STRUCT_AS_NOT_FREE):
+       Make `gcc -fstrict-aliasing' work properly.
 
-       * events.h: Fixed commentary about misc-user scrollbar events.
+2000-03-07  Jonathan Harris  <jhar@tardis.ed.ac.uk>
 
-       * scrollbar-x.c (x_update_vertical_scrollbar_callback): Use frame
-       object as an event channel, instead of window object.
-       (x_update_horizontal_scrollbar_callback): Ditto.
+       * device-msw.c (mswindows_finish_init_device): Call CoInitialize().
+       (mswindows_delete_device): Call CoUnnitialize().
 
-1998-05-29  Andy Piper  <andyp@parallax.co.uk>
+       * event-msw.c (mswindows_wnd_proc): WM_DROPFILES: Decode Shortcuts.
 
-       * ntplay.c (play_sound_data_1) new function. convert alloca data
-       to malloc if necessary.
-       (play_sound_file): if the file is not in our path then convert to
-       data and play.
+2000-02-25    <CraigL@DyCon.com>
 
-1998-06-01  SL Baur  <steve@altair.xemacs.org>
+       * process-nt.c: MinGW now has <shellapi.h>, but still needs
+       <errno.h>.
 
-       * mule-mcpath.c (mc_chdir): Reverse parameters in call to memcpy.
-       * msdos.c (Frecent_doskeys): Ditto.
+       * sysdep.c: This extern declaration for environ prevents MinGW
+       from finding the variable in CRTDLL.DLL.
 
-       * unexalpha.c (unexec): Reverse parameters in call to memcpy.
-       Suggested by Reggie Perry <perry@zso.dec.com>
+       * s\mingw32.h (PBS_SMOOTH): Removed, now defined in cygwin's
+       windows headers.
+       (SHGFI_EXETYPE): ..
+       (WM_MOUSEWHEEL): ..
+       (_WIN32_IE): Added, needed to get the TCS_BOTTOM and TCS_VERTICAL
+       definitions.
+       (MMRESULT): Removed, now defined in cygwin's windows headers.
+       (TIMECAPS): ..
+       (uid_t,gid_t,pid_t,ssize_t): ..
+       (_timeb): Removed, MinGW defines both _timeb and timeb.
+       (HAVE_H_ERRNO): Added.
+       (HAVE_TZNAME): Added, configure is not detecting this.
 
-       * buffer.h: Eliminate size in declaration.
+2000-02-03  IKEYAMA Tomonori <tomonori@suiyokai.org>
 
-1998-06-01  Olivier Galibert  <galibert@pobox.com>
+       * chartab.h (XCHAR_TABLE_VALUE_UNSAFE): New macro.
+       * syntax.c (syntax_match): Use it.
 
-       * unexelfsgi.c (unexec): Cleanup n/nn and remove useless kludge.
+       * cmds.c: Import auto-fill-chars from FSF Emacs.
+       (Vauto_fill_chars): New variables.
+       (internal_self_insert): Check Vauto_fill_chars.
+       (vars_of_cmds):
+       Declare auto-fill-chars as a Lisp variable and initialize it.
 
-1998-06-01  Kirill M. Katsnelson  <kkm@kis.ru>
+2000-03-05  Jonathan Harris  <jhar@tardis.ed.ac.uk>
 
-       * gui.c (gui_item_init): Changed the default value for config member
-       from Qunbound to Qnil.
+       * fileio.c (Fmake_symbolic_link):
+       (Ffile_symlink_p):
+       Run handlers even if local machine doesn't have symlinks.
 
-1998-06-01  Greg Klanderman  <greg@alphatech.com>
+2000-03-05  Jonathan Harris  <jhar@tardis.ed.ac.uk>
 
-       * indent.c (vmotion_pixels): Don't #define abs().
+       * event-msw.c (mswindows_drain_windows_queue):
+       Don't generate paint magic events for non-XEmacs frames.
 
-1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
+2000-03-05  Andy Piper  <andy@xemacs.org>
 
-       * s/windowsnt.h: Defined popen and pclose to be _popen and _pclose
-       respectively.
+       * redisplay.c (redisplay_frame): generate_displayable_area and
+       friends assumes that we are not in GC, we therefore have to make
+       sure that this doesn't happen.
 
-1998-05-30  Andy Piper  <andyp@parallax.co.uk>
+       * gutter.c (calculate_gutter_size): generate_displayable_area
+       assumes that we are not in GC, we therefore have to make sure that
+       this doesn't happen.
 
-       * glyphs.h: add xbm declarations.
+2000-03-05  Martin Buchholz  <martin@xemacs.org>
 
-       * console.h: add xbm_instantiate_method device method.
+       * opaque.c (DEFINE_LRECORD_IMPLEMENTATION): opaque_ptr ==> opaque-ptr
 
-       * glyphs.c (check_valid_xbm_inline) (xbm_validate)
-       (bitmap_to_lisp_data) (xbm_mask_file_munging) (xbm_normalize)
-       (xbm_possible_dest_types): moved here from glyphs-x.c. use
-       locate_pixmap_file device method and read_bitmap_data_from_file
-       instead of XmuReadBitmapDataFromFile.
-       (xbm_instatntiate): make a device method.
+2000-03-03  Jan Vroonhof  <vroonhof@math.ethz.ch>
 
-       * glyphs-x.c: see glyphs.c changes. (read_bitmap_data_from_file)
-       new function that just calls XmuReadBitmapDataFromFile.
-       (x_xbm_instatntiate): device method from xbm_instantiate.
+       * redisplay.c (regenerate_window): Make sure we set a sane value
+       for end_pos even if we jump out of the loop.
+       (regenerate_window): Answer Ben's question :-).
+       (start_end_of_last_line): Add may_error argument.
+       (start_of_last_line):
+       (end_of_last_line): Pass may_error = 0.
+       (end_of_last_line_may_error): New function.
+       (pixel_to_glyph_translation): Use it, so we don't crash in
+       event_to_glyph.
 
-       * glyphs-msw.c (read_bitmap_data) (NextInt)
-       (read_bitmap_data_from_file): new functions copied from Xmu
-       sources.
-       (xbm_create_bitmap_from_data) from Ben <ben@666.com> convert
-       inline data to an mswindows bitmap.
-       (init_image_instance_from_xbm_inline) (xbm_instantiate_1)
-       (mswindows_xbm_instantiate): mswindows-ized versions of the X
-       functions.
+2000-03-04  Andy Piper  <andy@xemacs.org>
 
-1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
+       * window.h (struct window): add gutter_extent_modiff.
 
-       * window.c (specifier_vars_of_window): Renamed `has_modeline-p' to
-       `modeline-visible-p'.
-       Declared specifier lisp variables at the beginning oh the file
-       as static.
+       * window.c (allocate_window): zero out gutter_extent_modiff.
 
-       * procimpl.h (struct process_methods): Changed semantics of
-       create_process method so it accepts lisp strings instead of
-       char pointers.
+       * redisplay.h: declare sync_display_line_structs.
 
-       * process.c (Fstart_process_internal): Moved building of
-       unix style argv from here to process-unix.c, ...
+       * redisplay.c (add_glyph_rune): add a better comment.
 
-       * process-unix.c (unix_create_process): ... right here.
+       * redisplay-output.c (sync_display_line_structs): made non-static.
+       (compare_runes): remove unneccesary glyph cachel access.
 
-       * process-nt.c (nt_create_process): Changed this function to
-       support new semantics, so avoided a GC problem.
+       * gutter.h: declare gutter_extent_signal_changed_region_maybe.
 
-       * events.c (Fmake_event): Document misc-user events properties.
-       (Fmake_event): Do not allow arbitrary objects for channel property
-       of misc-user events.
-       (Fmake_event): Change misc-user event validation: it is function
-       which is required, not button.
+       * gutter.c (output_gutter): don't output the gutter if extent
+       changes only involve extents in buffers. use 4 sets of display
+       lines.
+       (gutter_extent_signal_changed_region_maybe): new function. Mark
+       extents in gutters as changed.
+       (update_frame_gutters): use 4 sets of display lines.
+       (reset_gutter_display_lines): ditto.
+       (free_frame_gutters): ditto.
+       (redraw_exposed_gutter): force output of gutters.
 
-       * event-msw.c (mswindows_user_event_p): Recognize misc user events as
-       user events.
-       (mswindows_enqueue_misc_user_event): Added function.
-       (mswindows_bump_queue): Removed function.
-       (mswindows_enqueue_magic_event): Support NULL HWND parameter.
-       (mswindows_wnd_proc, WM_CLOSE): Use mswindows_enqueue_misc_user_event().
-       (mswindows_wnd_proc, WM_EXITSIZEMOVE): Ditto.
-       (emacs_mswindows_handle_magic_event): Handle XM_BUMPQUEUE, by doing
-       really nothing, which is my personal favorite thing.
+       * frame.h (struct frame): add 4 sets of gutter display lines.
 
-       * console-msw.h: Removed prototype for mswindows_bump_queue().
-       Added prototype for mswindows_enqueue_misc_user_event().
+       * extents.c: (extent_changed_for_redisplay): signal changes to
+       extents in strings in the gutter as well as extents in buffers.
 
-       * menubar-msw.c (mswindows_handle_wm_command): Use
-       mswindows_enqueue_misc_user_event().
+2000-03-02  Andy Piper  <andy@xemacs.org>
 
-       * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
+       * gutter.c (specifier_vars_of_gutter): cosmetic changes.
 
-       * dialog-msw.c (dialog_proc): Ditto.
+       * frame.c (Fmake_frame): make sure the gutters get initialized
+       after the frame is visible.
+       (set_frame_selected_window): re-arrange compilation macros a
+       little.
+       (change_frame_size_1): mark gutters changed.
 
-       * scrollbar-msw.c (mswindows_handle_scrollbar_event): Ditto.
-        (mswindows_handle_scrollbar_event): Use frame, not window, for misc
-       user events channel.
+       * device.c (Fset_device_class): mark gutters changed.
 
-1998-05-29  Greg Klanderman  <greg@alphatech.com>
+2000-03-01  Andy Piper  <andy@xemacs.org>
 
-       * window.c (Fwindow_displayed_text_pixel_height): was relying on
-       incorrect semantics of vmotion_pixels which has been fixed.  don't
-       use it anymore as it can't easily be used.
+       * window.c (window_top_frame_gutter_height): deleted.
+       (window_bottom_frame_gutter_height): ditto.
+       (window_left_frame_gutter_height): ditto.
+       (window_right_frame_gutter_height): ditto.
+       (window_top_gutter_height): don't use them.
+       (window_bottom_gutter_height): ditto.
+       (window_left_gutter_width): ditto.
+       (window_right_gutter_width): ditto.
+       (Fsplit_window): ditto.
+       (Fwindow_pixel_edges): don't use border dimensions here.
 
-       * indent.c (vmotion_pixels): fix off by one bug moving up.  also
-       the motion was reported incorrectly if you tried to go past end of
-       buffer.
+       * scrollbar.c (update_scrollbar_instance): don't take gutters into account.
+       (update_scrollbar_instance): ditto.
 
-1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
+       * redisplay.c (generate_modeline): don't take gutters into account.
+       (generate_modeline): ditto.
+       (redisplay_frame): small gutter display optimization.
 
-       * toolbar.h: Removed misleading commentary, as Martin suggested.
+       * redisplay-x.c (x_output_vertical_divider): don't take gutters into account.
 
-1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
+       * redisplay-msw.c (mswindows_output_vertical_divider): don't take
+       gutters into account.
 
-       * lisp.h: Extern Qactivate_menubar_hook.
+       * gutter.h (WINDOW_REAL_*_GUTTER_BOUNDS): remove bogus checks
+       for window position and type.
 
-       * menubar-msw.c (unsafe_handle_wm_initmenu_1): Pass correct value to
-       run_hook ().
+       * gutter.c (get_gutter_coords): fix for frame gutters.
+       (update_frame_gutters): update frame geometry if the gutters have
+       changed.
+       (init_frame_gutters): record current gutter geometries.
 
-1998-05-29  Andy Piper  <andyp@parallax.co.uk>
+       * glyphs-msw.c (mswindows_subwindow_instantiate): remove unused
+       var.
+       (mswindows_widget_instantiate): ditto.
 
-       * glyphs-msw.c: use BPLINE macro.
+       * frame.h (struct frame): add current_gutter_bounds.
 
-       * select-msw.c (mswindows-selection-exists-p)
-       (mswindows-delete-selection): doc string fixes.
+       * frame.c (change_frame_size_1): position window and minibuffer
+       appropriately taking into account the frame gutters.
 
-       * toolbar-msw.c (mswindows_output_toolbar): make disabled buttons
-       unpressable. warning elimination.
+       * frame-x.c: (x_initialize_frame_size): take into account the
+       frame gutters.
 
-1998-05-28  Martin Buchholz  <martin@xemacs.org>
+2000-02-29  Stephen J. Turnbull  <stephen@xemacs.org>
 
-       * alloc.c (dbg_constants):
-       * dbxrc:
-       * gdbinit:
-       Remove toolbar_data debugging code, since that lrecord has
-       also been removed.
+       * emacs.c (data-directory):  Xref `locate-data-file' in docstring.
 
-Wed May 27, 1998  Darryl Okahata  <darrylo@sr.hp.com>
+2000-02-29  Stephen J. Turnbull  <stephen@xemacs.org>
 
-       * alloc.c: zap cached value of (user-home-directory), so that
-         it's not undumped.
+       * alloc.c (dumpopaquevec): Increase dimension for --with-canna.
 
-       * buffer.c: From init_buffer(), separated out code that
-         determined the initial directory for the *scratch* buffer, and
-         put them into a function called "init_initial_directory()".
-         The initial directory is now available as a global "char *"
-         called initial_directory.
+1999-12-30  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
 
-       * buffer.h: Added extern entries for initial_directory[] and
-         init_initial_directory().
+       * file-coding.c (reset_decoding_stream): Clear previous
+       detection state when autodetect.
 
-       * editfns.c: added new elisp function "user-home-directory",
-       which basically returns getenv("HOME"), but attempts to use
-       other values if $HOME isn't set.This may have to be tweaked in
-       the future as, under Unix, "/" is used if $HOME isn't set (this
-       probably should be set to the current directory).  To support
-       this, a new C function, "get_home_directory()", now exists,
-       which returns the "home directory", as a "char *" string.
+2000-02-29  Didier Verna  <didier@xemacs.org>
 
-       * emacs.c: Rearrange NT initialization order so that
-       environment/registry variables will be properly entered into
-       Vprocess_enviroment.
+       * extents.c (set_extent_glyph_1): don't require extents to be
+       attached.
 
-       * fileio.c: replaced egetenv("HOME") with calls to the new
-         get_home_directory().
+2000-02-27  Andy Piper  <andy@xemacs.org>
 
-       * lisp.h: Added function prototypes for uncache_home_directory()
-         and get_home_directory(), along with lisp prototypes for
-         Fuser_home_directory() and friends.
+       * gutter.c (Fset_default_gutter_position): don't default left and
+       right gutter visibility to t.
+       (Fset_default_gutter_position): run
+       default-gutter-position-changed-hook.
+       (syms_of_gutter): add default-gutter-position-changed-hook.
 
-       * nt.c: replaced getenv("HOME") with calls to the new
-         get_home_directory().
+2000-02-26  Andy Piper  <andy@xemacs.org>
+
+       * specifier.c (Fmake_specifier): add gutter references.
+
+       * gutter.h (RAW_WINDOW_GUTTER): new macro.
+
+       * lisp.h: declare Fvalid_plist_p.
 
-       * sysfile.h: for WINDOWSNT, #include <direct.h>, to suppress
-         warnings about getcwd(), etc. not having prototypes.
+       * gutter.c (gutter_geometry_changed_in_window): mark the modeline
+       as changed.
+       (default_gutter_visible_p_changed_in_window): invalidate gutter as
+       well as its visibility so that it gets reconstructed.
+       (construct_window_gutter_spec): new function. Construct a string
+       to be displayed in the gutter from a plist of strings. Take care
+       to only use elements that are declared as visible.
+       (calculate_gutter_size): use RAW_WINDOW_GUTTER instead of
+       WINDOW_GUTTER.
+       (gutter_validate): allow plists of strings in the specifier.
+       (gutter_specs_changed): construct the real_gutter from the gutter
+       specs using construct_window_gutter_spec.
+       (gutter_visible_validate): gutter-visible is a new specifier type.
+       (Fgutter_visible_specifier_p): new function for the new specifier.
+       (syms_of_gutter): declare gutter-visible and
+       Fgutter_visible_specifier_p.
+       (specifier_type_create_gutter): intitalize new gutter-visible
+       specifier.
+       (reinit_specifier_type_create_gutter): ditto.
+       (specifier_vars_of_gutter): use new specifier type for gutter
+       visibility.
+       (init_frame_gutters): construct real_gutter correctly.
+       (Fgutter_specifier_p): beef up documentation.
+       (Fgutter_size_specifier_p): ditto.
 
-1998-05-28  Kirill M. Katsnelson  <kkm@kis.ru>
+       * winslots.h: add real_gutter slots.
 
-       * process-nt.c (send_signal): Emulate SIGHUP.
-       (validate_signal_number): Ditto.
+2000-02-25  Andy Piper  <andy@xemacs.org>
 
-       * event-msw.c (mswindows_wnd_proc, WM_KEYDOWN): Unconditionally
-       remove MOD_SHIFT from ASCII characters.
-       (mswindows_wnd_proc, WM_KEYDOWN): Do not activate the menubar when
-       F10 is pressed.
+       * device-msw.c: Be kind to older cygwin versions. From Raymond
+       Toy <toy@rtp.ericsson.se>.
 
-1998-05-24  Oliver Graf <ograf@fga.de>
+       * gui-msw.c (Fmswindows_shell_execute): Remove things unknown to
+       earlier cygwins. From Raymond Toy <toy@rtp.ericsson.se>.
 
-       * frame-x.c (cde-start-drag-internal): added filename and multi-
-       data transfers
-       (x_cde_convert_callback) dito
+2000-02-25  Martin Buchholz  <martin@xemacs.org>
 
-1998-05-26  Oliver Graf <ograf@fga.de>
+       * elhash.c (MARK_OBJ): Practice macro hygiene.
 
-       * frame-x.c: include event-mod.h also with CDE
-       (x_cde_convert_callback) made the thing working
-       (cde-start-drag-internal) also debugging
+2000-02-24  Martin Buchholz  <martin@xemacs.org>
 
-1998-05-25  Hans Guenter Weigand  <hgweigand@wiesbaden.netsurf.de>
+       * miscplay.c: s/__inline__/inline/g;
+       * glyphs-msw.c (set_mono_pixel): INLINE ==> static inline
+       (get_device_compdc): INLINE ==> static inline
+       * *.[ch]: Change INLINE to INLINE_HEADER globally.
+       find -name '*.h' | \
+       xargs global-replace \
+       's/(^|(?<=[^A-Za-z0-9_]))INLINE((?=[^A-Za-z0-9_])|$)/INLINE_HEADER/g'
 
-       * m/sparc.h:
-       * getloadavg.c:
-       * malloc.c:
-       * unexec.c:
-       * mem-limits.h:
-         - add __OpenBSD__ where __NetBSD__ was found.
-         - TODO: replace platform-specific conditional compilation by
-           feature tests in configure.in.
+2000-02-25  Andy Piper  <andy@xemacs.org>
 
-1998-05-15  Greg Klanderman  <greg@alphatech.com>
+       * window.c (window_top_frame_gutter_height): new function.
+       (window_top_window_gutter_height): ditto.
+       (window_top_gutter_height): use them.
+       (window_bottom_frame_gutter_height): new function.
+       (window_bottom_window_gutter_height): ditto.
+       (window_bottom_gutter_height): use them.
+       (window_left_window_gutter_width): new function.
+       (window_left_frame_gutter_width): ditto.
+       (window_left_gutter_width): use them.
+       (window_right_window_gutter_width): new function.
+       (window_right_frame_gutter_width): ditto.
+       (window_right_gutter_width): use them.
+       (window_pixel_height): new function. calulate window pixel height
+       with frame gutter involvement.
+       (Fsplit_window): calculate new sizes taking frame gutters into
+       account.
+       (window_char_height_to_pixel_height): don't include frame gutters.
+       (window_char_height): use window_pixel_height.
+       (window_pixheight): rename from window_pixel_height.
+       (change_window_height): use it.
+       (window_pixel_height_to_char_height): don't include frame gutters.
+       (window_char_width_to_pixel_width): ditto.
+
+2000-02-25  Andy Piper  <andy@xemacs.org>
+
+       * glyphs.h (IMAGE_INSTANCE_FACE): glyph might be nil, don't crash
+       if it is.
+
+2000-02-24  Martin Buchholz  <martin@xemacs.org>
+
+       * alloc.c (staticpro):
+       (staticpro_nodump):
+       (dumpstruct):
+       (dumpopaque):
+       (pdump_wire):
+       (pdump_wire_list):
+       (compact_string_chars):
+       (pdump_dump_wired):
+       Convert:  if (foo) abort();  ==>  assert (! foo);
+
+       * eldap.c (Fldap_search_basic):
+       (Fldap_add):
+       (Fldap_modify):
+       (Fldap_delete):
+       Fix compiler warnings, and possible crashes if (random) return
+       value were to be used.
+
+2000-02-21  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
+
+       * device-msw.c: Workaround ResetDC failure.
+
+       * frame-msw.c (msprinter_init_frame_3): Added an assertion before
+       applying a devmode.
+
+       * redisplay-msw.c (get_frame_dc): Added start_page_p.
+       (mswindows_text_width): Do not start printer page.
+
+       * console-msw.h (CHECK_MSGDI_DEVICE): Added this and friends.
+
+       * glyphs-msw.c: Added image methods to msprinter console and
+       msprinter-specific image instantiation.
+
+2000-02-20  Mike Alexander  <mta@arbortext.com>
+
+       * select-msw.c (Fmswindows_set_clipboard): GC protect more things
+       to avoid crashes when selection-sets-clipboard is on
+       (mswindows_own_selection): ditto
 
-       * window.c (Fwindow_displayed_text_pixel_height): New function.
-       (syms_of_window): DEFSUBR it.
+2000-02-19  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
+
+       * glyphs-msw.c:
+       * redisplay-msw.c (get_frame_dc):
+       (get_frame_compdc):
+       * console-msw.h:
+       * device-msw.c (mswindows_init_device):
+       (mswindows_delete_device):
+       (msprinter_init_device):
+       (msprinter_delete_device):
+       * frame-msw.c (mswindows_init_frame_1):
+       (mswindows_delete_frame):
+       (msprinter_init_frame_3):
+       (msprinter_delete_frame): Move compatible DC to device object from
+       frame object, for both mswindows and msprinter. Only one at a time
+       is needed, it is a real waste to have one per frame!
 
-       * indent.c (Fvertical_motion_pixels): New function - request
-       movement in pixels.
-       (vmotion_pixels): helper.
-       (syms_of_indent): DEFSUBR.
-       * lisp.h: declaration for vmotion_pixels().
+2000-02-23  Andy Piper  <andy@xemacs.org>
 
-       * indent.c (Fvertical_motion): Add optional third argument PIXELS,
-       to request returning motion in pixels.
-       (Fvertical_motion_pixels): Remove, functionality merged into
-       Fvertical_motion.
-       * window.c (window_scroll): call Fvertical_motion with 3 arguments.
-       (Fmove_to_window_line): ditto.
-       * lisp.h: Change declaration for Fvertical_motion.
+       * glyphs.c: add dynamic width and height elements.
+       (image_instance_equal): ditto.
 
-       * window.c: rename window-text-pixel-{height,width,edges} to
-       window-text-area-pixel-*.
+       * glyphs-widget.c (widget_query_geometry): calculate width and
+       height dynamically if required.
+       (initialize_widget_image_instance): initialize dynamic dimensions.
+       (widget_instantiate): pick-up dynamic dimensions.
 
-1998-05-26  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
+       * glyphs.h (struct Lisp_Image_Instance): add width and height for
+       dynamic determination. Add appropriate macros.
 
-       * tooltalk.c (vars_of_tooltalk) added staticpro for
-       Tooltalk_Message_plist_str and Tooltalk_Pattern_plist_str
+       * gutter.h (WINDOW_GUTTER_BORDER_WIDTH): make non-integer
+       dimensions safe.
+       (WINDOW_GUTTER_SIZE): ditto.
+       (WINDOW_GUTTER_SIZE_INTERNAL): ditto.
 
-1998-05-27  Andy Piper  <andyp@parallax.co.uk>
+       * redisplay-msw.c (get_frame_compdc): gcc can't cope with this
+       inline.
+       (get_frame_dc): ditto.
 
-       * faces.c: create a new 3d_object_face, make modeline and
-       vertical_divider faces fallback to this rather than the default.
+       * redisplay.h (GLOBAL_RESET_CHANGED_FLAGS): don't reset faces
+       here.
 
-1998-05-21  Andy Piper  <andyp@parallax.co.uk>
+2000-02-23  Martin Buchholz <martin@xemacs.org>
 
-       * s/cygwin32.h: define charsets for cygwin.
+       * XEmacs 21.2.31 is released.
 
-1998-05-25  Andy Piper  <andyp@parallax.co.uk>
+2000-02-22  Ben Wing <ben@xemacs.org>
 
-       * toolbar-msw.c (mswindows_output_toolbar): fix up button sizes
-       and coordinates. resize bitmaps if we have already settled on a
-       different size.
+       * ntheap.c (allocate_heap): Make sure `ptr' is initialized.
 
-       * glyphs-msw.c (xpm_to_eimage): add ';' for mswindows compiler.
+2000-02-22  Andy Piper  <andy@xemacs.org>
 
-1998-05-25  Hrvoje Niksic  <hniksic@srce.hr>
+       * glyphs-x.c (x_widget_instantiate): don't explicitly resize here.
 
-       * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
+2000-02-21  Mike Sperber <mike@xemacs.org>
 
-       * menubar-msw.c (mswindows_handle_wm_command): Ditto.
+       * .dbxrc:
+       * .gdbinit:
+       * Makefile.in.in: Remove obsolete EMACSBOOTSTRAP... environment
+       variables.
 
-       * gui.h: Ditto.
+2000-02-21  Mike Sperber <mike@xemacs.org>
 
-       * gui-x.c (popup_selection_callback): Ditto.
+       * s/aix4.h: Declare getaddrinfo broken for AIX 4, which it is.
 
-       * dialog-msw.c (dialog_proc): get_callback -> get_gui_callback.
+2000-02-21  Martin Buchholz <martin@xemacs.org>
 
-       * gui.c (get_callback): Renamed to get_gui_callback.
+       * XEmacs 21.2.30 is released.
 
-1998-05-17  Martin Buchholz  <martin@xemacs.org>
+2000-02-20  Martin Buchholz  <martin@xemacs.org>
 
-       * glyphs.h: order rearrangement.
+       Performance hacking.
+       * *.c (syms_of_*):
+       Add INIT_LRECORD_IMPLEMENTATION macros, paired with
+       DEFINE_LRECORD_IMPLEMENTATION macros in the same file.
+       * emacs.c (main_1):
+       * lisp.h (DEFUN):
+       * console.c (DEFVAR_CONSOLE_LOCAL_1):
+       * buffer.c (DEFVAR_BUFFER_LOCAL_1):
+       * symeval.h (DEFVAR_SYMVAL_FWD):
+       * symbols.c (guts_of_unbound_marker):
+       Make all c_readonly objects also lisp_readonly and marked for life.
+       * lrecord.h (struct lrecord_implementation):
+       Document flags better.
+       * lrecord.h (DEFINE_LRECORD_SEQUENCE_IMPLEMENTATION_WITH_PROPS):
+       * lrecord.h (DECLARE_LRECORD):
+       * lrecord.h (XSETRECORD):
+       * lrecord.h (RECORDP):
+       * lrecord.h (RECORD_TYPEP):
+       * lrecord.h (RECORD_MARKER): New.
+       * lrecord.h (error_check_*):
+       * lrecord.h (CONCHECK_NONRECORD):
+       * lrecord.h (MAKE_LRECORD_IMPLEMENTATION):
+       * lrecord.h (INIT_LRECORD_IMPLEMENTATION): New.
+       * lrecord.h (set_lheader_implementation):
+       * lrecord.h (enum lrecord_type): New.
+       * symeval.h (SYMBOL_VALUE_MAGIC_P):
+       * alloc.c (disksave_object_finalization_1):
+       * alloc.c (mark_object):
+       * alloc.c (lrecord_type_index):
+       * alloc.c (tick_lcrecord_stats):
+       * alloc.c (Fgarbage_collect):
+       * alloc.c (init_alloc_once_early):
+       * alloc.c (pdump_load):
+       * alloc.c (GC_CHECK_LHEADER_INVARIANTS): New.
+       * alloc.c (lrecord_type_index): Delete.
+       Make lisp object type indexes be constant.
+         Makes (byte-compile) 5% faster.
+       Put all marker functions into their own array.
+         Makes (garbage-collect) 5% faster.
+       Optimize SYMBOL_VALUE_MAGIC_P.
+         Makes (byte-compile) 2-3% faster.
+       * config.h.in (gc_checking_assert): New.
+       * alloc.c: Use gc_checking_assert().
+       * .dbxrc: Make compatible with new object type implementation.
+       * .gdbinit: Make compatible with new object type implementation.
+       * alloc.c: Delete all symbols defined only for debugging, such as
+       Lisp_Type_Vector and lrecord_charset.
+
+2000-02-21  Andy Piper  <andy@xemacs.org>
+
+       * gui-msw.c (Fmswindows_shell_execute): fix file location
+       problems.
+
+       * buffer.c (Fkill_buffer): remove buffer from alist buffer
+       unshowing so that set_window_buffer doesn't undo
+       kill_buffer_hook's hard work.
+
+       * glyphs-widget.c (tab_control_query_geometry): don't count the
+       first item when calculating geometry.
+
+       * glyphs.c (map_subwindow): remove redundant code.
+       (update_frame_subwindows): be more circumspect about when to
+       update subwindows.
+
+       * glyphs-x.c (x_update_widget): Properly fix sizing bug. Fix bug
+       when items haven't changed. Update faces if faces have changed as
+       well as just the widget face.
+       (x_tab_control_update): Update faces if faces have changed as well
+       as just the widget face.
+
+2000-02-21  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+       * device-msw.c: (mswindows_delete_device): Remove redundant DDE
+       registration.
+       (build_syscolor_string): Use mswindows_color_to_string to try to
+       get a named color.
+       (mswindows_device_system_metrics): Reverse the foreground and
+       background colors so that they match the documentation.
+
+       * objects-msw.c: (mswindows_X_color_map): tweak some values so
+       they match the default Windows palette.
+       (mswindows_color_to_string): New function.
+
+2000-02-21  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+       * s/windowsnt.h: Only use __declspec(noreturn) with MSVC>=6.
+
+2000-02-18  Olivier Galibert  <galibert@pobox.com>
+
+       * m/*, s/*: Removed obsolete DATA_SEG_BITS, PURE_SEG_BITS,
+       WORD_MACHINE, SIGN_EXTEND_CHAR and EXPLICIT_SIGN_EXTEND.
+
+       * symbols.c (init_symbols_once_early): Removed obsolete
+       DATA_SEG_BITS related kludge.
+       (defvar_magic): Ditto.
+
+       * malloc.c: Removed obsolete DATA_SEG_BITS
+       * ralloc.c: Ditto.
+       * mem-limits.h: Ditto.
+
+       * Makefile.in.in: Removed obsolete HAVE_SHM
+       * emacs.c: Ditto.
+
+2000-02-13  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+       *  device-msw.c (mswindows_delete_device): Free DDE string
+       handles.
+
+2000-02-16  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
+
+       * keymap.c (get_keyelt):
+       * unexnt.c (unexec):
+       * vm-limit.c (memory_warnings):
+       * ntheap.c (recreate_heap):
+       * ntheap.h (UNINIT_PTR):
+       * select-msw.c (Fmswindows_get_clipboard):
+       (Fmswindows_set_clipboard):
+       * objects-msw.h (MSWINDOWS_BAD_HFONT):
+       * objects-msw.c:
+       * menubar-msw.c (displayable_menu_item):
+       * glyphs-msw.c:
+       * glyphs-msw.h (IMAGE_INSTANCE_MSWINDOWS_MASK):
+       * sysdep.c (sys_subshell):
+       * process-nt.c (nt_create_process):
+       * nt.c (normalize_filename):
+       (dostounix_filename):
+       (unixtodos_filename):
+       * ntproc.c (win32_executable_type):
+       * ntplay.c (play_sound_data_1):
+       (play_sound_file):
+       * editfns.c (get_home_directory):
+       * event-msw.c (struct winsock_stream):
+       (mswindows_dde_callback):
+       * device-msw.c (msprinter_init_device):
+       (msprinter_get_devmode_copy): Frobbed syntax frivolities.
 
-       * device-tty.c (tty_asynch_device_change): Warning suppression.
-       * device-x.c (x_device_system_metrics): Warning suppression.
-       Make Doc strings consistent with coding standards.
+       * toolbar-msw.c (mswindows_free_frame_toolbars): Paramters to
+       mswindows_clear_toolbar were swapped!
 
-1998-05-24  Martin Buchholz  <martin@xemacs.org>
+       * objects-msw.c:(colormap_t):
+       (fontmap_t):
+       * emacs.c (struct standard_args): Fixed const jumble.
 
-       * general.c: multiple definition of `Qicon'.  general.c seems
-         like a good home for Qicon.
+       * glyphs-widget.c (update_widget): Fixed comparison notation.
 
-1998-05-20  Kirill M. Katsnelson  <kkm@kis.ru>
+       * event-msw.c (mswindows_dde_callback): Removed extraneous ';'.
 
-       * This patch is to fix compilation warnings under Windows.
+       * s\windowsnt.h (DOESNT_RETURN): Defined to support the MSVC
+       __declspec(noreturn) syntax.
 
-       * s/windowsnt.h: Encapsulate getpid with sys_getpid.
-       Added prototypes for FSF inherited functions, with which XEmacs is
-       sprinkled thoroughly.
-       Removed some #if 0 code. Bracketed some more definitions, probably
-       related to Visual C versions prior to 4 (we do not support them).
+2000-02-19  Martin Buchholz  <martin@xemacs.org>
 
-       * sysfloat.h (logb): Finally, get logb() prototyped.
+       * eldap.c (Fldap_open):
+       (Fldap_search_basic):
+       (Fldap_add):
+       (Fldap_modify):
+       Use new coding system conversion macros.
 
-       * sysfile.h: Added Windows specific includes.
-       Removed old Windows specific code bracketed with #if 0.
+2000-01-06  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
 
-       * sysdep.h: Added prototype for xrealpath().
+       * console-tty.c (tty_init_console): Change MULE to FILE_CODING.
 
-       * sysdep.c (sys_getpid): Added function, to support '95 negative pids.
+1999-11-27  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
 
-       * symsinit.h: Added prototypes for syms_of_dired_mswindows,
-       vars_of_dired_mswindows and init_ntproc (Grrr).
+       * eldap.h (Fldap_search) Renamed from Fldap_search_internal:
+       (Fldap_add, Fldap_modify, Fldap_delete): New functions
 
-       * realpath.c: Added Windows specific include files.
-       (xrealpath): Conditionalized declaration of some auto variables on
-       S_IFLNK, to avoid warnings.
+       * eldap.c (Qadd, Qreplace): New constant symbols
+       (Fldap_open): Use the LDAP_OPT_RESTART option to avoid
+       interruptions by XEmacs signals
+       Remove unnecessary calls to slow_down_interrupts and
+       speed_up_interrupts
+       (Fldap_search_basic): Renamed from Fldap_search_internal
+       Added new optional parameter VERBOSE that triggers the
+       display of progress messages
+       Remove unnecessary calls to slow_down_interrupts and
+       speed_up_interrupts
+       LDAP result code analysis rewritten
+       (Fldap_add, Fldap_modify, Fldap_delete): New functions
+       (syms_of_eldap): Define the new symbols and functions
 
-       * ntproc.c: Disabled some compiler warnings. This file is going to
-       die, so I have not cleaned it up much.
-       (set_process_dir): Const parameter.
-       (Fwin32_short_file_name): Down CHECK_* macros to one argument.
-       (Fwin32_long_file_name): Ditto.
-       (Fwin32_set_process_priority): Ditto. Why didn't I remove these
-       three functions?
 
-       * nt.h: Added prototypes for set_process_dir and convert_time.
+2000-02-17  Martin Buchholz  <martin@xemacs.org>
 
-       * nt.c: More include files.
-       (getpwnam): Consted char* argument.
-       (get_emacs_configuration): Const return value.
-       (opendir): Const argument.
-       (stat): Casted converstion long->short.
-       (stat): Removed ad hoc and questionable support for non-MSC compile.
-       (sys_pipe): Removed unused auto variable.
-       (_sys_read_ahead): Removed calls to DebPrint.
-       (sys_read): Ditto, in 2 places.
-       (term_ntproc): Added unused int parameter to signal handler, to
-       avoid a warning when compiling a call to signal().
-       (msw_sigset): Properly return old signandler or NULL instead of void.
+       * realpath.c: Determine PATH_MAX maximally portably.
 
-       * floatfns.c (Flogb): Casted arguments to unary minus to signed.
+       * insdel.c (bytecount_to_charcount): Optimize.
+       The function used to be optimized for entirely ASCII sequences.
+       Now it is optimized for successive characters from the same
+       charset.  This also wins big for _mostly_ ASCII sequences.
 
-       * gmalloc.c (morecore): Ditto.
-       (_free_internal): Ditto.
+       * fileio.c (Ffile_truename): convert return from realpath() using
+       Qfile_name, not Qbinary.  Fixes obvious bug with non-ASCII symlinks.
+       - Rewrite GCPROing slightly.
 
-       * lread.c (parse_integer): Ditto.
+       * sysdep.c (sys_open): Do filename conversion, like all other
+       sys_* functions.  Fixes bug:
+       (let ((file-name-coding-system 'iso-8859-2))
+          (write-region x y latin2-name))
+       ==> writes filename using internal encoding.
 
-       * dired-msw.c: Added several include files.
+2000-02-18  Martin Buchholz  <martin@xemacs.org>
 
-       * cmdloop.c (Fcommand_loop_1): Added Microsoft C to the Big List
-       of Compilers to Shut Up.
+       * buffer.c (DEFVAR_BUFFER_LOCAL_1): Turn on c_readonly. Always const.
+       * console.c (DEFVAR_CONSOLE_LOCAL_1): Turn on c_readonly. Always const.
+       * symeval.h (DEFVAR_SYMVAL_FWD): Turn on c_readonly. Always const.
+       * eval.c (lrecord_subr): Remove this_one_is_unmarkable.
+       * symbols.c (lrecord_symbol_value_forward): Remove this_one_is_unmarkable.
+       * symbols.c (guts_of_unbound_marker): Turn on c_readonly.
+       * lrecord.h (UNMARKABLE_LRECORD_HEADER_P): Delete.
+       (CONST_IF_NOT_DEBUG): Delete.
+       * alloc.c (this_one_is_unmarkable): Delete.
+       (mark_object): Don't check for this_one_is_unmarkable. Use the
+       c_readonly flag instead.
+       * lisp.h (DEFUN): Define a Lisp_Subr as c_readonly.
 
-       * callproc.c: Added #includes to suppress warnings under Windows.
-       (init_callproc): Removed #if0'ed code and unused variables.
+2000-02-18  Jonathan Harris  <jhar@tardis.ed.ac.uk>
 
-1998-05-25  Andy Piper  <andyp@parallax.co.uk>
+       * event-msw.c (mswindows_drain_windows_queue):
+       (emacs_mswindows_handle_magic_event): Remove attempt to optimise
+       away redundant repaint events.
 
-       * device-msw.c (mswindows_device_system_metrics): do planes in a
-       way consistent with X.
+2000-02-17  Andy Piper  <andy@xemacs.org>
 
-       * glyphs-msw.c (mswindows_initialize_image_instance_mask): don't
-       use SetPixel, use DIBits functions.
-       (xpm_to_eimage): frob colors more closely like xpm deos.
+       * redisplay.h: declare mark_redisplay_structs.
 
-       * toolbar-msw.c: only resize bitmaps when shrinking. Adjust look
-       to be closer to X version.
+       * redisplay.c (redisplay_window):
+       (redisplay_frame): don't check subwindows_state_changed.
+       (mark_redisplay): mark gutters here.
 
-       * event-msw.c: use tooltip string directly.
+       * glyphs.c: (instantiate_image_instantiator): always layout if we
+       haven't done so already.
+       (allocate_image_instance): don't mark as dirty.
+       (update_subwindow): bind inhibit_quit.
 
-       * redisplay-msw.c: reinstate Kirill's bg pixmap change.
+       * gutter.c (mark_gutters): new function.
 
-       * objects-msw.c: frob rgb colors that only Kyle uses.
+       * glyphs-x.c (x_update_widget): Always resize to get round a
+       widget bug.
 
-       * dialog-msw.c (button_width): INLINE -> inline.
+       * glyphs-msw.c (mswindows_tab_control_update): remove `;' that was
+       breaking absolutely everything.
 
-1998-05-23  SL Baur  <steve@altair.xemacs.org>
+       * gutter.h: declare mark_gutters.
 
-       * getloadavg.c (getloadavg): Fix typo.
+2000-02-16  Martin Buchholz <martin@xemacs.org>
 
-1998-05-23  Kirill M. Katsnelson  <kkm@kis.ru>
+       * XEmacs 21.2.29 is released.
 
-       * objects-msw.c (mswindows_initialize_font_instance): Added support
-       for font character sets.
-       Replaced 'XXX' with '####' in comments throughout the file.
+2000-02-15  Olivier Galibert  <galibert@pobox.com>
 
-1998-05-23  Kirill M. Katsnelson  <kkm@kis.ru>
+       * fns.c (size_bit_vector): Fix computation of the size.
 
-       * emacs.c (main_1): Added calls to vars_of_dialog_mswindows() and
-       console_type_create_dialog_mswindows(), to initialize Windows dialog
-       support.
+2000-02-15  Martin Buchholz  <martin@xemacs.org>
 
-       * symsinit.h: Prototyped the above functions.
+       * *.[ch]: Change CONST to const globally.
+       find -name '*.[ch]' | \
+       xargs global-replace \
+       's/(^|(?<=[^A-Za-z0-9_]))CONST((?=[^A-Za-z0-9_])|$)/const/g'
+       - Remove vestigial references to CONST_IS_LOSING
 
-       * dialog-x.c (x_popup_dialog_box): Moved dialog descriptor consistency
-       checks to dialog.c...
+2000-02-13  Jonathan Harris  <jhar@tardis.ed.ac.uk>
 
-       * dialog.c (Fpopup_dialog_box): ...right here. Added more checks: a
-       device must support dialog boxes, and the descriptor must supply at
-       least one button.
+       * event-msw.c (mswindows_drain_windows_queue): Remove hack to
+       bailout early on quit. Enqueue WM_PAINT events as XEmacs magic
+       events instead of dispatching them directly.
+       (mswindows_handle_paint): New function to do repainting.
+       (mswindows_wnd_proc):
+       (emacs_mswindows_handle_magic_event): Call above function.
 
-       * dialog-msw.c: New file, dialogs for Windows.
+2000-02-13  Jonathan Harris  <jhar@tardis.ed.ac.uk>
 
-1998-05-21  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
+       * objects-msw.c (mswindows_create_font_variant): Return the new
+       font handle.
+       (initialize_font_instance): Get font metrics from the underlined
+       variant of the font to cope with the case where the underlined
+       font has a bigger descent.
 
-       * eldap.c (ldap_search_unwind): Return Qnil instead of nothing
-       (Fldap_search_internal): Removed unused variable `err'
+2000-02-08   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
 
-       * eldap.h: Moved Lisp_LDAP declaration here instead of using a
-       forward declaration
+       * gui.c (gui_item_accelerator): Return the first underlined
+       character in item name.
 
-1998-05-17  Martin Buchholz  <martin@xemacs.org>
+2000-02-11  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
 
-       * eldap.h: eldap.[ch] should never be used unless HAVE_LDAP is
-       defined.  Therefore there is no need to handle the case when
-       HAVE_LDAP is undefined.  Similarily, there is no reason to have
-       any code wrapped within `#ifdef emacs', since this code is only
-       useful within an emacs.  This simplifies the code significantly.
+       * lisp.h: Added Qprinter.
 
-       * inline.c: Include eldap.h only if HAVE_LDAP.
-       * inline.c: Don't bother including TT_C_H_PATH, since tooltalk.h
-       already does that.
+       * general.c (syms_of_general): Initialized it.
 
-1998-05-21  Kirill M. Katsnelson  <kkm@kis.ru>
+       * redisplay-msw.c (get_frame_dc): Conditionally start a new page.
+       (get_frame_dc):
+       (get_frame_compdc): Made inline.
 
-       * unexnt.c (copy_executable_and_dump_data_section): Suppress
-       printing dump stats when building without DEBUG_XEMACS.
-       (dump_bss_and_heap): Ditto.
+       * console.h (struct console_methods): Added eject_page method.
 
-1998-05-21  Andy Piper  <andyp@parallax.co.uk>
+       * frame.h: Added FRAME_DISPLAY_P and friends.
+       Aligned backslahes in many macros in more readable fashion.
+       Added page_number to struct frame, and an accessor macro
+       for it.
 
-       * gnuclient.c: don't suppress window system if there is no display
-       and we are running under mswindows. send 'mswindows device type if
-       we are in this situation.
+       * defice.h: Added DEVICE_DISPLAY_P and friends.
 
-1998-05-20  Andy Piper  <andyp@parallax.co.uk>
+       * device.c (Fdevice_printer_p): Used these.
 
-       * general.c:
-       * lisp.h: Qbitmap, Qcursor, Qicon moved here from glyphs-msw.c.
+       * frame.c (allocate_frame_core): Initialize page number.
+       (Fprint_job_page_number):
+       (Fprint_job_eject_page): Implemented.
 
-       * glyphs-msw.c: change cursor imgae type name to resource. Fix
-       some nits.
+       * frame-msw.c (msprinter_eject_page): Added method.
+       (msprinter_start_page): Added.
 
-1998-05-20  Kirill M. Katsnelson  <kkm@kis.ru>
+       * window.c (Fwindow_truncated_p): Fixed docstring.
+       (Fwindow_last_line_visible_height): Implemented.
 
-       * EmacsFrame.c (Xt_StringToScrollBarPlacement):  Added support for
-       {top,bottom}-{left,right} values in addition to
-       {top,bottom}_{left,right}.
+2000-02-09  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-1998-05-18  Hrvoje Niksic  <hniksic@srce.hr>
+       * frame.c (change_frame_size_1): Undo 2000-02-03 change.
 
-       * fileio.c (Fmake_temp_name): Remove unreached code.
+1999-12-20  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
 
-       * process-nt.c (validate_signal_number): Use
-       signal_simple_error().
+       * syntax.c (scan_words): Always advance at least one character.
 
-1998-05-19  Martin Buchholz  <martin@xemacs.org>
+2000-02-13  Andy Piper  <andy@xemacs.org>
 
-       * unexhp9k800.c:
-       * sound.c (vars_of_sound):
-       * sysdep.c (reset_sigio_on_device):
-       * window.c (window_bottom_gutter_height):
-       unexhp9k800.c:258: warning: implicit declaration of function
-       `calculate_checksum'
-       sound.c:604: warning: implicit declaration of function `vars_of_hpplay'
-       sysdep.c:1012: warning: unused variable `owner'
-       window.c:993: warning: `window_right_toolbar_width' defined but not used
+       * redisplay.c (add_glyph_rune): call get_glyph_cachel_index here
+       to make sure the glyph is in the cachels.
 
-1998-05-19  Andy Piper  <andyp@parallax.co.uk>
+       * glyphs.h (struct Lisp_Image_Instance): make layout_changed a
+       global image instance flag.
+       (IMAGE_INSTANCE_NEEDS_LAYOUT): new macro.
+       (XIMAGE_INSTANCE_NEEDS_LAYOUT): ditto.
 
-       * glyphs-msw.c (mswindows_create_resized_mask)
-       (mswindows_create_resized_bitmap): new funnctions split out from
-       mswindows_resize_dibitmap_instance.
+       * glyphs.c (allocate_image_instance): set dirty bits correctly.
+       (Fset_image_instance_property): mark layout as changed.
+       (invalidate_glyph_geometry_maybe): mark layout as changed.
+       (glyph_width): use new NEEDS_LAYOUT macro.
+       (glyph_ascent): ditto.
+       (glyph_descent): ditto.
+       (glyph_height): ditto.
+       (image_instance_layout): mark layout as clean after laying out.
+       (update_subwindow): don't mark layout as clean here.
 
-       * glyphs-msw.h: declare new resize functions.
+       * glyphs-x.h (IMAGE_INSTANCE_X_WIDGET_ID): undo C++ changes, they
+       should no longer be needed.
 
-       * toolbar-msw.c (mswindows_output_toolbar): use new bitmap resize
-       functions so that the original bitmaps are preserved.
+       * glyphs-x.c (x_update_widget): sanitize asserts.
+       (x_finalize_image_instance): sanitize assignment to widgets.
 
-       * sheap.c: fixup static heap exhausted error to avoid FAQs.
+       * glyphs-widget.c (widget_instantiate): don't need to clear the
+       layout flag here.
 
-       * redisplay-msw.c (mswindows_output_blank): fixup brush from bg
-       color if we are trying to output 0 depth bg pixmap.
+2000-02-13  Martin Buchholz  <martin@xemacs.org>
 
-       * scrollbar-msw.c: warning elimination.
+       * sysdep.c (getcwd): Use standard prototype.
+       * sysdep.h (getcwd): Use standard prototype.
 
-1998-05-18  Martin Buchholz  <martin@xemacs.org>
+       * fns.c (Fsubseq): Change parameters to more natural ANSI Lisp
+       (sequence, start, end).
+       Remove redundant type checking.
+       (Fmapconcat): Remove useless GCPRO, a wrong-headed attempt (in
+       view of `caller-protects') to avoid a crash where the real fix was
+       found elsewhere.
 
-       * frame-x.c (x_update_frame_external_traits): Start preprocessor
-       directives in column 1.
+2000-02-12  Martin Buchholz  <martin@xemacs.org>
 
-       * search.c (skip_chars): Avoid using xzero with arrays, since some
-       compilers get confused by the construct &array.
+       * glyphs-x.c (x_finalize_image_instance): Compile error fixes.
 
-1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
+       * s/sol2.h: Remove feature macro initialization.
 
-       * objects-msw.h:
-       * objects-msw.c: Changed the charset value for a new font from
-       "don't care" to "ansi".
+       * alloc.c (alloc_lcrecord): Add more type checking assertions.
+       (vector_hash): New.  Code from internal_hash.
+       * lrecord.h:
+       Fix up allocation subsystem comments.
 
-       * glyphs-msw.c (convert_EImage_to_DIBitmap): Warnings fix.
+       * config.h.in: Add __EXTENSIONS__ for Solaris.
 
-1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
+       * systime.h (EMACS_GETTIMEOFDAY): New.
+       (EMACS_GET_TIME): Use EMACS_GETTIMEOFDAY.
+       Remove Solaris-specific code.
+       Use void* for the (ignored) second arg for gettimeofday().
 
-       * event-msw.c (mswindows_wnd_proc, WM_KEYDOWN): Do not clear shift
-       modifier on control chars.
-       Use IsCharAlpha() instead of isaplha().
+       * elhash.c (hash_table_hash): Implement it, finally.
+       * elhash.c:  Use hashcode_t.
 
-1998-05-19  Kazuyuki IENAGA <ienaga@jsys.co.jp>
+       * linuxplay.c (sighandler): Fix prototypes to use SIGTYPE.
+       * sunplay.c (sighandler): Fix prototype to use SIGTYPE.
 
-       * s/freebsd.h: FreeBSD 2.2.6 now supports setlocale(LC_ALL, "").
+       * lisp.h (STRETCHY_STRUCT_SIZEOF): Delete.
+       * fns.c (size_bit_vector):
+       * alloc.c (size_vector):
+       (make_vector_internal):
+       (make_bit_vector_internal):
+       (sweep_bit_vectors_1):
+       Replace calls to STRETCHY_STRUCT_SIZEOF with offsetof expression.
 
-1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
+2000-02-10  Martin Buchholz  <martin@xemacs.org>
 
-       * objects-msw.c (mswindows_initialize_font_instance): Use ANSI
-       charset when creating font.
-       (mswindows_initialize_color_instance): Do not create brush along
-       with a color.
-       (mswindows_finalize_color_instance): Do not delete it then.
+       * s/aix4.h: #define MAP_FAILED if sys/mman.h didn't.
+       Include strings.h to avoid warnings for bzero and strcasecmp.
 
-       * objects-msw.h (struct mswindows_color_instance_data): Removed
-       brush slot, and corresponding accessor macro.
+2000-02-10  Olivier Galibert  <galibert@pobox.com>
 
-1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
+       * alloc.c: Move STRETCHY_STRUCT_SIZEOF from here...
+       * lisp.h (STRETCHY_STRUCT_SIZEOF): ...to here
 
-       * toolbar.c: Removed toolbar_data lrecord implementation.
-       (mark_frame_toolbar_buttons_dirty): Replase usage of toolbar_data
-       with toolbar_buttons (via FRAME_TOOLBAR_BUTTONS).
-       (compute_frame_toolbar_buttons): Ditto.
-       (CHECK_TOOLBAR): Ditto.
-       (set_frame_toolbar): Removed allocation of toolbar_data lrecord.
-       (update_frame_toolbars): Do not check for changed buffer
-       here. Toolbar information is provided by cached specs in
-       windows. The check for buffer is eliminated becuase toolbars are
-       marked changed in set_frame_selected_window() in frame.c
-       Added check for changed toolbars geometry.
-       (compute_frame_toolbars_data): Removed unused second parameter;
-       Adjusted callers of this static function throughout the file.
-       (init_frame_toolbars): Initialize current_toolbar_size.
-       (update_frame_toolbars): Use DEVICE_SUPPORTS_TOOLBARS_P instead of
-       what is its current expansion, for clarity.
-       (init_frame_toolbars): Ditto.
-       (init_device_toolbars): Ditto.
-       (init_global_toolbars): Ditto.
+       * fns.c (size_bit_vector): New.  Declare bit vectors as a
+       sequence.
 
-       * toolbar.h: Removed definition of toolbar_data lrecord.
-       Added accessor macros FRAME_TOOLBAR_BUTTONS and
-       FRAME_CURRENT_TOOLBAR_SIZE.
-       Added macro DEVICE_SUPPORTS_TOOLBARS_P.
+2000-02-10  Olivier Galibert  <galibert@pobox.com>
 
-       * toolbar-x.c (x_output_toolbar): The same change as in
-       toolbar-msw.c
-       (x_output_toolbar): Ditto.
-       (x_redraw_exposed_toolbar): Ditto.
+       * symeval.h (struct symbol_value_magic): Remove "next" kludge and
+       use a value field instead.
+       (symbol_value_forward_forward): Use value field.
+       (DEFVAR_SYMVAL_FWD): Use value field.
+       (DEFVAR_SYMVAL_FWD_INT): Added.  Dumps the int with dumpopaque.
+       (DEFVAR_INT): Use DEFVAR_SYMVAL_FWD_INT.
+       (DEFVAR_CONST_INT): Ditto.
+       (DEFVAR_BOOL): Ditto.
+       (DEFVAR_CONST_BOOL): Ditto.
+       (DEFVAR_INT_MAGIC): Ditto.
+       (DEFVAR_BOOL_MAGIC): Ditto.
 
-       * toolbar-msw.c (mswindows_output_toolbar): Retrieve current
-       buttons from toolbar_buttons using FRAME_TOOLBAR_BUTTONS macro.
-       (mswindows_output_toolbar): Ditto.
-       (mswindows_output_toolbar): Ditto.
+       * symbols.c (guts_of_unbound_marker): Use value field.
+       * console.c (DEFVAR_CONSOLE_LOCAL_1): Ditto.
+       * buffer.c (DEFVAR_BUFFER_LOCAL_1): Ditto.
 
-       * frame.c (mark_frame): Removed marking of arrays, according to
-       frameslots.h change.
-       (nuke_all_frame_slots): Ditto.
-       (set_frame_selected_window): Mark toolbars changed when
-       last_nonminibuf_window changes.
+       * lisp.h: Declare dumpopaque and noninteractive1.
 
-       * frame.h (struct frame): Moved some slots to frameslots.h.
-       Added current_toolbar_size array.
-       Changed references from toolbar_data to toolbar_buttons in macros
-       FRAME_RAW_THEORETICAL_TOOLBAR_VISIBLE,
-       FRAME_RAW_THEORETICAL_TOOLBAR_SIZE and
-       FRAME_RAW_THEORETICAL_TOOLBAR_BORDER_WIDTH.
+       * alloc.c (dumpopaque): Added.
+       (pdump_dump_opaquevec): Added.
+       (pdump): Call pdump_dump_opaquevec to dump opaque data.
+       (pdump_load): Reload opaque data.  Sync noninteractive1 with
+       noninteractive.
 
-       * frameslots.h: Added macro MARKED_SLOT_ARRAY a la winslots.h
-       Moved arrays of lisp objects here from frame.h: toolbar_size,
-       toolbar_visible_p, toolbar_border_width.
-       Removed toolbar_data slot and added toolbar_buttons.
+2000-02-10  Andy Piper  <andy@xemacs.org>
 
-1998-05-17  Kirill M. Katsnelson  <kkm@kis.ru>
+       * glyphs.c (image_instance_layout): if the size changes, mark it
+       as such.
 
-       * symsinit.h: Externed syms_of_process_nt()
+       * redisplay-output.c (redisplay_output_layout): Update the
+       subwindow here.
+       (redisplay_output_subwindow): ditto.
 
-       * emacs.c (main_1): Call syms_of_process_nt()
+       * glyphs.c (update_subwindow): make sure we reset flags for
+       layouts as well as everything else.
+
+       * glyphs-widget.c (layout_layout): don't need to set the instances
+       dimensions here.
+
+2000-02-09  Martin Buchholz  <martin@xemacs.org>
+
+       * device-x.c (x_init_device): Wrap calls to dll_*  in HAVE_SHLIB,
+       not HAVE_DLOPEN, which is a lower-level thing.
+
+       * .cvsignore: Ignore gmon.out
+
+2000-02-09  Hamish Macdonald <hamishm@lucent.com>
+
+       * .cvsignore: Ignore portable dumper xemacs.dmp file
+
+2000-02-09  Andy Piper  <andy@xemacs.org>
+
+       * redisplay-output.c (redisplay_output_layout): be more clever
+       about when we output based on the changed flags.
+
+       * glyphs.h (struct image_instantiator_methods): add update_method.
+       (struct Lisp_Image_Instance): add changed flags. Declare new
+       macros for manipulating them.
+
+       * glyphs.c (allocate_image_instance): renamed glyph -> parent.
+       (image_instance_parent_glyph): find an image_instance's parent
+       glyph or image_instance.
+       (image_instance_layout): mark the size as changed.
+       (set_image_instance_dirty_p): new function. mark an image
+       instance, plus all of its parents, as dirty.
+       (Fset_image_instance_property): use it.
+       (Fglyph_animated_timeout_handler): use it.
+       (update_subwindow): call update_widget and device methods for
+       update_subwindow. Mark all changed flags as clean.
+       (Fresize_subwindow): mark size as changed.
+
+       * glyphs-x.c (x_finalize_image_instance): try and detect gc
+       failures.
+       (x_update_subwindow): only resize subwindows here.
+       (x_update_widget): new function. Update all changed properties of
+       a widget.
+       (x_resize_subwindow): deleted.
+       (x_widget_set_property): deleted.
+       (x_progress_gauge_set_property): deleted.
+       (x_progress_gauge_update): new function. Implement recorded
+       changes.
+       (x_tab_control_update): ditto.
+       (x_tab_control_set_property): deleted.
+       (console_type_create_glyphs_x): declare new functions.
+       (image_instantiator_format_create_glyphs_x): ditto.
+
+       * glyphs-widget.c (widget_set_property): mark text changed.
+       (update_widget): new function. Update properties of a widget.
+       (widget_instantiate): for layouts make sure we set their
+       children's parent correctly.
+       (tab_control_set_property): new function. Record changes that will
+       take place under redisplay's control.
+       (progress_gauge_set_property): ditto.
+       (image_instantiator_progress_guage): declare new functions.
+       (image_instantiator_tab_control): ditto.
+
+       * glyphs-msw.c (mswindows_update_subwindow): just do resizing here
+       now.
+       (mswindows_update_widget): new function. Update all properties on
+       a widget that have changed.
+       (mswindows_button_update): new function. Update a button's set
+       state.
+       (mswindows_tab_control_update): new function. Update the items in
+       a tab.
+       (mswindows_tab_control_set_property): deleted.
+       (mswindows_progress_gauge_update): new function. Update the
+       progress gauge's progress.
+       (mswindows_widget_set_property): deleted. This is all done
+       asynchronously now.
+       (mswindows_progress_gauge_set_property): ditto.
+       (console_type_create_glyphs_mswindows): declare new methods.
+       (image_instantiator_format_create_glyphs_mswindows): ditto.
 
-       * process-nt.c: Quote process arguments by a call to Lisp function
-       `nt-quote-process-args'.
-       (syms_of_process_nt): New function.
-       (nt_send_process): Flush data stream after each write, to avoid
-       leaving buffered data.
-       (nt_send_process): When blocked on process output, wait for
-       process to slurp more for progressively increasing time intervals.
+       * frame-msw.c (msprinter_init_frame_1): Remove unused variables.
+       (msprinter_set_frame_properties): ditto.
 
-1998-05-17  Martin Buchholz  <martin@xemacs.org>
+       * console.h (struct console_methods): Add update_widget_method.
 
-       * window.c (have_undivided_common_edge): Make file-local function
-       static.
-       (map_windows): Return 0 if all map functions successful.
-       Fix typos.
+2000-02-09  Andy Piper  <andy@xemacs.org>
 
-       * winslots.h: Use unlikely names for local variables in macros to
-       avoid shadowing warnings.
+       * gui-msw.c (Fmswindows_shell_execute): Make
+       mswindows-shell-execute industrial strength.
 
-1998-05-17  Andy Piper  <andyp@parallax.co.uk>
+2000-02-08  Martin Buchholz  <martin@xemacs.org>
 
-       * toolbar-msw.c (mswindows_output_toolbar): hash on toolbar width
-       so that we re-output if the toolbar size has changed.
+       * lrecord.h: Make macro argument `props' match member function `plist'.
+       * fns.c (Fget):
+       * fns.c (Fput):
+       * fns.c (Fremprop):
+       * fns.c (Fobject_plist):
+       * alloc.c:
+       * symbols.c:
+       Object property list frobbing cleanup.
+       - Allow any lisp object (compared with `eq'), not just symbols, as
+         keys in object plists.
+       - Move symbol plist frobbing into symbols.c, where it belongs.
+       - Move string plist frobbing into alloc.c, where it belongs.
+       - Everything's an lrecord now, so no need to test for symbolp, etc.
+       - Fix up doc strings to refer to PROPERTY, not PROPNAME.
 
-1998-05-17  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
+       * extents.c: Reorder code to remove declarations.
 
-       * s/aix4-2.h (ALIGN_DATA_RELOC): Undefined to support new unexaix.c.
+       * frame.h (store_in_alist): Remove useless declaration.
 
-       * s/aix3-1.h (ALIGN_DATA_RELOC): Defined to support new unexaix.c.
+2000-02-07  Martin Buchholz  <martin@xemacs.org>
 
-       * unexaix.c: Massive cleanup and support of AIX 4.2 (and hopefully
-       greater).
+       * event-Xt.c (x_has_keysym): Use XConvertCase only if available.
+       * config.h.in: Add HAVE_XCONVERTCASE.
 
-1998-05-16  Kirill M. Katsnelson  <kkm@kis.ru>
+2000-02-07  Andy Piper  <andy@xemacs.org>
 
-       * glyphs-msw.c: Defined OEMRESOURCE before including windows.h to
-       get bitmap manifest constants defined.
+       * glyphs.c (image_instance_layout): undo 2000-01-29 change since
+       it breaks many things.
 
-       * console-msw.h: Include system files in angle brackets, not in
-       quotes.
+2000-02-07  Jan Vroonhof  <vroonhof@math.ethz.ch>
 
-       * window.c (specifier_vars_of_window): Fixed a typo in
-       `vertical-divider-line-width' docstirng.
+       * src/syntax.h (SYNTAX_START_P): Check whether the two chars
+       actually can start a common comment type.
+       * src/syntax.h (SYNTAX_END_P): ditto for end.
 
-1998-05-16  Olivier Galibert  <galibert@pobox.com>
+2000-02-07  Martin Buchholz <martin@xemacs.org>
 
-       * line-number.c (delete_invalidate_line_number_cache): Use an
-       EMACS_INT.
-       (buffer_line_number): Remove dangerous, plain wrong when using
-       64bits emacs ints, cast.
+       * XEmacs 21.2.28 is released.
 
-       * insdel.c (buffer_delete_range): Use an EMACS_INT.
+2000-02-06  Martin Buchholz  <martin@xemacs.org>
 
-       * cmds.c (Fforward_line): Use EMACS_INTs.
+       * event-Xt.c (x_keysym_to_character): New.
+       (maybe_define_x_key_as_self_inserting_character): New.
+       (x_has_keysym): New.
+       Auto-define all keys on the keyboard as self-insert-key.
 
-       * search.c (bi_scan_buffer): Change to use EMACS_INTs.
-       (scan_buffer): Ditto.
-       (bi_find_next_newline_no_quit): Remove useless cast.
-       (find_next_newline_no_quit): Ditto.
-       (find_next_newline): Ditto.
-       (find_before_next_newline): Use an EMACS_INT.
+2000-02-02  Martin Buchholz  <martin@xemacs.org>
 
-       * lisp.h: Change scan_buffer to pass EMACS_INTs.
+       * menubar.c (vars_of_menubar): A small code simplification.
 
-1998-05-16  Hrvoje Niksic  <hniksic@srce.hr>
+       * minibuf.c (echo_area_append): Workaround egcs-20000131 c++ compiler bug
 
-       * menubar-msw.c (mswindows_handle_wm_command): Ditto.
+       * ExternalShell.c:
+       * ExternalClient.c:
+       * EmacsShell-sub.c:
+       * EmacsManager.c:
+       * EmacsFrame.c:
+       Use consistent style for specifying X resources.
 
-       * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
+       * symbols.c (Fset): Further implement SYMVAL_LISP_MAGIC.
+       This makes (dontusethis-set-symbol-value-handler) actually usable.
 
-       * gui-x.c (popup_selection_callback): Use it.
+       * lrecord.h (lrecord_decription_type):
+       * alloc.c (pdump_register_sub):
+       (pdump_dump_data):
+       (pdump_reloc_one):
+       Add XD_LISP_OBJECT_ARRAY to describe multiple Lisp_Objects.
+       Comply with XEmacs coding style.
+       All lrecord descriptions updated to use XD_LISP_OBJECT with 2
+       args, and XD_LISP_OBJECT_ARRAY with 3 args.
 
-       * gui.h (get_callback): Declare it.
+       * keymap.c (Faccessible_keymaps):
+       Make (accessible-keymaps map "\C-h") do the Right Thing.
+       Make (accessible-keymaps map []) do the Right Thing.
+       Make (accessible-keymaps map "") do the Right Thing.
+       (check_keymap_definition_loop): New function.
+       (keymap_store_internal): Keep luser from shooting self in foot,
+         via (define-key ctl-x-4-map "p" global-map).
+       Remove fullness slot from struct Lisp_Keymap, since hash tables
+       are now reliable.
+       (print_keymap): Remove 'Yuck' factor by simply printing "size %d".
 
-       * gui.c (get_callback): New function.
+2000-01-30  Martin Buchholz  <martin@xemacs.org>
 
-1998-05-15  SL Baur  <steve@altair.xemacs.org>
+       * redisplay.c (init_redisplay): Fix small memory leak.
+       * elhash.h:
+       * elhash.c (pdump_reorganize_hash_table):
+       Rename from reorganize_hash_table. Change prototype.
+       Reuse the original memory for hentries.  Save 100k.
+       * alloc.c (PDUMP_READ): new macro.
+       * alloc.c (pdump_load): Replace LISP_TO_VOID with higher-level macros.
+       * alloc.c: No need to #ifndef before #undef.
 
-       * window.c (have_undivided_common_edge): Guard scrollbar specific
-       stuff.
-       (window_needs_vertical_divider_1): Ditto.
+       * print.c: Allow debug_print() to print readably by modifying
+       debug_print_readably.  Use consistent variable names.
 
-1998-05-16  Hrvoje Niksic  <hniksic@srce.hr>
+       * .dbxrc: Try to get things to work even if stopped in a function
+       without source available by explicitly specifying source files.
+2000-02-03  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
 
-       * emacs.c (decode_path): Eliminate compiler warning.
-       (Fdecode_path): Renamed to Fsplit_path.
-       (Fsplit_string_by_char): New function.
+       * unexnt.c (_start): Removed bogus code which caused loading heap
+       from differrent executable file.
+       Removed bogus assignment to _fmode, which caused inconsistencies.
 
-1998-05-14  Damon Lipparelli  <lipp@primus.com>
+2000-02-03  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
 
-        * winslots.h: close comment
+       * s\windowsnt.h: Removed lots of #if 0 blocks of Emacs heritage.
+       Have spawnve encapsulation regard DONT_ENCAPSULATE.
+       Do not preliminary `#define signal sigset'.
 
-1998-05-16  Kirill M. Katsnelson  <kkm@kis.ru>
+       * systime.h: Do not prototype environ on windows nt and cygwin,
+       this conflicts with system header.
 
-       * callproc.c: Removed declared and unused variable Qbuffer_file_type.
+       * syssignal.h: Use correct define for WINDOWSNT
 
-       * bufslots.h: Removed buffer_file_type slot.
+       * sysdep.h: Do not prototype environ on windows nt, this conflicts
+       with system header.
 
-       * buffer.c (complex_vars_of_buffer): Removed buffer_file_type from
-       buffer local flags.
-       (complex_vars_of_buffer): Removed buffer-file-type variable and
-       its default reference.
+       * sysdep.c (near start of file): Fixed commentary and rearranged
+       ifdefs in readable order.
+       (NEED_STARTS): Do not force NEED_STARTS when PDUMPing.
+       (start_of_text):
+       (end_of_text):
+       (end_of_data): Do not compile in if using PDUMP.
 
-1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
+       * symsinit.h: Prototyped vars_of_nt().
 
-       * faces.c (complex_vars_of_faces): Defined
-       Vvertical_divider_face.
-       (vars_of_faces): Staticpro it.
+       * ntproc.c (windows9x_p): Added, instead of os_subtype.
+       (find_child_console): Use it.
+       (sys_kill): Use it.
 
-       * faces.h: Externed Vvertical_divider_face.
+       * ntheap.h: Do not extern os_subtype.
 
-       * redisplay-x.c (x_output_vertical_divider): Use
-       Vvertical_divider_face to draw the divider instead of modeline
-       face.
+       * ntheap.c (cache_system_info): Do not cache unneeded:
+       nt_major_version, nt_minor_version and os_subtype.
+       (recreate_heap): Do not compile in when PDUMPing.
 
-       * redisplay-msw.c (mswindows_output_vertical_divider): Draw
-       divider face using Vvertical_divider_face background.
-       Fix drawing spacing gaps around the divider.
+       * nt.c (geteuid and friends): Use the new varibale
+       nt_fake_unix_uid, instead of hashing fake uid out of NT RID.
+       (init_user_info): Removed the above mentioned hackery.
+       (fstat, stat): Do not compile in if using MSVC 5.0 and above -
+       stat has been fixed in the C runtime.
+       (vars_of_nt): Added, defined the nt_fake_unix_uid variable there.
 
-1998-05-14  Didier Verna  <verna@inf.enst.fr>
+       * file-coding.c (struct file_coding_dump): Do not define
+       ucs_to_mule_table in the struct if not MULE.
+       (struct struct lrecord_description fcd_description_1): Do not dump
+       the above.
 
-       * redisplay-x.c (x_output_vertical_divider): removed hard-wired
-       values for the vertical divider line width and spacing. Use the
-       cached values from the window structure instead.
-       (x_divider_width): ditto.
+       * emacs.c (main_1): Call vars_of_nt().
+       (right before Fdump_emacs_data): Don't need lastfile if using both
+       portabe dumper and system malloc.
 
-       * window.c (specifier_vars_of_window): new specifiers:
-       vertical-divier -line-width and -spacing.
-       (vertical_divider_global_width_changed): formerly known as
-       vertical_divider_shadow_thickness_changed.
+       * alloc.c (Fmemory_limit): Conditionalized out.
+       (pdump): Use OPEN_BINARY for the portable dump file.
+       (pdump_load): Ditto.
 
-       * winslots.h: new slots: vertical_specifier _line_width and
-       _spacing. Plus corrected a comment typo.
+2000-02-02  Mike Alexander  <mta@arbortext.com>
 
-1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
+       * nt.c (convert_time): Set tm_isdst before calling mktime and
+       avoid calling it at all if the compiler supports 64 bit integers.
+       Also initialize utc_base_ft before using it.
 
-       * window.h: Declared window_divider_width().
+2000-02-03   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
 
-       * console-stream.c (stream_divider_width): Removed method.
-       (console_type_create_stream): And declaration for it.
+       * frame.c (change_frame_size_1): Take f->internal_border_width
+       into consideration when calculating the width of the frame.
 
-       * redisplay.c (pixel_to_glyph_translation): Use
-       window_divider_width() instead of divider_width redisplay method.
-       (pixel_to_glyph_translation): Fix top divider edge calculation
-       when scrollbar is on top.
+2000-02-01  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
 
-       * window.c (window_divider_width): New function, an outphaser for
-       divider_width redisplay method.
-       (window_right_gutter_width): Use it.
-       (specifier_vars_of_window): For vertical-divider-{spacing,line-width}
-       specifiers, set fallback values differently on TTYs, and document
-       the behavior of these on TTYs in the docstrings.
+       * window.c (frame_min_height):
+       (frame_size_valid_p):
+       (frame_pixsize_valid_p): Added.
+       (check_frame_size): Generalized.
 
-       * scrollbar.c (update_scrollbar_instance): Use
-       window_divider_width() instead of divider_width redisplay method.
+       * window.h: Prototyped the above.
 
-       * console.h (struct console_methods): Removed divider_width_method.
+       * lisp.h:
+       * general.c: Added Qbottom_margin, Qduplex, Qlandscape,
+       Qleft_margin, Qorientation, Qportrait, Qright_margin, Qtop_margin.
+       Deleted Vwin32_* and Vbinary_process_* unused variables.
 
-       * redisplay-tty.c (tty_divider_width): Removed device method.
-       (console_type_create_redisplay_tty): Removed definition for it.
-       (tty_output_vertical_divider): Respect the value returned by
-       window_divider_width thus divider line width specification.
+       * device-msw.c (msprinter_init_device): Do not get printer font
+       list; Added DEVMODE functions.
 
-       * redisplay-msw.c (mswindows_divider_width): Removed device method.
-       (console_type_create_redisplay_mswindows): Removed definition for it.
-       (mswinodws_output_vertical_divider): Respect the value returned by
-       window_divider_width thus divider line width specification.
+       * frame-msw.c: Added lots of printer code.
 
-1998-05-15  Andy Piper  <andyp@parallax.co.uk>
+       * faces.c: Moved 'left-margin and 'right-margin defsymbols to
+       general.c.
 
-       * toolbar-msw.c: guess toolbar frame size a bit more accurately.
+       * console-msw.h: Added more msprinter device private slots.
 
-1998-05-15  Andy Piper  <andyp@parallax.co.uk>
+2000-02-01  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
 
-       * glyphs-msw.c: resource loading implementation.
-       (cursor_normalize): new function.
-       (cursor_validate): ditto.
-       (cursor_instantiate): ditto.
-       (cursor_name_to_resource): ditto.
-       (cursor_possible_dest_types): ditto.
-       (check_valid_symbol): ditto.
-       (check_valid_string_or_int): ditto.
+       * event-msw.c (key_needs_default_processing_p): Added.
+       (mswindows_wnd_proc, WM_KEYUP, KEYDOWN): Call it.
 
-1998-05-14  Martin Buchholz  <martin@xemacs.org>
+2000-01-29  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
 
-       * sysdep.c (tty_init_sys_modes_on_device): Treat VSUSP just like
-       VINTR and VQUIT.
+       * glyphs.c (image_instance_layout): Mark image instance as clean
+       after layout.
+       (glyph_dirty_p): Removed redundant function.
+       (invalidate_glyph_geometry_maybe): Added.
+       (update_glyph_cachel_data): Call it.
 
-       * process-unix.c (process_signal_char): Use VSUSP instead of
-       non-standard VSWTCH.  Always prefer VSUSP to VSWTCH.
+       * glyphs.h: Prototyped it.
 
-1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
+       * redisplay.c (add_glyph_rune): Call it.
+       (redisplay_window): Reset glyphs cachels when frame faces have
+       changed, thus forcing recomputation of built-in border glyphs.
 
-       * specifier.c (specifier_instance): Change locale precedence of
-       instantiation so window locale has higher priority than buffer
-       locale.
-       (Fspecifier_instance): Reflect this in docstring.
-       (Fadd_spec_list_to_specifier): Ditto.
-       (Fadd_spec_to_specifier): Ditto.
-       (Fremove_specifier): Ditto.
+2000-01-30  Martin Buchholz  <martin@xemacs.org>
 
-1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
+       * Makefile.in.in: Make portable dumper and purify play well together.
+       Add imperfect, but better than nothing, support for pdump.
+       Remove xemacs.dmp when temacs is re-generated.
+       Don't ignore errors when dumping xemacs.
 
-       ** Dialog separation into a device method from Andy Piper
+       * symbols.c (maybe_call_magic_handler): Remove one magic number.
 
-       * emacs.c (main_1): Call console_type_create_dialog_x().
+2000-01-28  Andy Piper  <andy@xemacs.org>
 
-       * dialog-x.c (x_popup_dialog_box): Old Fpopup_dialog_box converted
-       into this device method.
-       (console_type_create_dialog_x): New function.
+       * frame.c (allocate_frame_core): Use new Fset_window_buffer signature.
+       (setup_normal_frame): ditto.
+       (setup_frame_without_minibuffer): ditto.
+       (setup_minibuffer_frame): ditto.
+       (delete_frame_internal): ditto.
+       (Fmake_frame_invisible): ditto.
+       (Ficonify_frame): ditto.
 
-       * dialog.c (Fpopup_dialog_box): New function.
-       (syms_of_dialog): Defsubr it.
+       * window.h: change Fset_window_buffer signature.
 
-       * console.h (struct console_methods): Declared
-       popup_dialog_box_method().
+       * window.c (Fsplit_window): Use new Fset_window_buffer signature.
+       (Fset_window_buffer): allow recording of buffer if the window is
+       the selected window.
+       (window_loop): Use new Fset_window signature.
 
-       * symsinit.h: Defined console_type_create_dialog_{x,mswindows}
+2000-01-23  Daniel Pittman  <daniel@danann.net>
 
-1998-05-14  Oliver Graf <ograf@fga.de>
+       * config.h.in: Added template for `HAVE_ATHENA_3D'
 
-       * dragdrop.c (vars_of_dragdrop): dragdrop-protocols created
-       * frame-x.c (x_cde_transfer_callback): checked for merge errors
+2000-01-29  Andy Piper  <andy@xemacs.org>
 
-1998-05-13  Oliver Graf <ograf@fga.de>
+       * glyphs-x.c (x_resize_subwindow): Try and catch bogus resizes.
 
-       * dragdrop.c (vars_of_dragdrop): provide dragdrop-api
+       * gutter.c (output_gutter): Don't output if the window isn't live.
 
-1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
+2000-01-28  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
 
-       * console.h (device_metrics): Removed dbcs, input-method-editor
-       and right-to-left metrics.
+       * glyphs-msw.c (mswindows_unmap_subwindow): Fix of corrupted patch
+       of 01/12/00: Moved SetFocus back here where it belongs.
 
-       * device.c (Fdevice_system_metric): Ditto.
-       (Fdevice_system_metrics): Ditto.
-       (syms_of_device): Ditto.
-       (Fdevice_system_metric): Swapped DEVICE and METRIC parameters back
-       again.
+2000-01-23  Andy Piper  <andy@xemacs.org>
 
-1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
+       * s/cygwin32.h: declare printer things.
 
-       * line-number.h (mark_line_number_cache): Remove unused
-       declaration.
+2000-01-26  Andy Piper  <andy@xemacs.org>
 
-       * line-number.c (LINE_NUMBER_FAR): Increase to 32768.
-       (get_nearest_line_number): Simplify.
-       (add_position_to_cache): Make the old marker point nowhere.
+       * select.c (Fown_selection_internal): GCPRO bug fix from Mike
+       Alexander.
 
-1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
+2000-01-24  Andy Piper  <andy@xemacs.org>
 
-       ** Renamed window-divider-map => vertical-divider-map
-       and event-over-divider-p => event-over-vertical-divider-p,
-       in the following files/functions:
-       * events.h:
-       * events.c (Fevent_over_divider_p):
-       * keymap.c (get_relevant_keymaps):
-       (vars_of_keymap):
+       * glyphs-msw.c (mswindows_locate_pixmap_file): Expand filename.
+       (mswindows_button_instantiate): Make sure glyph is a pixmap.
 
-       * redisplay.h (OVER_V_DIVIDER): Renamed so from OVER_DIVIDER.
+       * glyphs-widget.c (widget_instantiate): Avoid shadows.
 
-       * redisplay.c (pixel_to_glyph_translation): Use OVER_V_DIVIDER.
+       * frame-msw.c (msprinter_init_frame_3): Nuke warning.
 
-1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
+       * glyphs-msw.c: (mswindows_string_to_color): remove declaration.
 
-       * window.c (vertical_divider_changed_in_window): Renamed so.
-       (specifier_vars_of_window): Defined Vvertical_divider_draggable_p.
-       (window_needs_vertical_divider_1): Decide whether we need it based
-       on the value of the above specifier. If separators are unwanted,
-       put them only if there's no scrollbar between this window and its
-       right neighbor.
-       (have_undivided_common_edge): New function, helper for the above.
-       (window_needs_vertical_divider): Return either a cached value,
-       or clauclate and cache one.
-       (invalidate_vertical_divider_cache_in_window): Implemented.
-       (map_windows): Changed return type to int, return the value from
-       MAPFUN.
+       * redisplay-msw.c (mswindows_output_cursor): Avoid shadows.
+       (mswindows_output_display_block): Avoid local shadows.
 
-       * window.h: Prototype invalidate_vertical_divider_cache_in_window.
-       (struct window): Added need_vertical_divider_p and
-       need_vertical_divider_valid_p.
+       * event-msw.c (mswindows_enqueue_magic_event): Avoid shadows.
+       (mswindows_enqueue_mouse_button_event): ditto.
+       (mswindows_handle_gui_wm_command): remove declaration.
 
-       * winslots.h: Added vertical_divider_draggable_p slot.
+       * console-msw.c (mswindows_canonicalize_console_connection): Avoid
+       warnings.
 
-       * scrollbar.c (vertical_scrollbar_changed_in_window): Implemented.
-       (specifier_vars_of_scrollbar): Used it in all vertical specifiers.
+       * console-msw.h: Avoid shadows.
+       (mswindows_get_toolbar_button_text):
+       (emacs_mswindows_create_stream_pair):
+       (emacs_mswindows_delete_stream_pair):
+       (mswindows_handle_toolbar_wm_command): declare.
 
-       * frame.c (invalidate_vertical_divider_cache_in_frame): New function.
+       * device-msw.c (build_syscolor_string): Avoid shadows.
 
-       * frame.h (MARK_FRAME_WINDOWS_STRUCTURE_CHANGED): Call
-       invalidate_vertical_divider_cache_in_frame().
-       Prototype it.
+2000-01-23  Andy Piper  <andy@xemacs.org>
 
-1998-05-14  Andy Piper  <andyp@parallax.co.uk>
+       * glyphs-widget.c (widget_instantiate): reverse the items for
+       layouts so that children are in the expected order.
 
-       * toolbar-msw.c: provide correct parameters to TB_SETROWS.
+2000-01-28  Martin Buchholz  <martin@xemacs.org>
 
-       * glyphs-msw.c (mswindows_initialize_image_instance_mask): size
-       masks correctly and don't select 0.
+       * ralloc.c: safe_bcopy ==> memmove
+       * gmalloc.c: Remove MEMMOVE_MISSING conditional code.
+       * s/msdos.h: Remove BCOPY macros.
+       * insdel.c (gap_right): Remove BCOPY conditional code.
+       * insdel.c (gap_left): Remove BCOPY conditional code.
+       XEmacs demands a working ANSI C compiler - hence memmove.
 
-1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
+       * regex.c (regex_compile): Remove accidental use of trigraphs.
 
-       * winslots.h: New file, declaration of some struct window and
-       struct saved_window members.
+2000-01-27  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
 
-       * window.h (struct window): Include it, with required preprocessor
-       magic.
+       * event-msw.c (mswindows_enqueue_misc_user_event): Initialize
+       event timestamp.
 
-       * window.c (mark_window): Ditto.
-       (allocate_window): Ditto.
-       (struct saved_window): Ditto.
-       (mark_window_config): Ditto.
-       (saved_window_equal): Ditto.
-       (Fset_window_configuration): Ditto.
+2000-01-26  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
 
-1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
+       * event-msw.c (mswindows_drain_windows_queue): Added the
+       parameter.
+       (mswindows_need_event): Commented the call to
+       mswindows_drain_windows_queue().
+       (emacs_mswindows_quit_p): Lookup the windows for keyboard messages
+       only.
 
-       * redisplay-msw.c (mswindows_output_vertical_divider): Syntax fix.
+       * console-msw.h: Moved a few function prototypes here from
+       event-msw.c.
 
-1998-05-12  Didier Verna  <verna@inf.enst.fr>
+       * gui-msw.c (mswindows_handle_gui_wm_command): Changed the ID
+       parameter from unsigned short to unsigned long.
+       (Fmswindows_shell_execute): Added return value.
 
-       * redisplay-x.c (x_output_vertical_divider): draw shadows around
-       the divider line. The shadow thickness is currently
-       hard-wired. This will probably be turned into a specifier soon.
+2000-01-27  URA Hiroshi <ura@hiru.aoba.yokohama.jp>
 
-1998-05-12  Didier Verna  <verna@inf.enst.fr>
+       * sysdep.c (init_system_name):
+         process-unix.c (unix_canonicalized_host_name):
+       Don't call freeaddrinfo() if getaddrinfo() fails.
 
-       * console.h (struct console_methods): the divider_width console
-       method now requires a struct window * argument.
+       * process-unix.c (unix_open_unix_network_stream):
+       Moved the code to get a port # into address loop.
 
-       * redisplay-x.c (x_divider_width): ditto. Plus remove
-       X_DIVIDER_WIDTH, X_DIVIDER_SHADOW_THICKNESS.
-       (x_output_vertical_divider): give a depressed look when the shadow
-       thickness is negative.
+2000-01-27  Martin Buchholz  <martin@xemacs.org>
 
-       * console-stream.c (stream_divider_width): pass a struct window *
-       argument.
+       * buffer.c (reinit_vars_of_buffer):
+       The right place to initialize conversion_in_dynarr and
+       conversion_out_dynarr.
 
-       * redisplay-tty.c (tty_divider_width): ditto.
+       * alloc.c (pdump): Use the real open() till sys_open() is functional.
 
-       * window.c (window_right_gutter_width): totdi.
+       * process-unix.c (unix_canonicalize_host_name): Muleize.
+       (unix_open_network_stream): Muleize.
 
-       * redisplay.c (generate_modeline): ittod.
+       * buffer.h: Fix up prototypes for ralloc.c functions.
 
-       * scrollbar.c (update_scrollbar_instance): ttido.
+2000-01-27  URA Hiroshi <ura@hiru.aoba.yokohama.jp>
+       * config.h.in: added HAVE_GETADDRINFO and HAVE_GETNAMEINFO
+       * sysdep.c: In init_system_name(), add code to use getaddrinfo()
+               instead of gethostbyname()
+       * process-unix.c: In unix_canonicalize_host_name() and
+               unix_open_network_stream(), add code to use getaddrinfo()
+               instead of gethostbyname().
 
-       * redisplay-msw.c (mswindows_divider_width): ottid.
-       WARNING: this enables to compile, but the feature is not functional.
+2000-01-27  Daniel Pittman <daniel@danann.net>
 
-       * window.h (struct window): new field
-       vertical_divider_shadow_thickness.
+       * device-x.c (x_init_device): Warn at run-time if using Athena 3d
+       libs when built with flat Athena.
 
-       * window.c (specifier_vars_of_window): new specifier
-       vertical-divider-shadow-thickness.
-       (vertical_divider_shadow_thickness_changed): new function to
-       inform redisplay that the window has changed.
-       (mark_window): handle new field vertical_divider_shadow_thickness
-       from struct window.
-       (allocate_window): ditto.
-       (saved_window_equal): toddi.
-       (Fset_window_configuration): totid.
-       (save_window_save): ttdio.
-       (struct saved_window): new field vertical_divider_shadow_thickness.
+2000-01-27  Martin Buchholz  <martin@xemacs.org>
 
-1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
+       * ralloc.c: Replace SIZE (conflicts with Windows headers) with size_t.
+       Use coding standards for function prototypes.
 
-       * device-msw.c (mswindows_device_system_metrics): Support a deluge
-       of metrics.
+2000-01-25  Martin Buchholz  <martin@xemacs.org>
 
-1998-05-12  Oliver Graf <ograf@fga.de>
+       * dialog-msw.c (push_lisp_string_as_unicode):
+       * doc.c (unparesseuxify_doc_string):
+       * dired.c (Fuser_name_completion_1):
+       * dired.c (Fuser_name_all_completions):
+       * dired.c (free_user_cache):
+       * dired.c (user_name_completion):
+       * console-x.c (get_display_arg_connection):
+       * minibuf.c (clear_echo_area_internal):
+       * minibuf.c (echo_area_append):
+       * eldap.c (Fldap_open):
+       * eldap.c (Fldap_search_internal):
+       * frame-x.c (x_set_frame_text_value):
+       * frame-x.c (x_set_frame_properties):
+       * frame-x.c (x_create_widgets):
+       * redisplay-tty.c (term_get_fkeys_1):
+       * objects-x.c (x_parse_nearest_color):
+       * objects-x.c (x_valid_color_name_p):
+       * objects-x.c (x_initialize_font_instance):
+       * objects-x.c (x_list_fonts):
+       * objects-x.c (x_find_charset_font):
+       * tooltalk.c (Fadd_tooltalk_message_arg):
+       * tooltalk.c (Fadd_tooltalk_pattern_attribute):
+       * tooltalk.c (Fadd_tooltalk_pattern_arg):
+       * process-unix.c (unix_create_process):
+       * ntproc.c (sys_spawnve):
+       * sound.c (Fplay_sound_file):
+       * sound.c (Fplay_sound):
+       * buffer.c (init_initial_directory):
+       * buffer.c (init_buffer):
+       * editfns.c (init_editfns):
+       * editfns.c (Ftemp_directory):
+       * editfns.c (Fuser_full_name):
+       * editfns.c (uncache_home_directory):
+       * editfns.c (get_home_directory):
+       * editfns.c (Fuser_home_directory):
+       * editfns.c (Fformat_time_string):
+       * editfns.c (Fcurrent_time_string):
+       * gui-x.c (button_item_to_widget_value):
+       * database.c (Fopen_database):
+       * event-Xt.c (x_to_emacs_keysym):
+       * event-Xt.c (x_event_to_emacs_event):
+       * event-Xt.c (describe_event_window):
+       * event-msw.c (mswindows_wnd_proc):
+       * glyphs-eimage.c (jpeg_instantiate):
+       * glyphs-eimage.c (gif_instantiate):
+       * glyphs-eimage.c (png_instantiate):
+       * glyphs-eimage.c (tiff_instantiate):
+       * glyphs-x.c (xbm_instantiate_1):
+       * glyphs-x.c (x_xbm_instantiate):
+       * glyphs-x.c (x_xface_instantiate):
+       * glyphs-x.c (autodetect_instantiate):
+       * glyphs-x.c (cursor_font_instantiate):
+       * glyphs-x.c (x_widget_instantiate):
+       * glyphs-x.c (x_widget_set_property):
+       * glyphs-x.c (x_widget_property):
+       * glyphs-x.c (BUILD_GLYPH_INST):
+       * print.c (write_string_to_stdio_stream):
+       * print.c (output_string):
+       * print.c (Falternate_debugging_output):
+       * print.c (Fexternal_debugging_output):
+       * glyphs-msw.c (extract_xpm_color_names):
+       * glyphs-msw.c (mswindows_xpm_instantiate):
+       * glyphs-msw.c (bmp_instantiate):
+       * glyphs-msw.c (resource_name_to_resource):
+       * glyphs-msw.c (mswindows_resource_instantiate):
+       * glyphs-msw.c (xbm_instantiate_1):
+       * glyphs-msw.c (mswindows_xbm_instantiate):
+       * glyphs-msw.c (mswindows_xface_instantiate):
+       * glyphs-msw.c (mswindows_widget_instantiate):
+       * glyphs-msw.c (add_tree_item):
+       * glyphs-msw.c (add_tab_item):
+       * glyphs-msw.c (mswindows_combo_box_instantiate):
+       * glyphs-msw.c (mswindows_widget_property):
+       * glyphs-msw.c (mswindows_combo_box_property):
+       * glyphs-msw.c (mswindows_widget_set_property):
+       * console.c (stuff_buffered_input):
+       * objects-msw.c (mswindows_initialize_color_instance):
+       * objects-msw.c (mswindows_valid_color_name_p):
+       * objects-msw.c (mswindows_list_fonts):
+       * objects-msw.c (mswindows_font_instance_truename):
+       * bytecode.c (optimize_compiled_function):
+       * select-x.c (symbol_to_x_atom):
+       * select-x.c (x_atom_to_symbol):
+       * select-x.c (hack_motif_clipboard_selection):
+       * select-x.c (selection_data_to_lisp_data):
+       * select-x.c (lisp_data_to_selection_data):
+       * select-x.c (Fx_get_cutbuffer_internal):
+       * select-x.c (Fx_store_cutbuffer_internal):
+       * buffer.h (TO_EXTERNAL_FORMAT): New function.
+       * buffer.h (TO_INTERNAL_FORMAT): New function.
+       * emacs.c (make_arg_list_1):
+       * emacs.c (make_argc_argv):
+       * emacs.c (main_1):
+       * emacs.c (Fdump_emacs):
+       * emacs.c (split_string_by_emchar_1):
+       * file-coding.h:
+       * lisp.h:
+       * lstream.h:
+       * symsinit.h:
+       * device-x.c (x_init_device):
+       * device-x.c (Fx_valid_keysym_name_p):
+       * device-x.c (Fx_get_font_path):
+       * device-x.c (Fx_set_font_path):
+       * glyphs.c (bitmap_to_lisp_data):
+       * glyphs.c (pixmap_to_lisp_data):
+       * alloc.c (make_ext_string): Use coding system arguments.  Update
+       all callers.
+       * alloc.c (build_string):
+       * callproc.c (child_setup):
+       * callproc.c (init_callproc):
+       * fileio.c (lisp_strerror):
+       * fileio.c (directory_file_name):
+       * fileio.c (Fexpand_file_name):
+       * fileio.c (Ffile_truename):
+       * fileio.c (Fsysnetunam):
+       * fileio.c (Fdo_auto_save):
+       * sysdep.c (sys_readdir):
+       * tests.c: New file.  Allow adding C tests.
+       Replace GET_* macros with a more comprehensible and flexible
+       interface, TO_INTERNAL_FORMAT() and TO_EXTERNAL_FORMAT().
+       Modify all calls.
+       Any coding system can be used to do format conversion.
+       Eliminate enum external_data_format.
+       Eliminate convert_to_external_format.
+       Eliminate convert_to_internal_format.
+       Make sure file-name, keyboard, terminal, and ctext are always
+       defined as coding systems or aliases.  Make
+       file-name-coding-system, terminal-coding-system, and
+       keyboard-coding-system magical variables that are equivalent to
+       defining the corresponding coding system aliases.
+
+       * file-coding.c (Fcoding_system_canonical_name_p): New function.
+       * file-coding.c (Fcoding_system_alias_p): New function.
+       * file-coding.c (Fcoding_system_aliasee): New function.
+       * file-coding.c (append_suffix_to_symbol): New function.
+       * file-coding.c (dangling_coding_system_alias_p): New function.
+       * file-coding.c (Ffind_coding_system):
+       * file-coding.c (Fcopy_coding_system):
+       * file-coding.c (encode_coding_no_conversion):
+       * file-coding.c (syms_of_file_coding):
+       * file-coding.c (vars_of_file_coding):
+       Rewrite coding system alias code.
+       Allow nested aliases, like symbolic links.
+       Allow redefinition of coding system aliases.
+       Prevent existence of dangling coding system aliases.
+
+       * dired.c (Fuser_name_completion_1):
+       * dired.c (Fuser_name_all_completions):
+       A crash would happen if user did QUIT in the middle of building
+       user_name_cache.  Remove redundant code in mainline and unwind_protect.
 
-       * frame-x.c (x_cde_transfer_callback): fixed for the new protocol
-       * event-Xt.c (x_event_to_emacs_event): C++ compability
+       * lisp.h:
+       * dynarr.c (Dynarr_min_size): Make static.  Increase value to 8.
 
-1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
+       * lstream.c (make_fixed_buffer_input_stream): Take a void *, not
+       an unsigned char *.  Update all callers.
 
-       * emacs.c (Fdecode_path): Default SEPCHAR to value of
-       path-separator.
+2000-01-26  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
 
-1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
+       * callproc.c (Fcall_process_internal): Ignore Vbinary-process_output.
 
-       * emacs.c (vars_of_emacs): Do it here; change the meaning of
-       Vpath_separator.
+2000-01-25  Martin Buchholz  <martin@xemacs.org>
 
-       * fileio.c (vars_of_fileio): Don't define Vpath_separator here.
+       * elhash.c (hentry_description): Use more portable definition.
+       (resize_hash_table): Initialize new hentries using
+       xnew_array_and_zero, thereby simplifying the code.
 
-1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
+       * mule-charset.c (make_charset): Make sure entire object is
+       initialized, to avoid Purify warnings.
 
-       * emacs.c (decode_path_1): New function.
-       (decode_path): Use it.
-       (Fdecode_path): Renamed from Fdecode_path_internal; use
-       decode_path_1.
+       * alloc.c (resize_string): Fix unlikely crash with big strings.
 
-1998-05-12  Hrvoje Niksic  <hniksic@srce.hr>
+2000-01-24  Martin Buchholz  <martin@xemacs.org>
 
-       * macros.c (Fzap_last_kbd_macro_event): New function.
-       (Fend_kbd_macro): Remove REMOVE_LAST kludge.
+       * realpath.c (xrealpath):
+       Don't call getwd().
 
-1998-05-10  Andy Piper  <andyp@parallax.co.uk>
+2000-01-25  Martin Buchholz  <martin@xemacs.org>
 
-       * redisplay-msw.c (mswindows_output_dibitmap_region): make sure
-       multiple bitmaps are output vertically as well as horizontally.
-       * (mswindows_output_dibitmap): don't cope with bitmap boundaries
-       crossing lines this is handled by
-       mswindows_output_dibitmap_region.
+       * lread.c (read_bit_vector): Fix memory leak reading literal bit vectors.
 
-1998-05-12  Martin Buchholz  <martin@xemacs.org>
+1999-12-28  Max Matveev  <max@melbourne.sgi.com>
 
-       * inline.c: Include eldap.h
+       * unexelfsgi.c (unexec): Change the way we decide which segment
+       should be extended.
 
-       * menubar-x.c (x_update_frame_menubar_internal):
-       Remove: unused variable `container'
+       Assumption that .bss section should be outside the PT_LOADable
+       segment. On IRIX with version 6.2 and above, .bss (or .sbss, if
+       it's present) is inside the 'data' segment. This would fail the
+       test which was used to find a segment to grow and cover new
+       heap. Instead of this assumption, I created another one - on IRIX
+       the segment to grow should start below .bss and it's address
+       should extent above the end of .bss. Once this segment is
+       identified, it's grown to accommodate the new heap and new
+       zero-length .bss section is added at the end of .data2.
 
-1998-05-11  Martin Buchholz  <martin@xemacs.org>
+2000-01-25  Martin Buchholz  <martin@xemacs.org>
 
-       * s/aix4.h: Allow AIX 4.3 XEmacs to compile cleanly.
-       Unfortunately, the resulting temacs still cannot dump.
+       * eval.c (Feval): Wrong number of arguments should use original
+       function, not the indirect_function version of it.
 
-       * symbols.c (symbol_is_constant):
-       (verify_ok_for_buffer_local):
-       -Wswitch Warning suppression - add default case to switches.
+2000-01-24  Yoshiki Hayashi  <yoshiki@xemacs.org>
 
-       * redisplay.c (decode_mode_spec): Remove unused variables,
-       Replace Fcoding_system_property (codesys, Qmnemonic) with
-       XCODING_SYSTEM_MNEMONIC (codesys);
-       Fcoding_system_property is for users.
+       * glyphs-x.c (x_button_instantiate): Don't add image if
+       it is not a pixmap.
+       (x_locate_pixmap_file): Call Fexpand_file_name when file name
+       is relative.
 
-       * buffer.c:
+2000-01-21  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * symeval.h (DEFVAR_LISP_MAGIC): Remove semicolon after macro
+       declaration.
+       (DEFVAR_INT_MAGIC): Ditto.
+       (DEFVAR_BOOL_MAGIC): Ditto.
+       * glyphs.h: Reindent backslash.
+
+2000-01-24  Martin Buchholz  <martin@xemacs.org>
+
+       * glyphs-widget.c (layout_query_geometry):
+       (layout_layout): Use correct types for gheight, gwidth.
+
+2000-01-24  Martin Buchholz  <martin@xemacs.org>
+
+       * EmacsManager.c (QueryGeometry): Purified.
+
+2000-01-23  Martin Buchholz  <martin@xemacs.org>
+
+       * alloc.c (make_float): Make sure entire object is initialized, to
+       avoid Purify warnings.
+       (pdump_register_sub): Remove useless assignment.
+       (pdump): Use xmalloc, not malloc.
+       (pdump_load): Use xmalloc, not malloc.
+
+2000-01-23  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
+
+       * callproc.c:
+       * dired-msw.c:
        * fileio.c:
-       * lread.c:
-       * xselect.c:
-       Change empty docstrings into no doc strings at all.
-       Fix bogus FSF-format docstrings.
+       * process-nt.c:
+       * redisplay-msw.c:
+       * sysdep.c: Removed redundant #include <windows.h>
 
-       * extents.c:
-       Standardize docstrings.
+2000-01-22  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
 
-       * floatfns.c:
-       Explain problems with matherr.
+       * frame.c (delete_frame_internal): Do not delete device when its
+       implementation so declares.
+       (delete_frame_internal): Set device selected frame to nil when
+       last frame goes away.
 
-       * glyphs.c:  make DEFUNs etags-readable, i.e. single-line
+       * device-msw.c (msprinter_device_system_metrics): Implemented.
+       (mswindows_device_system_metrics): Added 'device-dpi property.
 
-       * syssignal.h:
-       if BROKEN_SIGIO, then SIGIO wants to be undefined.
-       if SIGIO and not SIGPOLL, SIGPOLL wants to be SIGIO.\
-       Fix the weird resultant interaction (causes windows problems)
+       * device.c: (Fdevice_printer_p): Added.
+       Added 'offset-workspace device metric.
 
-       * gdbinit:
-       * dbxrc:
-       Take new EMACSBOOTSTRAPLOADPATH into account.
-       Update documentation strings
+       * console.h (device_metrics): Declared DM_offset_workspace.
 
-       * Makefile.in.in:
-       - Adjust for luser's CDPATH being set to something weird.
-       - Take into account bash 2.02's tendency to print the cwd when
-         using CDPATH.  Always use `cd ./foo' instead of `cd foo'.
-       - fix the run-temacs target to use $(DUMPENV)
-       - fix the run-puremacs target to use $(DUMPENV)
-       - fix the `depend' target to properly $(RM) the right files
-       - Generate a better TAGS file for XEmacs' lisp code using
-         hand-crafted regexps.
-       - Use standard coding conventions for modules/Makefile.in
+2000-01-23  Martin Buchholz  <martin@xemacs.org>
+
+       * fileio.c (Ffile_truename): Remove pointless and confusing
+       initialization of elen.
+
+       * glyphs-widget.c: Compiler warning fixes.
+
+2000-01-23  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+
+       * process.h (PROCESS_LIVE_P): Modify to take a Lisp_Process
+       instead of a Lisp_Object as argument to make it consistent with
+       the other LIVE_P macros.
+       (CHECK_LIVE_PROCESS): New macro.
+
+       * process.c: Declare Qprocess_live_p.
+       (Fprocess_live_p): New function.
+       (create_process): Use PROCESS_LIVE_P.
+       (read_process_output): Ditto.
+       (set_process_filter): Ditto.
+       (Fdelete_process): Ditto.
+       (kill_buffer_processes): Ditto
+       (process_send_signal): Use CHECK_LIVE_PROCESS.
+       (Fprocess_input_coding_system): Check whether process is still
+       alive (fix PR#1061).
+       (Fprocess_output_coding_system): Ditto.
+       (Fprocess_coding_system): Ditto.
+       (Fset_process_input_coding_system): Ditto.
+       (Fset_process_output_coding_system): Ditto.
+
+2000-01-23  Andy Piper  <andy@xemacs.org>
+
+       * glyphs.h (struct Lisp_Image_Instance): change format by unifying
+       layout and widget.
+
+       * glyphs.c (mark_image_instance): take into account changed
+       image_instance format.
+       (image_instance_equal): ditto.
+       (image_instance_hash): ditto.
+
+       * glyphs-widget.c (widget_instantiate): Incorporate layout
+       instantiation here. Delay layout of the layout until later.
+       (layout_instantiate): deleted.
+       (layout_query_geometry): new function. get the geometry of a
+       layout.
+       (layout_layout): layout a layout dynamically.
+       (image_instantiator_widget): New function - splitting up
+       image_instantiator_format_create_glyphs_widget for netwinder
+       compilation.
+       (image_instantiator_buttons):
+       (image_instantiator_edit_fields):
+       (image_instantiator_combo_box):
+       (image_instantiator_scrollbar):
+       (image_instantiator_progress_guage):
+       (image_instantiator_tree_view):
+       (image_instantiator_tab_control):
+       (image_instantiator_labels):
+       (image_instantiator_layout): ditto.
+       (image_instantiator_format_create_glyphs_widget): Call preceding
+       functions.
+
+2000-01-22  Martin Buchholz  <martin@xemacs.org>
+
+       * process.c (Fset_process_coding_system):
+       * device-x.c (Fx_keysym_hash_table):
+       Docstring fixes.
+
+       * lstream.c (Lstream_write): Return documented value, not 0.
+
+       * fileio.c (directory_file_name):
+       (Fsubstitute_in_file_name):
+       (Fsubstitute_insert_file_contents_internal):
+       (Fwrite_region_internal):
+       * emacs.c:
+       * sysdep.c:
+       * getloadavg.c:
+       * systty.h:
+       Remove vestigial APOLLO-conditional code.
+
+2000-01-21  Martin Buchholz  <martin@xemacs.org>
+
+       * getpagesize.h: Add guard macros.
+       * libsst.h: Add guard macros.
+       * libst.h: Add guard macros.
+       * line-number.h: Add guard macros.
+       * ndir.h: Add guard macros.
+       * sysfloat.h: Add guard macros.
+       * sysfile.h: Add guard macros.
+       * sysproc.h: Add guard macros.
+       * syswait.h: Add guard macros.
+       * xintrinsic.h: Add guard macros.
+       * xintrinsicp.h: Add guard macros.
+       * xmmanager.h: Add guard macros.
+       * xmmanagerp.h: Add guard macros.
+       * xmprimitive.h: Add guard macros.
+       * xmu.h: Add guard macros.
+       * gpmevent.h: Add copyright statement. Add guard macros.
+       * miscplay.h: Add guard macros.
+       * *.h: Use consistent C-standards-approved guard macro names.
+
+       * opaque.c (make_opaque): Switch parameter order.
+       * opaque.h (make_opaque): Switch parameter order.
+       Update all callers.
+       * buffer.h (MAKE_MIRROR_TRT_TABLE): Use symbolic constant OPAQUE_CLEAR.
+
+       * config.h.in (type_checking_assert): Added.
+       (bufpos_checking_assert): Added.
+
+2000-01-21  Martin Buchholz  <martin@xemacs.org>
+
+       * alloc.c: Harmless pdump changes.
+       - Use countof().
+       - spell alignment correctly.
+       * sysdep.c: Use countof()
+
+2000-01-20  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
+
+       * console.c (create_console): Use CONMETH_OR_GIVEN when calling
+       initially_selected_for_input() console method, default to 0.
+       (semi_canonicalize_console_connection): Try to delegate to
+       canonicalize_console_connection if no such console method.
+       (canonicalize_console_connection): Vice versa.
+       (print_console): Do not print nil connection.
+
+       * console.h (XDEVIMPF_IS_A_PRINTER): Added.
+       (XDEVIMPF_NO_AUTO_REDISPLAY): Added.
+       (XDEVIMPF_FRAMELESS_OK): Added.
+       (CONSOLE_INHERITS_METHOD): Added.
+
+       * console-msw.c (mswindows_canonicalize_console_connection):
+       Added.
+       (mswindows_canonicalize_device_connection): Added.
+
+       * console-msw.h (struct msprinter_device): Added this struct and
+       accessor macros.
+       (mswindows_device): Made fontlist a lisp object.
+
+       * device.c (semi_canonicalize_device_connection):  Try to delegate
+       to canonicalize_device_connection if no such console method.
+       (canonicalize_device_connection): Vice versa.
+       (print_device): Do not print nil connection.
+
+       * device-msw.c (mswindows_init_device): Call InitCommonControls
+       when have widgets.
+       (mswindows_delete_device): Removed fontlist deallocation.
+       (mswindows_mark_device): Added.
+
+       * events.c (event_equal): Added abort() at unreached code.
+       (event_hash): Ditto.
+
+       * faces.c (complex_vars_of_faces): Added Qmsprinter to the list of
+       fallback tags of Windows devices.
+
+       * general.c (syms_of_general): Initialized Qmsprinter.
+
+       * gutter.c (complex_vars_of_gutters): Added Qmsprinter to the list
+       of fallback tags of Windows devices.
+
+       * lisp.h: Declared Qmsprinter.
+
+       * objects-msw.c (font_enum_callback_2): Rewrote to build lisp list
+       of strings.
+       (mswindows_list_fonts): Ditto.
+       (mswindows_enumerate_fonts): Removed dependency on XDEVICE, so
+       that it can be used by both mswindows and msprinter devices.
+       (initialize_font_instance): Added.
+       (mswindows_initialize_font_instance): Use it.
+       (msprinter_initialize_font_instance): Added.
+
+       * redisplay.c (redisplay_device): Added the parameter AUTOMATIC
+       and implementation flags check.
+       (redisplay_without_hooks): Changed the call to the above.
+       (Fredraw_device): Ditto.
+       (Fredisplay_device): Ditto.
+
+       * redisplay-msw.c (get_frame_dc): Implemented.
+       (get_frame_compdc): Implemented.
+       (many functions): Use the two functions above to get device
+       contexts, ether for a window or a printer.
+
+2000-01-21  Olivier Galibert  <galibert@pobox.com>
+
+       * symbols.c (reinit_symbols_once_early): Put Qzero/Qnull_pointer
+       initialization here.
+       (init_symbols_once_early): Call it.
+       * emacs.c (main_1): Call it.
+       * symsinit.h: Declare it.
+
+2000-01-19  Olivier Galibert  <galibert@pobox.com>
+
+       * alloc.c: Use a lrecord_header * in the backtrace instead of a
+       Lisp_Object.
+       (pdump_backtrace): Ditto.
+       (pdump_register_object): Ditto.  Cleanup use of the pointers.
+       (pdump_get_entry): Abort if trying to register a null pointer.
+       (pdump_dump_data): Cleanup types when relocating.
+       (pdump_dump_staticvec): Cleanup types w.r.t the reloc table.
+       (pdump_dump_rtables): Remove bad casts.
+       (pdump_load): Cleanup relocation w.r.t union type.  Use a
+       Lisp_Object instead of a EMACS_INT for the hashtable
+       reorganization.
+
+2000-01-20  Martin Buchholz  <martin@xemacs.org>
+
+       * emacs.c (main_1): Rearrange morass of #ifdef's for correctness.
+
+       * callproc.c (call_process_cleanup): Isolate WINDOWSNT code for clarity.
+
+       * EmacsManager.c (GeometryManager): Avoid use of CPP for clarity.
+
+       * *.[ch]: global-replace 's/_of_xselect/_of_select_x/g' *.[ch]
+
+2000-01-17  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
+
+       * faces.h (FACE_STRIKETHRU_P): Added.
+
+       * glyphs-msw.c (mswindows_widget_hfont): Implemented, to take care
+       of font variants.
+
+       * redisplay-msw.c (mswindows_apply_face_effects): Deleted.
+       (mswindows_set_dc_font): New function, aware of font variants,
+       separated from mswindows_update_dc.
+
+       * objects-msw.h (struct mswindows_font_instance_data): Added
+       definition.
+
+       * objects-msw.c (mswindows_finalize_font_instance): Delete all
+       cached fonts and the data structure.
+       (mswindows_initialize_font_instance): Added creation of font data
+       structure.
+       (mswindows_print_font_instance): Print at least something.
+       (mswindows_create_font_variant): Implemented.
+       (mswindows_get_hfont): Implemented.
+
+2000-01-13  Fabrice Popineau  <Fabrice.Popineau@supelec.fr>
 
-1998-05-12  Didier Verna  <verna@inf.enst.fr>
+       * dired-msw.c: permute "sysdir.h" with "sysfile.h" because of
+       prototyping problem with msvc.
 
-       * redisplay.c: removed the scrolling modeline code that didn't
-       make it for 21.0. To be continued ...
+       * emacs.c (main_1): added syms_of_gui_mswindows() call
+
+       * gui-msw.c: added "mswindows-shell-execute" lisp subr and
+       syms_of_gui_mswindows() function
+
+       * symsinit.h: added the prototype for syms_of_gui_mswindows()
+
+2000-01-18  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.27 is released.
+
+2000-01-18  Martin Buchholz  <martin@xemacs.org>
+
+       * glyphs-eimage.c (struct tiff_error_struct):
+       (tiff_error_func):
+       (tiff_warning_func):
+       #if HAVE_VSNPRINTF ==> #ifdef HAVE_VSNPRINTF
+
+       * unexmips.c:
+       * unexhp9k3.c:
+       * unexfreebsd.c:
+       * unexec.c: Remove vestigial Lucid C code.
+       * unexalpha.c:
+       * unexaix.c:
+       * termcap.c:
+       * libsst.c: Ansify.
+       Remove declarations of errno and strerror().
+
+       * eval.c (Fbacktrace): Small Purify-cation.  Fix docstring.
+
+       * .dbxrc (run-temacs): Use the horrible ${1+"$@"} instead of "$@".
+
+2000-01-16  Martin Buchholz  <martin@xemacs.org>
+
+       * mule-charset.c (Fchar_octet): Resurrect from earlier in 1999.
+       Optimize.
+
+2000-01-14  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
+
+       * md5.c:
+       * file-coding.c:
+       * file-coding.h:
+       Change enum eol_type to eol_type_t.
 
-1998-05-13  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
+2000-01-17  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
 
-       * emacs.c (Fdecode_path_internal): Removed bogus handling of nil
-       and empty string inputs.
+       * gui.c (get_gui_callback): Check cons before accessing car.
 
-1998-05-12  Hrvoje Niksic  <hniksic@srce.hr>
+2000-01-17  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
 
-       * redisplay-x.c (x_output_vertical_divider): Fixed typo.
+       * specifier.h (XSPECIFIER_TYPE): Add error checking version.
+       (XSETSPECIFIER_TYPE): Ditto.
 
-1998-05-10  Oliver Graf <ograf@fga.de>
+2000-01-17  Didier Verna  <didier@xemacs.org>
 
-       * event-stream.c (enqueue_misc_user_event_pos): created
-       * lisp.h (enqueue_misc_user_event_pos): prototype added
-       * frame-x.c (x_cde_transfer_callback): debug code plus API changes
-       * emacs.c: call vars_of_dragdrop
-       * dragdrop.c (vars_of_dragdrop): provide dragdrop
+       * redisplay.c (generate_fstring_runes): compute string size in
+       characters, not bytes.
 
-1998-05-11  Oliver Graf <ograf@fga.de>
+2000-01-09  Hrvoje Niksic  <hniksic@iskon.hr>
 
-       * frame-x.c (x_cde_transfer_callback): return at correct pos
-       * event-Xt.c (x_event_to_emacs_event): changed format of drop
-       object for MIME (see comment in dragdrop.c)
-       * dragdrop.c: API change documented in comment
-       removed provide of dragdrop [is provided by dragdrop.el]
+       * window.c (Fwindow_minibuffer_p): Make WINDOW optional.
 
-1998-05-12  Kirill M. Katsnelson  <kkm@kis.ru>
+2000-01-14  Hrvoje Niksic  <hniksic@iskon.hr>
 
-       * window.c (window_needs_vertical_divider): Enable vertical
-       dividers for every non-rightmost window.
-       (window_left_gutter_width): Left gutter consists of mythical
-       toolbar and a virtual scrollbar.
-       (window_right_gutter_width): The right one may have a divider
-       also.
+       * print.c (print_error_message): Call print_prepare().
 
-       * scrollbar.c (update_scrollbar_instance): Position vertical
-       scrollbar left to divider if the latter present.
+2000-01-14  Martin Buchholz  <martin@xemacs.org>
 
-       * redisplay.h: Declared OVER_DIVIER constant.
+       * .dbxrc: Renamed from dbxrc.
 
-       * redisplay.c (pixel_to_glyph_translation): Handle OVER_DIVIDER
-       case.
+       * events.c (event_to_character):
+       Use `assert (foo)' instead of `if (!foo) abort()'
 
-       * redisplay-x.c (x_output_vertical_divider): Output divider along
-       the right side of the window, down to window bottom. Swapped
-       foreground and background colors so it is visible by default.
+       * .gdbinit (xtype): Add documentation.
+       * .gdbinit (check-temacs): New function.
+       * .gdbinit (check-xemacs): New function.
+       * dbxrc (check-xemacs): New function.
+       * dbxrc (check-xemacs): New function.
 
-       * redisplay-tty.c (tty_output_vertical_divider): Uncondiionally
-       stick the divider to the right window side.
+2000-01-14  Andy Piper  <andy@xemacs.org>
 
-       * redisplay-msw.c (mswindows_redisplay_deadbox_maybe): Fixed
-       deadbox painting.
-       (mswindows_divider_width): Ask system for user preferred value.
-       (mswindows_output_vertical_divider): Always output the divider on
-       the right side of a window, down to bottom.
+       * glyphs-widget.c (widget_query_geometry): Make sure that we
+       calculate default dimensions correctly.
 
-       * keymap.c (get_relevant_keymaps): Route mouse button events which
-       happened over a window divider through window-divider-map.
-       (Fkey_binding): Documented that in the docstring.
-       Defined the variable Vwindow_divider_map.
+2000-01-13  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
 
-       * events.c (Fevent_over_divider_p): Added this function.
+       * symsinit.h: Added prototype for reinit_vars_of_frame_mswindows.
 
-       * events.h: EXFUNed it.
+       * event-msw.c (vars_of_event_mswindows): Fixed a mistyped
+       pdump_wire'd variable.
 
-1998-05-12  Kirill M. Katsnelson  <kkm@kis.ru>
+       * emacs.c: (main_1): Conditionalized calls to
+       reinit_vars_of_scrollbar_x and reinit_vars_of_module.
 
-       * toolbar.c (update_frame_toolbars): Re-layout frame windows if
-       toolbar geometry is suspected to change.
+2000-01-13  Martin Buchholz  <martin@xemacs.org>
 
-1998-05-11  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+       * window.c (Fset_window_configuration):
+       * sysdep.c (_start):
+       * input-method-motif.c (res):
+       * event-Xt.c (Xt_process_to_emacs_event):
+       Simple compiler warning fixes.
 
-       * src/device-msw.c
-       * src/event-msw.c
-       Condition dnd and dde code on HAVE_DRAGNDROP.
+       * bytecode.c (funcall_compiled_function): Use the original
+       function symbol on the backtrace list in preference to the
+       compiled_function object in error messages.
 
-1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
+2000-01-13  Andy Piper  <andy@xemacs.org>
 
-       * events.c (format_event_object): Print space as SPC etc.
+       * glyphs-x.c (update_widget_face): Make sure we update the widget
+       background as well as foreground.
 
-1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
+2000-01-13  Andy Piper  <andy@xemacs.org>
 
-       * print.c (print_internal): In the default case, abort() if
-       ERROR_CHECK_TYPECHECK.
+       * glyphs.h (struct Lisp_Image_Instance): Move justify and orient
+       fields to subwindow.
+       (IMAGE_INSTANCE_SUBWINDOW_JUSTIFY): new macro.
+       (XIMAGE_INSTANCE_SUBWINDOW_JUSTIFY): ditto.
+       (IMAGE_INSTANCE_SUBWINDOW_ORIENT): ditto.
+       (XIMAGE_INSTANCE_SUBWINDOW_ORIENT): ditto.
 
-       * fileio.c (Fmake_temp_name): Doc fix.
+       * glyphs-widget.c (check_valid_tab_orientation): new function.
+       (initialize_widget_image_instance): zero orientation and
+       justification.
+       (widget_instantiate): pick up orientation.
+       (tab_control_query_geometry): return appropriate values for
+       vertical tabs.
 
-1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
+       * glyphs-msw.c: (mswindows_tab_control_instantiate): assign
+       appropriate creation flags for left, right and bottom tabs.
 
-       * xgccache.c (describe_gc_cache): Define only if DEBUG_XEMACS.
+       * s/cygwin32.h: add tab definitions.
 
-       * undo.c (Fprimitive_undo): Fixed typo.
+2000-01-12  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
 
-1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
+       * glyphs-msw.c (mswindows_unmap_subwindow): Set focus back to the
+       frame upon hiding a subwindow.
+       (mswindows_button_instantiate): Changed the push button style to
+       BS_PUSHBUTTON.
+       (mswindows_button_instantiate): Removed button BS_NOTIFY
+       style.
+       (mswindows_button_instantiate): Removed redundant check for
+       a disabled gui item.
+       (mswindows_button_instantiate): Made use of WS_TABSTOP
+       consistent: "operable" controls (edit, button, tree, scroll) have
+       this style, "display-only" ones (static, progress gauge) do
+       not. This style is currently ignored by XEmacs though. Also,
+       removed the WS_EX_CONTROLPARENT style - it is not for children,
+       it is for their parents!
+       (mswindows_edit_field_instantiate): Ditto.
+       (mswindows_progress_gauge_instantiate): Ditto.
+       (mswindows_tree_view_instantiate): Ditto.
+       (mswindows_tab_control_instantiate): Ditto.
+       (mswindows_scrollbar_instantiate): Ditto.
+       (mswindows_combo_box_instantiate): Ditto.
+       (mswindows_widget_instantiate): Added the WS_EX_CONTROLPARENT
+       style to the "clip" window.
+       (mswindows_button_instantiate): Removed compilation warning by
+       equally typing terms of the ?: operator.
 
-       * fns.c (concat): Signal error on integer argument.
+2000-01-12  Didier Verna  <didier@xemacs.org>
 
-1998-05-10  Kirill M. Katsnelson  <kkm@kis.ru>
+       * redisplay.c (generate_fstring_runes): new parameter holding the
+       last modeline-format extent.
+       (add_glyph_to_fstring_db_runes): new parameter holding the glyph
+       extent, fill the glyph block with it.
+       (generate_fstring_runes): handle these parameters.
+       (generate_formatted_string_db): ditto.
 
-       * console.h (device_metrics): Prefixed each constatnt with DM_
+       * keymap.c (get_relevant_keymaps): retreive the keymaps from the
+       glyphs'extents in the modeline.
 
-       * device.c: (Fdevice_system_metric): Renamed so from plural form
-       (metrics); Changed parameters order and added DEFAULT parameter;
-       Unabbreviated some metric constants; Fixed and untabified doc string.
-       (Fdevice_system_metrics): Added. Returns a plist of all provided
-       metrics.
+1999-01-11  Mike Woolley  <mike@bulsara.com>
 
-       * device-msw.c (mswindows_device_system_metrics): Renamed
-       device_metrics enum constants.
-       Return Qunbound instead of Qnil.
+       * ntheap.c: Reduced the reserved heap space from 1Gb down to
+       256Mb, as a workaround for the non-starting problem many people
+       have experienced.
 
-       * device-tty.c (tty_device_system_metrics): Ditto.
+2000-01-06  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
 
-       * device-x.c (x_device_system_metrics): Ditto.
+       * console-tty.c (Fset_console_tty_output_coding_system):
+       Force redrawing tty frame.
 
-1998-05-10  Andy Piper  <andyp@parallax.co.uk>
+2000-01-10  Didier Verna  <didier@xemacs.org>
 
-       * redisplay-msw.c: implement background pixmaps (really!). Make
-       sure bg color is transparent if we have bg pmaps.
-       * (mswindows_output_string) (mswindows_clear_region): output bg
-       pmap if required.
-       * (mswindows_output_dibitmap_region): new function.
-       * (mswindows_output_dibitmap): output offset pixmaps, blt masks in
-       the bg color rather than transparently.
+       * redisplay.c (generate_fstring_runes): fix size computation bug.
 
-       * toolbar-msw.c: use masks if they exist.
+2000-01-09  William M. Perry <wmperry@aventail.com>
 
-       * glyphs-msw.c: set up masks correctly.
+       * gpmevent.c: (gpm_next_event_cb): Don't return value from void function.
 
-       * event-msw.c: typedef SOCKET if cygwin and not msg select().
+2000-01-09  Andy Piper  <andy@xemacs.org>
 
-1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
+       * glyphs-msw.c: index -> i to avoid shadows.
+       (xbm_create_bitmap_from_data): make static.
+       (check_valid_string_or_int): deleted.
+       (mswindows_control_wnd_proc): message -> msg to avoid shadows.
+
+       * glyphs-x.c (x_update_subwindow): remove unused args.
 
-       * regex.c (re_match_2_internal): Check for quit.
+       * glyphs.c (glyph_image_instance): return the thing. Don't set the
+       back pointer - this is done in allocate_image_instance.
+       (query_string_font): return Qnil to make the compiler happy.
+       (unmap_subwindow): set to ~0 to make the compiler happy.
+       (glyph_query_geometry): comment out until used.
+       (glyph_layout): ditto.
 
-1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
+2000-01-09  Hrvoje Niksic  <hniksic@iskon.hr>
 
-       * frame.c (Ffocus_frame): New function.
+       * insdel.c (signal_after_change): Remove extraneous unbind_to().