emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/src/ChangeLog [emacs-unicode-2]


From: Andreas Schwab
Subject: [Emacs-diffs] Changes to emacs/src/ChangeLog [emacs-unicode-2]
Date: Wed, 10 Sep 2003 06:53:24 -0400

Index: emacs/src/ChangeLog
diff -c /dev/null emacs/src/ChangeLog:1.3331.2.1
*** /dev/null   Wed Sep 10 06:53:24 2003
--- emacs/src/ChangeLog Wed Sep 10 06:53:23 2003
***************
*** 0 ****
--- 1,10519 ----
+ 2003-09-10  Andreas Schwab  <address@hidden>
+ 
+       * chartab.c (map_char_table): Protect `range' from GC.
+       (map_char_table_for_charset): Likewise.
+ 
+ 2003-07-31  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
+ 
+       * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
+ 
+ 2003-07-31  Kenichi Handa  <address@hidden>
+ 
+       * process.c (read_process_output): Return the actually read bytes
+       instead of the result of decoding.
+ 
+ 2003-07-31  Kenichi Handa  <address@hidden>
+ 
+       * xterm.h (struct x_bitmap_record): New member have_mask.
+ 
+       * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
+       to 0.
+       (x_create_bitmap_from_file): Likewise.
+       (x_destroy_bitmap): Check have_mask member before freeing a mask.
+       (x_destroy_all_bitmaps): Likewise.
+       (x_create_bitmap_mask): Set have_mask member to 1.
+ 
+ 2003-07-30  Richard M. Stallman  <address@hidden>
+ 
+       * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
+ 
+ 2003-07-29  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * gtkutil.c (xg_mark_data): Update calls to mark_object.
+ 
+ 2003-07-29  Richard M. Stallman  <address@hidden>
+ 
+       * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
+       Conditionalize XIM code on HAVE_XIM.
+ 
+       * fns.c (Fclear_string): New function.
+       (syms_of_fns): defsubr it.
+ 
+ 2003-07-28  KOBAYASHI Yasuhiro  <address@hidden> (tiny change)
+ 
+       * xfns.c (xic_set_preeditarea): Add the left fringe width to
+       spot.x.
+ 
+ 2003-07-22  Stefan Monnier  <address@hidden>
+ 
+       * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
+ 
+       * buffer.c (delete_all_overlays): New function.
+       * buffer.h (delete_all_overlays): Declare.
+       * coding.c (run_pre_post_conversion_on_str):
+       * print.c (temp_output_buffer_setup):
+       * fileio.c (Finsert_file_contents):
+       * minibuf.c (get_minibuffer): Use it.
+ 
+ 2003-07-22  Andrew Choi  <address@hidden>
+ 
+       * unexmacosx.c (unexec_regions_sort_compare):
+       (unexec_regions_merge): New functions.  Sort and merge unexec
+       regions before dumping them.
+ 
+ 2003-07-22  Dave Love  <address@hidden>
+ 
+       * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
+ 
+ 2003-07-21  Stefan Monnier  <address@hidden>
+ 
+       * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
+       (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
+       MARKBIT as the gcmarkbit for strings.
+ 
+ 2003-07-21  Richard M. Stallman  <address@hidden>
+ 
+       * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
+ 
+       * fns.c (Flocale_info): Rename from Flanginfo.  Doc fixes.
+       (syms_of_fns): Corresponding change.
+ 
+       * alloc.c (syms_of_alloc): Doc fixes.
+ 
+ 2003-07-20  Han Boetes  <address@hidden>  (tiny change)
+ 
+       * s/netbsd.h: Use -Wl syntax.
+ 
+ 2003-07-17  Richard M. Stallman  <address@hidden>
+ 
+       * xterm.c (xim_initialize): Redo 6/24 change.
+ 
+ 2003-07-15  Stefan Monnier  <address@hidden>
+ 
+       * buffer.c (copy_overlays): Use EMACS_INT for positions.
+       (Fswitch_to_buffer): Don't signal an error when switching to the same
+       buffer in a dedicated window.
+ 
+       * alloc.c: Use bitmaps for cons, as was done for floats.
+       (init_float, init_cons): Let the normal code allocate the first block.
+       (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
+       (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
+       New macros.
+       (struct cons_block): Move conses to the beginning.  Add gcmarkbits.
+       (Fcons): Use lisp_align_malloc and CONS_UNMARK.
+       (live_cons_p): Check the pointer is not past the `conses' array.
+       (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
+       (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
+       (survives_gc_p): Use CONS_MARKED_P and simplify.
+       (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
+ 
+ 2003-07-13  Paul Eggert  <address@hidden>
+ 
+       GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
+       puts it into BSS instead, at least on Solaris 8 and 9.
+       This is a valid optimization, and it may occur on other platforms,
+       so Emacs should not assume that initializing a static variable to
+       zero puts it into data.
+       * alloc.c (pure, staticvec):
+       Initialize these arrays to nonzero, so that they're not
+       put into BSS by that optimization.
+ 
+ 2003-07-13  Stefan Monnier  <address@hidden>
+ 
+       * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING.  Update users.
+       (lisp_align_malloc): Use posix_memalign is available.
+       (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
+       (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
+       for consistency.  Update users.
+ 
+ 2003-07-13  Richard M. Stallman  <address@hidden>
+ 
+       * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
+ 
+ 2003-07-13  Terje Rosten  <address@hidden>
+ 
+       * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
+       and use the Gtk+ function gtk_window_icon_from_file if available.
+ 
+       * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
+       handle mask of bitmaps.
+       (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
+       mask property.
+       (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
+ 
+       * xterm.h (xg_set_icon): New function.
+ 
+ 2003-07-12  Paul Eggert  <address@hidden>
+ 
+       * unexelf.c (unexec): Consider a section to precede the .bss
+       section if its addresses overlap that of .bss.
+ 
+ 2003-07-12  Richard M. Stallman  <address@hidden>
+ 
+       * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
+ 
+       * config.in (HAVE_CRTIN): Add #undef.
+       (INLINE): Really inline only if OPTIMIZE is defined.
+ 
+       * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
+       END_FILES_1.
+       (START_FILES_1, END_FILES_1): New macros (conditional).
+       (LD_SWITCH_SYSTEM_TEMACS): Define.
+ 
+       * s/openbsd.h: Don't include bsd4-3.h.
+       (TERMINFO): Define.
+       (LIBS_TERMCAP): Define.
+       (LD_SWITCH_SYSTEM): Define (two definitions).
+ 
+       * xfns.c: Include libpng/png.h instead of png.h.
+ 
+ 2003-07-11  Andreas Schwab  <address@hidden>
+ 
+       * buffer.c (modify_overlay): Update prototype.
+       * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
+       Likewise.
+ 
+ 2003-07-09  Stefan Monnier  <address@hidden>
+ 
+       * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
+       (struct interval): Move to intervals.h.
+       (struct Lisp_Marker): Use EMACS_INT for position info.
+       (forward_point): Remove prototype of defunct function.
+       (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
+       (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
+       (syms_of_textprop, set_text_properties): Remove prototypes that are
+       already in intervals.h.
+ 
+       * intervals.h (struct interval): Move from lisp.h.
+       Use EMACS_INT for position and size info.
+ 
+       * coding.c: Include intervals.h for Fset_text_properties.
+ 
+       * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
+       position and length information.
+ 
+ 2003-07-09  Stefan Monnier  <address@hidden>
+ 
+       * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
+       position and length information.
+ 
+ 2003-07-09  Stefan Monnier  <address@hidden>
+ 
+       Change overlays_after and overlays_before so the overlays themselves
+       are linked into lists, rather than using cons cells.  After all each
+       Lisp_Misc already occupies 5 words, so we can add a `next' field to
+       Lisp_Overlay for free and save up one cons cell per overlay (not
+       to mention one indirection when traversing the list of overlay).
+ 
+       * lisp.h (struct Lisp_Overlay): New field `next'.
+ 
+       * buffer.h (struct buffer): Change overlays_before and overlays_after
+       from Lisp lists of overlays to pointers to overlays.
+ 
+       * buffer.c (overlay_strings, recenter_overlay_lists):
+       Fix typo in eassert in last commit.
+       (unchain_overlay): New function.
+       (add_overlay_mod_hooklist): Use AREF.
+       (copy_overlays, reset_buffer, overlays_at, overlays_in)
+       (overlay_touches_p, overlay_strings, recenter_overlay_lists)
+       (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
+       (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
+       (report_overlay_modification, evaporate_overlays, init_buffer_once):
+       Adjust to new type of overlays_(before|after).
+ 
+       * alloc.c (mark_object): Mark the new `next' field of overlays.
+       (mark_buffer): Manually mark the overlays_(after|before) fields.
+ 
+       * coding.c (run_pre_post_conversion_on_str):
+       * editfns.c (overlays_around):
+       * xdisp.c (load_overlay_strings):
+       * fileio.c (Finsert_file_contents):
+       * indent.c (current_column):
+       * insdel.c (signal_before_change, signal_after_change):
+       * intervals.c (set_point_both):
+       * print.c (temp_output_buffer_setup): Use new type for
+       overlays_(before|after).
+ 
+ 2003-07-08  Stefan Monnier  <address@hidden>
+ 
+       * buffer.c (report_overlay_modification): Don't run hooks while
+       traversing the list of overlays.
+ 
+       * buffer.h (struct buffer): Use an int for overlay_center.
+       (overlays_at, evaporate_overlays, recenter_overlay_lists)
+       (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
+ 
+       * buffer.c (reset_buffer, recenter_overlay_lists)
+       (adjust_overlays_for_insert, adjust_overlays_for_delete)
+       (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
+       (evaporate_overlays, init_buffer_once): Update use of overlay_center.
+       (overlays_at, evaporate_overlays, recenter_overlay_lists)
+       (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
+ 
+       * xdisp.c (fast_find_position): Remove unused var.
+ 
+       * cmds.c (Qexpand_abbrev): New sym.
+       (syms_of_cmds): Initialize it.
+       (internal_self_insert): Use it to call expand-abbrev.
+ 
+ 2003-07-09  Kim F. Storm  <address@hidden>
+ 
+       * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if emacs
+       was configured with --without-xim.
+       (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
+ 
+ 2003-07-07  Richard M. Stallman  <address@hidden>
+ 
+       * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
+ 
+       * alloc.c (Fgarbage_collect): Doc fix.
+ 
+ 2003-07-07  Nozomu Ando  <address@hidden>  (tiny change)
+ 
+       * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
+ 
+ 2003-07-06  Stefan Monnier  <address@hidden>
+ 
+       * minibuf.c (read_minibuf): UNGCPRO before returning.
+       (Ftry_completion, Fall_completions): Doc fix.
+ 
+       * alloc.c (live_float_p): Check that p is not past the `floats' array,
+       now that `floats' is not the last element of the struct any more.
+ 
+ 2003-07-06  Jason Rumney  <address@hidden>
+ 
+       * w32term.h (ClipboardSequence_Proc): New type.
+ 
+       * w32fns.c (clipboard_sequence_fn): New variable.
+       (globals_of_w32fns): Initialize it.
+ 
+       * w32select.c (last_clipboard_sequence_number): New variable.
+       (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
+       number if possible.
+ 
+ 2003-07-06  Stefan Monnier  <address@hidden>
+ 
+       * m/amdx86-64.h (MARKBIT):
+       * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
+       MARKBIT and ARRAY_MARK_FLAG any more.
+ 
+       * m/hp800.h (XSETMARKBIT):
+       * m/sr2k.h (XSETMARKBIT):
+       * lisp.h (XSETMARKBIT): Remove unused macro.
+ 
+       * lisp.h (mark_object): Change prototype.
+ 
+       * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
+       (last_marked): Change accordingly.
+       (mark_interval, mark_maybe_object, mark_maybe_pointer)
+       (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
+       (mark_buffer): Update calls to mark_object.
+ 
+       * bytecode.c (mark_byte_stack):
+       * fns.c (sweep_weak_table):
+       * keyboard.c (mark_kboards): Update calls to mark_object.
+ 
+ 2003-07-06  Jason Rumney  <address@hidden>
+ 
+       * alloc.c (struct ablock): Only include padding when there is some.
+ 
+ 2003-07-04  Stefan Monnier  <address@hidden>
+ 
+       * alloc.c (ALIGN): Add casts to simplify usage.
+       (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
+       (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
+       (struct ablock, struct ablocks): New types.
+       (free_ablock): New global var.
+       (lisp_align_malloc, lisp_align_free): New functions.
+       (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
+       (struct float_block): Reorder and add gcmarkbits.
+       (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
+       (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
+       (init_float, make_float): Use lisp_align_malloc.
+       (free_float, live_float_p): Don't use `type' any more.
+       (make_float): Use FLOAT_UNMARK to access to mark bit.
+       (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
+       Use FLOAT_MARKED_P to access the mark bit.
+       (pure_alloc): Simplify use of ALIGN.
+       (mark_object): Use FLOAT_MARK to access the mark bit.
+       (gc_sweep): Use new macros to access the float's mark bit.
+       (init_alloc_once): Init free_ablock.
+ 
+       * lisp.h (struct Lisp_Float): Remove unused field `type'.
+ 
+ 2003-06-27  Stefan Monnier  <address@hidden>
+ 
+       * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
+       (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
+       (allocate_buffer): Move.
+       (string_bytes): Don't mask markbit of `size_byte'.
+       (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
+       (mark_object, mark_buffer, survives_gc_p, gc_sweep):
+       Use the `size' field of buffers (rather than the `name' field) for
+       the mark bit, as is done for all other vectorlike objects.
+       Use the new macros to access the mark bit of vectorlike objects.
+ 
+ 2003-06-26  Richard M. Stallman  <address@hidden>
+ 
+       * puresize.h (BASE_PURESIZE): Increment base size.
+ 
+       * xdisp.c (fast_find_position): Enable Gerd's new definition.
+ 
+       * xterm.c (xim_initialize): Undo previous change.
+ 
+ 2003-06-26  Stefan Monnier  <address@hidden>
+ 
+       * alloc.c (survives_gc_p): Simplify.
+ 
+       * buffer.c (set_buffer_internal_1): Test CONSP for lists.
+ 
+       * window.c (Fset_window_dedicated_p): Simplify.
+       (display_buffer_1): Don't raise the win from which minibuf was entered.
+       (temp_output_buffer_show): Don't assume BEG == 1.  Simplify.
+       (Fminibuffer_selected_window): Simplify.
+ 
+       * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
+ 
+       * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
+       (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
+ 
+       * insdel.c (check_markers, adjust_markers_for_delete)
+       (adjust_markers_for_insert, adjust_markers_for_replace)
+       (prepare_to_modify_buffer, RESTORE_VALUE):
+       * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
+       (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
+       (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
+       * alloc.c (Fmake_marker, free_marker, gc_sweep):
+       * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
+       * editfns.c (save_excursion_restore, transpose_markers):
+       * window.c (delete_window):
+       * xdisp.c (message_dolog): Update for new types.
+ 
+ 2003-06-26  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
+       (realize_default_face): Use default_face_done_p for the force_p
+       argument to set_lface_from_font_name.  Set default_face_done_p to one.
+ 
+       * frame.c (make_frame): Initialize default_face_done_p.
+ 
+       * frame.h (struct frame): Add default_face_done_p.
+ 
+       * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
+       will be defined.
+ 
+ 2003-06-25  Stefan Monnier  <address@hidden>
+ 
+       * alloc.c (make_interval, Fmake_symbol, allocate_misc):
+       Initialize the new field `gcmarkbit'.
+       (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
+       (mark_interval_tree): Don't mark the tree separately from the nodes.
+       (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
+       (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
+       (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
+ 
+       * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
+       (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
+       (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
+       (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
+       (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
+ 
+ 2003-06-24  Dave Love  <address@hidden>
+ 
+       * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
+ 
+       * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux.  Merge changes
+       from gnulib.
+ 
+ 2003-06-21  Richard M. Stallman  <address@hidden>
+ 
+       * fileio.c (Fwrite_region): Alternate messages
+       for append and partial write.
+ 
+       * keyboard.c (read_key_sequence): When converting upcase fn key to
+       downcase, update fkey and keytran so `backspace' gets translated.
+ 
+       * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
+ 
+       * process.c (wait_reading_process_input): Don't signal SIGIO
+       in batch mode.
+ 
+ 2003-06-17  Kenichi Handa  <address@hidden>
+ 
+       * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
+       composite.h.
+ 
+       * xselect.c: Don't include charset.h, coding.h, composite.h.
+       (Qforeign_selection): New variable.
+       (syms_of_xselect): Intern and static it.
+       (selection_data_to_lisp_data): Return a unibyte string made from
+       data with `foreign-selection' text property.
+ 
+ 2003-06-15  Stefan Monnier  <address@hidden>
+ 
+       * termhooks.h (EVENT_INIT): New macro.
+ 
+       * keyboard.c (mark_kboards): Move from alloc.c.  Mark kbd_buffer.
+ 
+       * alloc.c (mark_kboards): Move to keyboard.c.
+ 
+       * keyboard.c (record_asynch_buffer_change, read_avail_input):
+       * xterm.c (x_dispatch_event):
+       * xmenu.c (find_and_call_menu_selection):
+       * xdisp.c (handle_tool_bar_click):
+       * w32menu.c (menubar_selection_callback):
+       * sysdep.c (kbd_input_ast, read_input_waiting):
+       * msdos.c (dos_rawgetc):
+       * macterm.c (mac_check_for_quit_char):
+       * macmenu.c (menubar_selection_callback):
+       * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
+       data to kbd_buffer_store_event.
+ 
+ 2003-06-15  Kim F. Storm  <address@hidden>
+ 
+       * xdisp.c (x_fix_overlapping_area): Always use area relative X
+       to fix redisplay problem with tall characters (such as ,AC(B).
+ 
+ 2003-06-13  Kai Gro,A_(Bjohann  <address@hidden>
+ 
+       * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
+ 
+ 2003-06-12  Kenichi Handa  <address@hidden>
+ 
+       * fileio.c (Fwrite_region): Save and restore restriction.
+ 
+ 2003-06-12  Dave Love  <address@hidden>
+ 
+       * alloca.c (alloca): Declare arg as size_t.
+ 
+       * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
+       Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
+ 
+ 2003-06-11  Dave Love  <address@hidden>
+ 
+       * search.c (shrink_regexp_cache): Use xrealloc.
+       (syms_of_search): Use xmalloc.
+ 
+ 2003-06-10  Kim F. Storm  <address@hidden>
+ 
+       * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
+       Adjust phys_cursor.x to be relative to window box, rather than
+       text area before checking -- to ensure cursor is redrawn when
+       exposing window.
+       Note: This also fixes a similar (older) bug if display margins
+       are present.
+ 
+ 2003-06-06  Kenichi Handa  <address@hidden>
+ 
+       * coding.c (encoding_buffer_size): If coding->type is
+       coding_type_ccl, double magnification on CRLF encoding.
+ 
+ 2003-06-06  Jason Rumney  <address@hidden>
+ 
+       * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
+       (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
+ 
+       * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
+       Mac too.
+ 
+ 2003-06-05  Dave Love  <address@hidden>
+ 
+       * strftime.c: Merge changes from gnulib.
+ 
+       * mktime.c (__mktime_internal): Merge changes from gnulib
+       involving year 69 and dst2.
+ 
+       Changes to merge with gnulib version and be consistent with the
+       autoconf test:
+ 
+       * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
+       Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
+       [HAVE_LOCALE_H]: Include locale.h.
+       (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
+ 
+ 2003-06-05  Kim F. Storm  <address@hidden>
+ 
+       * window.c (coordinates_in_window): Convert X and Y to window
+       relative coordinates inside mode-line and header-line parts.
+       Convert X and Y to margin area relative coordinates inside left
+       and right display margin parts.
+ 
+ 2003-06-05  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (add_system_logical_colors_to_map): New function.
+       (Fx_open_connection): Use it.
+ 
+ 2003-06-04  Stefan Monnier  <address@hidden>
+ 
+       * process.c (allocate_pty): Revert part of the previous patch.
+       (Faccept_process_output): Simplify.
+ 
+ 2003-06-04  Jason Rumney  <address@hidden>
+ 
+       * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
+ 
+       * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
+       (lispy_mouse_wheel_names): Remove.
+       (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
+       Always define drag_and_drop_syms.
+ 
+       * macterm.c (XTread_socket): Map mouse wheel events to Emacs
+       WHEEL_EVENT events.
+ 
+ 2003-06-03  Stefan Monnier  <address@hidden>
+ 
+       * xdisp.c (update_tool_bar): Add missing UNGCPRO.
+ 
+       * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
+ 
+ 2003-06-03  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
+       menu item label.
+ 
+ 2003-06-03  Richard M. Stallman  <address@hidden>
+ 
+       * window.c (Fwindow_edges): Doc fix.
+       (Fwindow_pixel_edges, Fwindow_inside_edges)
+       (Fwindow_inside_pixel_edges): New functions.
+       (syms_of_window): defsubr them.
+ 
+       * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
+       (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
+ 
+ 2003-06-02  Stefan Monnier  <address@hidden>
+ 
+       * dispnew.c (Fsit_for): Don't lie about the number of args.
+ 
+ 2003-06-02  Dave Love  <address@hidden>
+ 
+       * callproc.c: Use HAVE_FCNTL_H, not USG5.
+       (syms_of_callproc) <process-environment>: Doc fix.
+ 
+       * doc.c: Use HAVE_FCNTL_H, not USG5.
+ 
+       * xfaces.c (font_rescale_ratio): Fix for K&R.
+ 
+       * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
+ 
+       * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
+ 
+       * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
+ 
+       * gtkutil.c: Include keyboard.h, charset.h, coding.h.
+       (xg_create_frame_widgets): Use ENCODE_UTF_8.
+ 
+       * xterm.c (Qutf_8): Moved to coding.c
+ 
+       * xmenu.c (ENCODE_MENU_STRING): New.
+       (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
+       Use it.
+ 
+       * coding.h (ENCODE_UTF_8): New.
+       (Qutf_8): Declare.
+ 
+       * coding.c (Qutf_8): New.
+       (syms_of_coding): Intern it.
+ 
+       * fns.c: Doc fixes.
+ 
+ 2003-06-02  Kenichi Handa  <address@hidden>
+ 
+       * buffer.c (Fset_buffer_multibyte): Fix previous change.
+ 
+ 2003-06-01  Stefan Monnier  <address@hidden>
+ 
+       * lread.c (openp): Make sure STR is a string.
+ 
+ 2003-06-01  David Ponce  <address@hidden>
+ 
+       * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
+       Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
+ 
+       * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
+       (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
+       (discard_mouse_events): Discard WHEEL_EVENT events too.
+       (lispy_wheel_names, wheel_syms): New.
+       (syms_of_keyboard): Init and staticpro `wheel_syms'.  Init and
+       staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
+       defined.
+       (make_lispy_event): Add WHEEL_EVENT handler.
+ 
+       * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
+       (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
+       WHEEL_EVENT events.
+ 
+ 2003-05-31  John Paul Wallington  <address@hidden>
+ 
+       * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
+       timer are in lisp/emacs-lisp.
+ 
+ 2003-05-31  Kenichi Handa  <address@hidden>
+ 
+       * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
+       region when a buffer is changed to unibyte.
+ 
+       * charset.h (VALID_LEADING_CODE_P): New macro.
+       (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
+ 
+       * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
+       is nonzero, accept multibyte form of eight-bit-control chars.
+       (decode_composition_emacs_mule): Likewise.
+       (decode_coding_emacs_mule): Likewise.
+       (encode_coding_emacs_mule): If coding->flags is nonzero, produce
+       multibyte form of eight-bit-control chars.
+ 
+       * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
+       (Finsert_file_contents): If coding-system-for-read is bound to
+       Qauto_save_coding, use the coding system emacs-mule with special
+       setting for recovering a file.
+       (choose_write_coding_system): On auto saving, use the coding
+       system emacs-mule with special setting for auto saving.
+       (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
+ 
+ 2003-05-30  Kenichi Handa  <address@hidden>
+ 
+       * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
+       properly before calling ccl_driver.
+ 
+       * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
+ 
+       * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
+       nonzero.
+       (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
+       (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
+ 
+ 2003-05-29  Glenn Morris  <address@hidden>
+ 
+       * xfaces.c (realize_default_face): Do not abort if lface is
+       non-existent - reverts change from 2003-05-19.
+ 
+ 2003-05-29  Kenichi Handa  <address@hidden>
+ 
+       * coding.c (decode_coding_iso2022): Pay attention to the byte
+       sequence of CTEXT extended segment, and retain those bytes as is.
+ 
+ 2003-05-28  Kenichi Handa  <address@hidden>
+ 
+       * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
+       of CODING_REPLACEMENT_CHARACTER.
+       (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
+       CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
+       check this flag on encoding.
+       (encode_coding_sjis_big5): Check
+       CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
+       (Fset_terminal_coding_system_internal): Set
+       CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
+       instead of setting CODING_FLAG_ISO_SAFE flag in
+       terminal_coding.flags.
+ 
+       * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
+       CODING_INHIBIT_CHARACTER_SUBSTITUTION.
+       (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
+ 
+ 2003-05-28  Richard M. Stallman  <address@hidden>
+ 
+       * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
+ 
+       * eval.c (unbind_to): Move init of this_binding to separate statement.
+ 
+ 2003-05-28  Kim F. Storm  <address@hidden>
+ 
+       * xdisp.c (expose_window): Fix error in calculation of
+       window relative coordinates of area to redisplay.
+ 
+ 2003-05-27  Jason Rumney  <address@hidden>
+ 
+       * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
+ 
+ 2003-05-27  David Ponce  <address@hidden>
+ 
+       Handle W32 mouse wheel events as mouse click events, like in X.
+ 
+       * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
+       MOUSE_WHEEL_EVENT anymore.
+ 
+       * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
+       Scrolling down/up the mouse wheel is respectively mapped to mouse
+       button 4 and 5.
+       (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
+       MOUSE_CLICK_EVENT events.  Forward w32 MSH_MOUSEWHEEL events as
+       WM_MOUSEWHEEL events.
+ 
+ 2003-05-27  Andreas Schwab  <address@hidden>
+ 
+       * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
+ 
+       * xdisp.c (try_window_id): Avoid aborting if PT is inside a
+       partially visible line.
+ 
+       * alloc.c (Fgarbage_collect): Fix last change.
+ 
+ 2003-05-26  John Paul Wallington  <address@hidden>
+ 
+       * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
+ 
+ 2003-05-25  Stefan Monnier  <address@hidden>
+ 
+       * window.c (Fset_window_buffer): Add type of `keep_margins'.
+       (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
+ 
+       * window.h (window_box_text_cols): Declare.
+ 
+       * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
+       (x_draw_vertical_border): Remove unused var `f'.
+ 
+       * xfaces.c (build_scalable_font_name): Remove `unused var
+       pixel_size' warning.
+ 
+       * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
+ 
+       * unexelf.c (unexec): Remove `unused var n' warning.
+ 
+       * strftime.c (my_strftime_localtime_r): Remove `defined but
+       unused' warning.
+ 
+       * process.c (allocate_pty): Remove `unused var stb' and
+       `cp might be used uninitialized' warnings.
+ 
+       * dispnew.c (mode_line_string): Remove unused var `f'.
+ 
+       * coding.c (find_safe_codings): Remove unused var `i'.
+ 
+       * bytecode.c (Fbyte_code): Remove `unused val' warning.
+ 
+       * buffer.c (Fkill_buffer): Remove unused var `list'.
+ 
+       * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
+ 
+ 2003-05-25  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * frame.c (make_frame): Condition want_fullscreen with
+       HAVE_WINDOW_SYSTEM.
+ 
+ 2003-05-25  Juanma Barranquero  <address@hidden>
+ 
+       * window.c (Fset_window_scroll_bars): Fix typo in argument name.
+       (Fwindow_scroll_bars): Fix typo in docstring.
+ 
+ 2003-05-24  Kim F. Storm  <address@hidden>
+ 
+       The following changes serve several purposes:
+ 
+       1) Swap the position of fringes and display margins in windows, i.e.
+       the fringes are now displayed between the margins and the text area
+       (by default).
+ 
+       2) Allow fringe and scroll bar parameters to be set per-buffer and
+       per-window (like display margins).  Such settings are now stored
+       in window configurations, preserved when frames are resized, and
+       copied when windows are split vertically or horizontally.
+       Several bugs related to display margins have been fixed.
+ 
+       3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
+ 
+       4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
+       rather than FRAME_WIDTH (FRAME_FONT (f)).
+ 
+       5) Introduce a consistent naming of variables, members and macros
+       depending on whether their value is measured in pixels or in
+       canonical columns/lines.  Pixel dimensions are named *_width and
+       *_height, while canonical columns/lines are named *_cols and
+       *_lines.  Pixel positions are named *_x and *_y, while column/line
+       positions are named *_col and *_line.
+ 
+       6) Consolidate more of the X, W32, and MAC gui code by moving
+       common data into struct frame, and generalize it for the non-gui
+       case by using suitable defaults.
+ 
+       7) Cleanup and consolidate the macros controlling frame and window
+       layout into frame.h and window.h, and generalize the use of the
+       various window_box_* functions (enhanced to handle the new fringe
+       position and the per-window fringe and scroll bar settings).
+ 
+       * frame.h (struct frame): Rename members height to text_lines,
+       width to text_cols, window_height to total_lines, window_width to
+       total_cols, new_height to new_text_lines, new_width to
+       new_text_cols.  All uses changed.
+       (struct frame): New members which consolidate common members of
+       x_output, w32_output, and mac_output structures: left_pos,
+       top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
+       win_gravity, size_hint_flags, border_width, internal_border_width,
+       line_height, fringe_cols, left_fringe_width, right_fringe_width,
+       want_fullscreen.  All uses changed.
+       (struct frame): New member column_width contaning the canonical
+       column width, analogue to line_height.  All uses changed.
+       (struct frame): Rename members scroll_bar_pixel_width to
+       config_scroll_bar_width, and scroll_bar_cols to
+       config_scroll_bar_cols.  All uses changed.
+       (struct frame): New member scroll_bar_actual_width which
+       consolidates and renames the vertical_scroll_bar_extra member of
+       x_output, w32_output, and mac_output structures.  All uses changed.
+       (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
+       from x/w32/macterm.h files.  All uses changed.  Also change code
+       which referred to f->output_data...->pixel_height.
+       (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
+       from x/w32/macterm.h files.  All uses changed.  Also change code
+       which referred to f->output_data...->pixel_width.
+       (FRAME_LINES): Renamed from FRAME_HEIGHT.  All uses changed.
+       Also change code which referred to f->height.
+       (FRAME_COLS): Renamed from FRAME_WIDTH.  All uses changed.
+       Also change code which referred to f->width.
+       (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
+       to update new_text_lines and new_text_cols members directly.
+       (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
+       FRAME_SCROLL_BAR_PIXEL_WIDTH.  All uses changed.
+       (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
+       FRAME_SCROLL_BAR_COLS.  All uses changed.
+       (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
+       Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
+       FRAME_RIGHT_SCROLL_BAR_WIDTH, resp.  All uses changed.
+       (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
+       (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
+       (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
+       (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
+       (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
+       (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
+       (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
+       (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT.  Unconditionally
+       return line_height member (it now has proper value also for
+       non-window frames).
+       (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT.  Unconditionally
+       return new column_width member (rather than the default font width).
+       (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
+       (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
+       from x/w32/macterm.h files.  Unconditionally return corresponding
+       member of frame structure (they now have proper values also for
+       non-window frames).
+       (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
+       Calculate return value from left and right widths.
+       (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
+       internal_border_width member (has proper value for non-window frame).
+       (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
+       (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
+       (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
+       (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
+       (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
+       consolidated from xterm.h, macterm.h, and w32term.h.
+       (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
+       consolidated from xterm.h, macterm.h, and w32term.h.
+       (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
+       CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
+       (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
+       CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
+       (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
+       consolidated from x/mac/w32term.h.
+       (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
+       consolidated from x/mac/w32term.h.
+       (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
+       PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
+       (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
+       PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
+ 
+       * window.h (struct window): Rename members left to left_col,
+       top to top_line, height to total_lines, width to total_cols,
+       left_margin_width to left_margin_cols, right_margin_width to
+       right_margin_cols, orig_height to orig_total_lines, orig_top to
+       orig_top_line.  All uses changed.
+       (struct window): New members left_fringe_width, right_fringe_width,
+       fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
+       (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
+       New macros primarily used to simplify other macros.
+       (WINDOW_TOTAL_COLS): New macro.  Change relevant code that
+       referred to XINT (w->width).
+       (WINDOW_TOTAL_LINES): New macro.  Change relevant code that
+       referred to XINT (w->height).
+       (WINDOW_TOTAL_WIDTH): New macro.  Change relevant code that
+       referred to XINT (w->width) * canon_x_unit.
+       (WINDOW_TOTAL_HEIGHT): New macro.  Change relevant code that
+       referred to XINT (w->height) * canon_y_unit.
+       (WINDOW_LEFT_EDGE_COL): New macro.  Change relevant code that
+       referred to XINT (w->left).
+       (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE.  Change
+       all uses and code that referred to XINT (w->left) + XINT (w->width).
+       (WINDOW_TOP_EDGE_LINE): New macro.  Change relevant code that
+       referred to XINT (w->top).
+       (WINDOW_BOTTOM_EDGE_LINE): New macro.  Change relevant code that
+       referred to XINT (w->top) + XINT (w->height).
+       (WINDOW_LEFT_EDGE_X): New macro.  Change relevant code that
+       referred to XINT (w->left) * canon_x_unit.
+       (WINDOW_RIGHT_EDGE_X): New macro.  Change relevant code that
+       referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
+       (WINDOW_TOP_EDGE_Y): New macro.  Change relevant code that
+       referred to XINT (w->top) * canon_y_unit.
+       (WINDOW_BOTTOM_EDGE_Y): New macro.  Change relevant code that
+       referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
+       (WINDOW_LEFTMOST_P): New macro.
+       (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
+       All uses changed.
+       (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
+       All uses changed.
+       (WINDOW_BOX_LEFT_EDGE_X): Renamed from
+       WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
+       Do not exclude left fringe width.
+       (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
+       WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
+       Do not exclude fringe widths.
+       (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
+       (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
+       Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
+       FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
+       FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
+       (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
+       (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
+       (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
+       (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
+       (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
+       New macros.  Change code which referenced corresponding
+       FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
+       FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
+       FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
+       FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
+       allow per-window scroll-bar settings.
+       (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
+       (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro.  Change code that
+       referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
+       (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro.  Change code
+       that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
+       FRAME_SCROLL_BAR_WIDTH.
+       (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
+       (WINDOW_SCROLL_BAR_AREA_X): New macros.
+       (WINDOW_HEADER_LINE_HEIGHT): Renamed from
+       WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
+       (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
+       WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
+       (WINDOW_BOX_TEXT_HEIGHT): Renamed from
+       WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
+       (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
+       (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
+       (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
+       (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
+       WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
+       (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
+       WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
+       (window_from_coordinates): Update prototype.
+       (Fset_window_buffer): Update EXFUN.
+       (set_window_buffer): Update prototype.
+ 
+       * dispextern.h (struct glyph_matrix): Rename members window_left_x
+       to window_left_col, window_top_y to window_top_line.  All uses
+       changed.
+       (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
+       use FRAME_INTERNAL_BORDER_WIDTH macro instead as
+       internal_border_width is now set to 0 for non-window frames.
+       (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
+       (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
+       (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
+       (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
+       (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
+       (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
+       (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
+       (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
+       (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
+       Move to window.h and renamed [see window.h changes].
+       (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
+       (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
+       (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
+       Use WINDOW_TOTAL_LINES.
+       (frame_update_line_height): Remove prototype.
+ 
+       * buffer.h (struct buffer): Rename members measured in columns:
+       left_margin_width to left_margin_cols, right_margin_width to
+       right_margin_cols.  All uses changed.
+       New members left_fringe_width, right_fringe_width,
+       fringes_outside_margins for per-buffer fringe settings.
+       New members scroll_bar_width and vertical_scroll_bar_type for
+       per-buffer scroll bar settings.
+ 
+       * buffer.c (init_buffer_once): Set buffer_defaults and
+       buffer_local_flags for new buffer-local variables
+       left_fringe_width, right_fringe_width, fringes_outside_margins,
+       scroll_bar_width, and vertical_scroll_bar_type.
+       (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
+       default-* variables for them.
+ 
+       * dispnew.c: Make (many) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+       (mode_line_string): No need to adjust width for mode lines, as it
+       is already adjusted by the caller.
+       (marginal_area_string): Handle fringes inside/outside margins.
+ 
+       * frame.c: Make (many) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+       (make_frame): Initialize left_fringe_width, right_fringe_width,
+       fringe_cols, scroll_bar_actual_width, border_width,
+       internal_border_width, column_width, line_height, x_pixels_diff,
+       y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
+       members with values suitable for a non-window frames.
+ 
+       * gtkutil.c: Make (many) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+ 
+       * indent.c: Make (few) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+ 
+       * keyboard.c: Make (many) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+       (make_lispy_event): Use window positions returned from
+       window_from_coordinates when constructing the lisp event for
+       MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
+       (incorrect) values locally.
+       (make_lispy_movement): Use window positions returned from
+       window_from_coordinates when constructing the lisp event, rather
+       than calculating (incorrect) values locally.
+ 
+       * scroll.c: Make (some) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+ 
+       * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
+       scroll-bars.
+ 
+       * sysdep.c: Make (few) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+ 
+       * term.c: Make (some) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+ 
+       * widget.c: Make (few) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+ 
+       * window.c: Make (many) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+       (make_window): Initialize new members
+       left_margin_cols, right_margin_cols, left_fringe_width,
+       right_fringe_width, fringes_outside_margins, scroll_bar_width,
+       and vertical_scroll_bar_type.
+       (coordinates_in_window): Adapted to new fringe/margin positions
+       and per-window fringes and scroll-bars.
+       Fix bug related to incorrectly adjusting coordinates by
+       frame's internal_border_width (the effect normally negible since
+       the internal_border_width is typically 0 or 1 pixel, but very
+       noticeable for an internal_border_width of e.g. 25 pixels).
+       Upon successful return (other than ON_NOTHING), the coordinates
+       are now always properly converted to window relative for the
+       given display element.
+       (window_from_coordinates): Add new parameters wx and wy to
+       return the window relative x and y position in the returned
+       window and part.  A null arg means, don't return the position.
+       All callers changed.
+       (adjust_window_margins): New function which may reduce the width
+       of the display margins if a window's text area is too small after
+       resizing or splitting windows.
+       (size_window): Fix bug that did not account for display margin
+       widths when checking the minimum width of a window; use
+       adjust_window_margins.
+       (set_window_buffer): Call Fset_window_fringes and
+       Fset_window_scroll_bars to setup per-window elements.
+       Add new arg KEEP_MARGINS_P.  Non-nil means to keep window's
+       existing display margin, fringe widths, and scroll bar settings
+       (e.g. after splitting a window or resizing the frame).
+       All callers changed.
+       (Fset_window_buffer): New arg KEEP_MARGINS.  All callers changed.
+       (Fsplit_window): Duplicate original window's display margin,
+       fringe, and scroll-bar settings; then call Fset_window_buffer with
+       KEEP_MARGINS non-nil.  This fixes a bug which caused a split
+       window to only preserve the display margins in one of the windows.
+       When splitting horizontally, call adjust_window_margins on both
+       windows to ensure that the text area of the new windows is non too
+       narrow.  This fixes a bug which could cause emacs to trap if the
+       width of the split window was less than the width of the display
+       margins.
+       (window_box_text_cols): Renamed from window_internal_width.
+       All uses changed.  Adapt to per-window fringes and scroll bars.
+       Fix bug that caused vertical separator to be subtracted also on
+       window frames.  Fix another bug that did not reduce the returned
+       value by the columns used for display margins.
+       (window_scroll_line_based): Fix bug related to scrolling too much
+       when display margins are present (implicitly fixed by the fix to
+       window_box_text_cols).
+       (scroll_left, scroll_right): Fix bug related to scrolling too far
+       by default when display margins are present (implicitly fixed by
+       the fix to window_box_text_cols).
+       (struct saved_window): Rename members left to left_col, top to
+       top_line, width to total_cols, height to total_lines, orig_top to
+       orig_top_line, orig_height to orig_total_lines.  All uses changed.
+       New members left_margin_cols, right_margin_cols,
+       left_fringe_width, right_fringe_width, fringes_outside_margins,
+       scroll_bar_width, and vertical_scroll_bar_type for saving
+       per-window display elements.
+       (Fset_window_configuration): Restore display margins, fringes,
+       and scroll bar settings.  This fixes a bug which caused display
+       margins to be discarded when saving and restoring a window
+       configuration.
+       (save_window_save): Save display margins, fringes, and scroll bar
+       settings.  This fixes a bug which caused display margins to be
+       discarded when saving and restoring a window configuration.
+       (Fset_window_margins): Do nothing if display margins are not
+       really changed.  Otherwise, call adjust_window_margins to ensure
+       the text area doesn't get too narrow.  This fixes a bug which
+       could cause emacs to trap if setting display margins wider than
+       the width of the window.
+       (Fset_window_fringes): New defun to allow user to specifically set
+       this window's fringe widths and position vs. display margins.
+       (Fwindow_fringes): New defun to return window's actual fringe
+       settings.
+       (Fset_window_scroll_bars): New defun to allow user to specifically
+       set this window's scroll bar width and position.
+       (Fwindow_scroll_bars): New defun to return window's actual scroll
+       bar settings.
+       (compare_window_configurations): Also compare display margins,
+       fringes, and scroll bar settings.
+       (syms_of_window): Defsubr new defuns for fringe and scroll bars.
+ 
+       * xdisp.c: Make (many) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+       (window_box_width): Adapt to per-window fringes and scroll bars,
+       and new fringe vs. display margin position. Note that returned
+       value is no longer guaranteed to be a whole multiple of the frame
+       column width, since per-window fringes may now be any width.
+       (window_box_left_offset): New function like window_box_left, but
+       value is relative to left border of window (rather than frame).
+       (window_box_right_offset): New function like window_box_right,
+       but value is relative to left border of window.
+       (window_box_left): Adapt to per-window fringes and scroll bars,
+       and new fringe vs. display margin position.  Simplify by using
+       WINDOW_LEFT_EDGE_X and window_box_left_offset.
+       (window_box): Allow null args for unnecessary return values;
+       change/simplify relevant callers.
+       (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
+       and new fringe vs. display margin position.
+       Use window_box_left_offset and window_box_right_offset
+       (get_glyph_string_clip_rect): Adapt to per-window fringes and
+       scroll bars, and new fringe vs. display margin position.
+       Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
+       (draw_fringe_bitmap): Rework to handle per-window fringes and new
+       fringe vs. display margin position.
+       (hscroll_window_tree): Use window_box_width instead of window_box.
+       (redisplay_window):  Adapt to per-window scroll bars.
+       (draw_glyphs):  Rework to handle per-window fringes and scroll
+       bars, and new fringe vs. display margin position.
+       Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
+       (x_clear_end_of_line):  Adapt to per-window fringes and scroll
+       bars, and new fringe vs. display margin position.  Fix bug which
+       increased total width of full_width rows by width of scroll bars
+       although window's total width already includes that.
+       (x_fix_overlapping_area): Simplify using window_box_left_offset.
+       (expose_area): Simplify using window_box_left_offset.
+       (x_draw_vertical_border): Handle per-window scroll bar settings,
+       mixing windows with left, right and no scroll bars.
+ 
+       * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
+       where it's used in x_list_fonts (for clarity).
+       (frame_update_line_height): Remove unused function; functionality
+       is now done directly when setting the default font in x_set_font.
+ 
+       * xfns.c: Make (many) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+ 
+       * xmenu.c: Make (some) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+ 
+       * xterm.h (struct x_output): Move members left_pos, top_pos,
+       border_width, pixel_height, pixel_width, line_height,
+       internal_border_width, vertical_scroll_bar_extra,
+       left_fringe_width, right_fringe_width, fringe_cols,
+       fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
+       x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
+       (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
+       (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
+       (PIXEL_WIDTH, PIXEL_HEIGHT)
+       (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
+       (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
+       frame.h and renamed [see frame.h changes].
+       (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
+       (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
+       (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
+       and renamed [see frame.h changes].
+ 
+       * xterm.c: Make (several) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+       (x_draw_glyph_string_box): Adapt to per-window fringes and
+       scroll-bars.
+       (scroll_run): Adapt to new fringe position.
+       (glyph_rect): Use window coordinates returned from
+       window_from_coordinates rather than frame_to_window_pixel_xy.
+       (XTset_vertical_scroll_bar): Adapt to per-window fringes and
+       scroll-bars.
+       (handle_one_xevent): Simplify a USE_GTK conditional.
+       (x_clip_to_row): Remove superfluous whole_line_p arg and code
+       (fringes are now inside margins, i.e. always in the clipping area).
+       All callers changed.
+       (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
+       directly, then call compute_fringe_widths.  Don't call
+       frame_update_line_height.
+ 
+       * w32term.h (struct w32_output): Move members left_pos, top_pos,
+       border_width, pixel_height, pixel_width, line_height,
+       internal_border_width, vertical_scroll_bar_extra,
+       left_fringe_width, right_fringe_width, fringe_cols,
+       fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
+       x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
+       (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
+       (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
+       (PIXEL_WIDTH, PIXEL_HEIGHT)
+       (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
+       (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
+       frame.h and renamed [see frame.h changes].
+       (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
+       (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
+       (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
+       and renamed [see frame.h changes].
+ 
+       * w32term.c: Make (several) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+       (x_draw_glyph_string_box): Adapt to per-window fringes and
+       scroll-bars.
+       (glyph_rect): Use window coordinates returned from
+       window_from_coordinates rather than frame_to_window_pixel_xy.
+       (XTset_vertical_scroll_bar): Adapt to per-window fringes and
+       scroll-bars.
+       (w32_clip_to_row): Remove superfluous whole_line_p arg and code
+       (fringes are now inside margins, i.e. always in the clipping area).
+       All callers changed.
+       (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
+       directly, then call compute_fringe_widths.  Don't call
+       frame_update_line_height.
+ 
+       * w32console.c: Make (few) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+ 
+       * w32fns.c: Make (many) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+ 
+       * w32menu.c: Make (few) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+ 
+       * macterm.h (struct mac_output): Move members left_pos, top_pos,
+       border_width, pixel_height, pixel_width, line_height,
+       internal_border_width, vertical_scroll_bar_extra,
+       left_fringe_width, right_fringe_width, fringe_cols,
+       fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
+       x_pixels_diff, y_pixels_diff to struct frame (frame.h).
+       (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
+       (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
+       (PIXEL_WIDTH, PIXEL_HEIGHT)
+       (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
+       (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
+       frame.h and renamed [see frame.h changes].
+       (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
+       (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
+       (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
+       and renamed [see frame.h changes].
+ 
+       * macterm.c: Make (several) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+       (x_draw_glyph_string_box): Adapt to per-window fringes and
+       scroll-bars.
+       (glyph_rect): Use window coordinates returned from
+       window_from_coordinates rather than frame_to_window_pixel_xy.
+       (XTset_vertical_scroll_bar): Adapt to per-window fringes and
+       scroll-bars.
+       (x_clip_to_row): Remove superfluous whole_line_p arg and code
+       (fringes are now inside margins, i.e. always in the clipping area).
+       All callers changed.
+       (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
+       directly, then call compute_fringe_widths.  Don't call
+       frame_update_line_height.
+ 
+       * macfns.c: Make (several) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+       (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
+ 
+       * macmenu.c: Make (few) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+ 
+       * msdos.h (struct x_output): Remove members left_pos, top_pos,
+       and line_height, and use corresponding new members in struct
+       frame.  All uses changed.
+       (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
+       superseeded by corresponding macros in frame.h.
+ 
+       * msdos.c: Make (several) trivial substitutions for renamed and
+       new macros in dispextern.h, frame.h and window.h.
+       (IT_note_mouse_highlight): Use updated window coordinates returned
+       by window_from_coordinates, rather than adjusting them locally.
+       (internal_terminal_init): No need to initialize line_height here;
+       it now defaults to 1.
+ 
+ 2003-05-24  Stefan Monnier  <address@hidden>
+ 
+       * keyboard.c (read_key_sequence): Adjust fkey and keytran when
+       dropping `down' events.
+ 
+ 2003-05-24  Andreas Schwab  <address@hidden>
+ 
+       * coding.c (find_safe_codings): Fix last change.
+ 
+ 2003-05-24  Istvan Marko  <address@hidden>  (tiny change)
+ 
+       * xfns.c (x_window): Fix typo from 2003-05-21 change.
+ 
+ 2003-05-23  Stefan Monnier  <address@hidden>
+ 
+       * xdisp.c (display_mode_element): Increase max depth.
+       Simplify the error handling code.  Use a different error string
+       for the case where we hit the depth limit.
+ 
+       * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
+ 
+       * buffer.c (reset_buffer_local_variables): Remove redundant setting.
+ 
+ 2003-05-21  Stefan Monnier  <address@hidden>
+ 
+       * intervals.c (get_local_map): Don't get char-property of previous
+       point any more: get_pos_property already does it and better.
+ 
+ 2003-05-21  Dave Love  <address@hidden>
+ 
+       [Merged from unicode branch.]
+ 
+       * xfns.c (x_window, x_window): Use use_xim.
+ 
+       * xterm.c (use_xim): Initialize.
+       (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
+       (x_term_init): Maybe set use_xim.
+ 
+       * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
+ 
+ 2003-05-21  Jason Rumney  <address@hidden>
+ 
+       * unexw32.c (_start): Remove _fmode initialization.
+ 
+       * emacs.c (main) [WINDOWSNT]: Move it here.
+ 
+ 2003-05-20  Dave Love  <address@hidden>
+ 
+       * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
+ 
+ 2003-05-19  Richard M. Stallman  <address@hidden>
+ 
+       * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
+       as value for QCfont attribute.
+       (realize_default_face): lface should already exist; crash if not.
+       Specify 0 for FORCE_P when calling set_lface_from_font_name.
+ 
+       * frame.c (Fignore_event): Doc fix.
+ 
+ 2003-05-19  Kenichi Handa  <address@hidden>
+ 
+       * coding.c (decode_coding_string): Handle post-read-conversion
+       even if the coding doesn't require decoding.
+ 
+ 2003-05-18  Richard M. Stallman  <address@hidden>
+ 
+       * callproc.c (Fcall_process_region): Doc fix.
+ 
+ 2003-05-17  Stefan Monnier  <address@hidden>
+ 
+       * lread.c (Fload): Print a message if package is obsolete.
+ 
+       * window.c (Fselect_window): Add optional `norecord' arg.
+       (select_window_1): Fold into Fselect_window.
+       (select_window_norecord): New function.
+       (temp_output_buffer_show): Use it.  Preserve current buffer.
+ 
+       * window.h (Fselect_window): Update declaration.
+ 
+       * window.c (delete_window, Fother_window, Fset_window_configuration):
+       * minibuf.c (read_minibuf):
+       * macterm.c (x_new_focus_frame):
+       * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
+       * callint.c (Fcall_interactively):
+       * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
+ 
+       * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
+ 
+ 2003-05-17  David Kastrup  <address@hidden>
+ 
+       * process.c (read_process_output): Back out change from 2003-03-09.
+ 
+ 2003-05-17  Stefan Monnier  <address@hidden>
+ 
+       * editfns.c (get_pos_property): Don't assume that `object' = nil.
+ 
+       * textprop.c (text_property_stickiness): New arg `buffer'.
+ 
+       * intervals.h (text_property_stickiness): New arg `buffer'.
+       (get_pos_property): Declare.
+ 
+       * intervals.c (get_local_map): Use get_pos_property, to obey
+       stickiness and empty overlays.
+       (create_root_interval, graft_intervals_into_buffer): Use BEG.
+       (merge_properties, intervals_equal, merge_properties_sticky):
+       Use XCAR, XCDR.
+       (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
+ 
+ 2003-05-17  Richard M. Stallman  <address@hidden>
+ 
+       * minibuf.c (read_minibuf): If buffer is empty, record the default
+       in the history.
+       (Fminibuffer_complete_word): When deleting the overlap, take account
+       of its real position.
+ 
+       * fns.c (map_char_table): Fix previous change.
+ 
+       * syntax.c (find_defun_start):
+       When open_paren_in_column_0_is_defun_start,
+       return beginning of buffer.
+ 
+       * lisp.h (map_char_table): Declare added arg.
+ 
+       * fns.c (map_char_table): New arg TABLE gets the master table.
+       All calls changed.
+       Process default and inheritance, resorting to Faref if necessary.
+ 
+       * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
+       (Faccessible_keymaps): Pass new arg to map_char_table.
+ 
+       * fontset.c (Ffontset_info): Pass new arg to map_char_table.
+ 
+       * casetab.c (set_case_table): Pass new arg to map_char_table.
+ 
+       * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
+ 
+       * lisp.h (specbinding_func): New typedef.
+       (struct specbinding): Use specbinding_func, to put the `volatile'
+       in the right place.
+ 
+       * alloc.c (Fgarbage_collect): Cast pointers into specpdl
+       to avoid GCC warning.
+ 
+ 2003-05-16  Ralph Schleicher  <address@hidden>  (tiny change)
+ 
+       * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
+ 
+ 2003-05-15  Stefan Monnier  <address@hidden>
+ 
+       * keyboard.c (apply_modifiers): Don't fill the other cache.
+ 
+ 2003-05-14  Stefan Monnier  <address@hidden>
+ 
+       * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
+ 
+       * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
+       (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
+       (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
+       (Fset_window_configuration, Fcurrent_window_configuration)
+       (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
+       (Fpos_visible_in_window_p, mark_window_cursors_off)
+       (window_internal_height, window_internal_width, Frecenter)
+       (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
+       (replace_buffer_in_all_windows, init_window_once, init_window)
+       (syms_of_window, keys_of_window): Move from lisp.h.
+       * lisp.h: Move window.c declarations to window.h.
+ 
+       * bytecode.c: Include window.h.
+       * emacs.c: Include window.h.
+ 
+       * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
+       (keyremap): Add `parent' field.
+       (keyremap_step): Use it.  Remove `parent' argument.
+       (read_key_sequence): Setup and use the new `parent' field.
+ 
+ 2003-05-11  Stefan Monnier  <address@hidden>
+ 
+       * keyboard.c (adjust_point_for_property): Ensure termination.
+ 
+ 2003-05-10  Stefan Monnier  <address@hidden>
+ 
+       * keyboard.c (follow_key): Remove dead variable `did_meta'.
+       (access_keymap_keyremap, keyremap_step): New funs, extracted from the
+       duplicated handling of function-key-map and key-translation-map
+       in read_key_sequence.
+       (read_key_sequence): Use them.
+ 
+       * keyboard.c (adjust_point_for_property): Try harder to move point
+       to the non-sticky end of an invisible property.
+ 
+       * xdisp.c (single_display_prop_intangible_p): Make `space' display
+       property intangible as well.
+ 
+ 2003-05-10  Andreas Schwab  <address@hidden>
+ 
+       * xmenu.c (single_menu_item): Change last parameter to void* to
+       avoid warning.
+ 
+ 2003-05-09  Richard M. Stallman  <address@hidden>
+ 
+       * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
+       Bind Qinhibit_modification_hooks to t so there will be no GC.
+       Rename local `tem' to `save_deactivate_mark'.
+ 
+       * eval.c (specpdl_ptr): Declare volatile.
+       (unbind_to): Copy the whole binding and decrement specpdl_ptr
+       before doing the work of unbinding it.
+ 
+       * lisp.h (struct specbinding): Declare elements volatile.
+       (specpdl_ptr): Declare volatile.
+ 
+       * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
+ 
+       * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
+       for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
+ 
+ 2003-05-08  Dave Love  <address@hidden>
+ 
+       * coding.c (Vlast_coding_system_used): Doc fix.
+ 
+ 2003-05-07  Jason Rumney  <address@hidden>
+ 
+       * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
+       when system does not support them.
+ 
+ 2003-05-05  Stefan Monnier  <address@hidden>
+ 
+       * fileio.c (Qwrite_region_annotate_functions): New var.
+       (build_annotations): Use it to process the global part of the hook.
+       (syms_of_fileio): Init and staticpro it.
+ 
+       * keyboard.c (safe_run_hooks_error): Display a message instead of
+       silently ignoring the error.
+ 
+ 2003-05-03  Stefan Monnier  <address@hidden>
+ 
+       * keyboard.c (input_available_signal): Mark static.
+       (menu_bar_items): Use map_keymap.
+       (menu_bar_one_keymap): Remove.
+       (menu_bar_item): Adjust arglist (for use in map_keymap).
+       Properly hide a second binding when not both are keymaps.
+ 
+       * xmenu.c (struct skp): New struct, to pass args through map_keymap.
+       (single_keymap_panes): Use it and map_keymap.
+       (single_menu_item): Use skp as well.
+ 
+       * keymap.h (map_keymap_function_t): New type.
+       (map_keymap): Declare.
+ 
+       * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
+       (map_keymap_call, Fmap_keymap): New functions.
+       (syms_of_keymap): Defsubr map-keymap.
+ 
+ 2003-05-02  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * gtkutil.c (create_dialog, make_widget_for_menu_item)
+       (make_menu_item, create_menus, xg_update_menu_item): Don't call
+       ..._with_mnemonic functions for menu items.
+ 
+ 2003-05-01  Kenichi Handa  <address@hidden>
+ 
+       * coding.c (coding_system_accept_latin_extra_p): Delete this
+       function.
+       (find_safe_codings): Pay attention to
+       the property tranlsation-table-for-encode of each codings.
+       (syms_of_coding): Give Qtranslation_table the extra slot number 2.
+ 
+ 2003-05-01  Stefan Monnier  <address@hidden>
+ 
+       * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
+ 
+ 2003-04-30  Stefan Monnier  <address@hidden>
+ 
+       * eval.c (unbind_to): Don't handle symbol = Qnil any more.
+ 
+       * lisp.h (CHECK): Wrap args in parenthesis.
+       (specbind): Fix doc: symbol = Qnil is not supported any more.
+ 
+       * bytecode.c (Fbyte_code) <unwind-protect>:
+       Use Fprogn rather than 0 and Qnil.
+ 
+       * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
+       `double', and `triple' modifiers as well.
+ 
+ 2003-04-30  Richard M. Stallman  <address@hidden>
+ 
+       * keyboard.c (echo_char): Don't clear out a dash that follows a space.
+ 
+       * alloc.c (abort_on_gc): New variable.
+       (Fgarbage_collect): Abort if abort_on_gc is set.
+ 
+       * lisp.h (abort_on_gc): Add decl.
+ 
+       * eval.c (Fsignal): Clear abort_on_gc.
+ 
+       * editfns.c (Fformat): Set abort_on_gc during first scan of format.
+       Reinit FORMAT_START and END before second scan.
+ 
+       * xdisp.c (move_it_vertically_backward): Do the final big else
+       even if nlines is 0.
+ 
+       * xdisp.c (redisplay_internal): Finish the per-frame loop
+       even if redisplay is suspended by input.
+ 
+ 2003-04-24  Andrew Choi  <address@hidden>
+ 
+       * macterm.c (x_list_fonts): Return all fonts that match if
+       maxnames = -1.
+ 
+ 2003-04-25  Kenichi Handa  <address@hidden>
+ 
+       * syntax.c (skip_chars): Fix previous change.
+ 
+ 2003-04-24  Kenichi Handa  <address@hidden>
+ 
+       * syntax.c (skip_chars): Make the code faster by using the common
+       technique of *p, *stop, and *endp.
+ 
+ 2003-04-23  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
+       tool_bar_items so GTK tool bar expose callback does not access items
+       being updated.
+ 
+ 2003-04-19  Stefan Monnier  <address@hidden>
+ 
+       * eval.c (Fapply): Undo last change and add a comment about why.
+ 
+ 2003-04-18  Miles Bader  <address@hidden>
+ 
+       * data.c (Faset): Calculate nbytes earlier, to satisfy the now
+       pickier PARSE_MULTIBYTE_SEQ.
+ 
+ 2003-04-17  Stefan Monnier  <address@hidden>
+ 
+       * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
+       Use XCDR, XCAR, CONSP.
+       (Fdefmacro): Fix docstring.  Use XCAR, XCDR.
+       (Fapply): Remove unnecessary GCPRO.
+ 
+       * doc.c (Fsubstitute_command_keys): Remove spurious casts.
+ 
+       * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
+ 
+       * buffer.h: Don't hardcode BEG==1.
+ 
+       * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
+ 
+ 2003-04-16  Richard M. Stallman  <address@hidden>
+ 
+       * xdisp.c (try_window, try_window_reusing_current_matrix):
+       When at end of window, set window_end_pos to Z-ZV.
+ 
+       * buffer.c (Foverlay_recenter): Doc fix.
+ 
+ 2003-04-14  Stefan Monnier  <address@hidden>
+ 
+       * dispnew.c (Fsit_For): Support XEmacs-style arg list.
+ 
+ 2003-04-14  Andrew Choi  <address@hidden>
+ 
+       * macterm.c (mac_check_for_quit_char): Don't check more often than
+       once a second.
+ 
+ 2003-04-11  Stefan Monnier  <address@hidden>
+ 
+       * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
+       specially, so that they can't hide an implicit switch-frame event.
+       (make_lispy_event): Handle SELECT_WINDOW_EVENT.
+       (head_table): Use switch-frame as event_kind for select-window.
+       (keys_of_keyboard): Don't bind [select-window] in special-event-map.
+ 
+       * editfns.c (Fformat): Lisp_Object/int mixup.
+       (format2): Remove unused var numargs.
+ 
+ 2003-04-11  Kenichi Handa  <address@hidden>
+ 
+       * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
+       (Qafter_insert_file_set_coding): New variable.
+       (syms_of_fileio): Initialize and staticpro it.  Delete declaration
+       for after-insert-file-adjust-coding-function.
+       (Finsert_file_contents): Call Qafter_insert_file_set_coding
+       instead of Vafter_insert_file_adjust_coding_function.
+ 
+ 2003-04-11  Kenichi Handa  <address@hidden>
+ 
+       * lisp.h (temp_echo_area_glyphs): Adjust prototype.
+ 
+       * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
+       string.  Callers changed.
+ 
+ 2003-04-10  Kenichi Handa  <address@hidden>
+ 
+       * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
+       (syms_of_fileio): Declare it as a lisp variable.
+       (Finsert_file_contents):
+       Call Vafter_insert_file_adjust_coding_function before calling
+       decode-format.
+ 
+ 2003-04-09  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
+       get GtkAdjustment as widget now is a GtkRange.
+ 
+       * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
+       GtkRange to avoid memory leak.
+ 
+ 2003-04-09  Kenichi Handa  <address@hidden>
+ 
+       * xfaces.c (Vface_font_rescale_alist): New variable.
+       (struct font_name): New member rescale_ratio.
+       (font_rescale_ratio): New function.
+       (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
+       (better_font_p): On comparing point sized, pay attention to
+       recale_ratio member of fonts.
+       (build_scalable_font_name): Reflect font->rescale_ratio in the
+       font name.
+       (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
+ 
+       * lread.c (read1): Before calling index, check if the 2nd
+       arguemnt is in ASCII range.
+ 
+ 2003-04-08  Richard M. Stallman  <address@hidden>
+ 
+       * fileio.c (Ffile_symlink_p): Doc fix.
+ 
+       * editfns.c (Fformat): Translate positions of text properties
+       in the format string to apply them to the result.
+ 
+       * fileio.c (Finsert_file_contents): Doc fix.
+       (syms_of_fileio) <after-insert-file-functions>: Doc fix.
+ 
+ 2003-04-08  Ivan Zakharyaschev  <address@hidden>  (tiny change)
+ 
+       * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
+ 
+ 2003-04-08  Steven Tamm  <address@hidden>
+ 
+       * mac.c (init_mac_osx_environment): Switch libexec and bin so
+       that self-contained application finds libexec files.
+ 
+ 2003-04-08  Kenichi Handa  <address@hidden>
+ 
+       * coding.c (code_convert_region_unwind):
+       Set Vlast_coding_system_used to the argument.
+       (code_convert_region): If post-read-conversion function changed
+       the value of last-coding-sytem, keep the new value in
+       coding->symbol so that it won't be overridden.
+       (run_pre_post_conversion_on_str): Likewise.
+       (coding_system_accept_latin_extra_p): New function.
+       (find_safe_codings): Pay attention to characters registered in
+       latin-extra-code-table.
+ 
+ 2003-04-07  Thien-Thi Nguyen  <address@hidden>
+ 
+       * Makefile.in (md5.o): Add missing dependency info.
+ 
+ 2003-04-06  Richard M. Stallman  <address@hidden>
+ 
+       * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
+ 
+       * marker.c (verify_bytepos): New function.
+ 
+       * intervals.c (set_intervals_multibyte_1): When becoming
+       multibyte, adjust right and left child sizes to a whole set of
+       characters.  If an interval gets zero total-length, delete it.
+       If an interval consists of just its children, delete one of them.
+ 
+       * intervals.h (CHECK_TOTAL_LENGTH): New macro.
+       * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
+ 
+       * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
+       All calls deleted.
+       (lisp_malloc): Do the work here directly.
+ 
+ 2003-04-06  Gareth Jones  <address@hidden>  (tiny change)
+ 
+       * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
+       char tables.
+ 
+ 2003-04-04  Kenichi Handa  <address@hidden>
+ 
+       * editfns.c (Fformat): Use a copy of FORMAT string so that we can
+       destructively change "%S" to "%s".
+ 
+ 2003-04-03  Miles Bader  <address@hidden>
+ 
+       * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
+       always set.
+ 
+ 2003-04-01  Dave Love  <address@hidden>
+ 
+       * xfns.c (xpm_lookup_color): Grok "opaque".
+ 
+ 2003-03-31  Andrew Choi  <address@hidden>
+ 
+       * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
+       parent window ID.
+ 
+       * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
+ 
+       * macterm.h (struct mac_output): Define x_pixels_diff and
+       y_pixels_diff.
+ 
+ 2003-03-31  Juanma Barranquero  <address@hidden>
+ 
+       * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
+       blockinput.h and files included from it.
+ 
+ 2003-03-31  Kim F. Storm  <address@hidden>
+ 
+       The following changes consolidates the common code related to
+       frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
+       files into frame.c.
+ 
+       * frame.c: Include blockinput.h.
+       (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
+       (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
+       (Qauto_raise, Qauto_lower, ...): Define all frame parameter
+       related vars here.
+       (struct frame_parm_table, frame_parms): New table for describing
+       frame parameters and their associated Q-variable.
+       The order of the parameters corresponds to the sequence of the
+       frame_parm_handlers table in redisplay_interface.
+       (x_fullscreen_move, x_set_frame_parameters)
+       (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
+       (x_set_screen_gamma, x_set_font, x_set_fringe_width)
+       (x_set_border_width, x_set_internal_border_width, x_set_visibility)
+       (x_set_autoraise, x_set_autolower, x_set_unsplittable)
+       (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
+       Generic functions for processing of frame parameters.
+       (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
+       (display_x_get_resource, x_get_resource_string): Functions for
+       generic access to X resources.
+       (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
+       (x_default_parameter, Fx_parse_geometry): Functions for generic
+       access to frame parameters.
+       (x_figure_window_size): Generic calculation of frame size.
+       Fixed to add space needed for tool bar.  Also setup size_hint_flags.
+       (syms_of_frame): Intern and staticpro frame parameter variables.
+       Defvar_lisp Vx_resource_class and Vx_resource_name here.
+       Defsubr Sx_get_resource and Sx_parse_geometry.
+ 
+       * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
+       parameter related vars defined in frame.c.
+       (EMACS_CLASS): Define here.
+       (enum FULLSCREEN_*): Define here.
+       (x_set_scroll_bar_default_width, x_wm_set_icon_position)
+       (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
+       (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
+       (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
+       (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
+       (x_set_visibility, x_set_autoraise, x_set_autolower)
+       (x_set_unsplittable, x_set_vertical_scroll_bars)
+       (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
+       (x_figure_window_size): Add prototypes.
+ 
+       * dispextern.h (frame_parm_handler): New typedef.
+       (struct redisplay_interface): New member frame_parm_handlers.
+       (enum resource_types): Move declaration here.
+       (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
+       (x_default_parameter): Add prototypes.
+ 
+       * window.c: Remove extern decl for frame parameter vars.
+       (change_window_heights): New generic function;
+       replaces x_change_window_heights.  All users changed.
+ 
+       * window.h (change_window_heights): Add prototype.
+ 
+       * xfaces.c: Remove extern decl for frame parameter vars.
+ 
+       * xterm.h (EMACS_CLASS): Remove.  Use generic define.
+       (struct w32_display_info): Fix type of xrdb member.
+       (enum FULLSCREEN_*): Remove.
+       Remove prototypes for generic functions (in frame.h).
+ 
+       * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
+       parameters now defined in frame.h and frame.c.
+       (Vx_resource_name): Remove. Use generic var.
+       (enum x_frame_parms): Remove (bogus, unused enum).
+       (check_x_display_info): Make non-static (for frame.c).
+       (struct x_frame_parm_table, x_frame_parms): Remove.
+       (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
+       (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
+       (x_set_border_width, x_set_internal_border_width, x_set_visibility)
+       (x_change_window_heights, x_set_autoraise, x_set_autolower)
+       (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
+       (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
+       (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
+       Remove.  Use generic functions instead.
+       (enum resource_types): Remove.
+       (x_set_scroll_bar_default_width): New global function (for frame.c).
+       (Fx_create_frame): Depend on x_figure_window_size to add space for
+       toolbar and setup size_hint_flags.
+       (x_frame_parm_handlers): New table for redisplay_interface.
+       (syms_of_xfns): Don't intern/staticpro removed vars.
+ 
+       * xterm.c: Remove unnecessary extern declarations.
+       (x_fullscreen_adjust): Remove. Use generic instead.
+       (x_redisplay_interface): Add x_frame_parm_handlers member.
+ 
+       * w32gui.h (XrmDatabase): New (dummy) typedef.
+ 
+       * w32term.h (EMACS_CLASS): Remove.  Use generic define.
+       (struct w32_display_info): Fix type of xrdb member.
+       (enum FULLSCREEN_*): Remove.
+       (x_fullscreen_adjust): Remove prototype.
+ 
+       * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
+       parameters now defined in frame.h and frame.c.
+       (Vx_resource_name): Remove. Use generic var.
+       (enum x_frame_parms): Remove (bogus, unused enum).
+       (check_x_display_info): Make non-static (for frame.c).
+       (struct x_frame_parm_table, x_frame_parms): Remove.
+       (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
+       (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
+       (x_set_border_width, x_set_internal_border_width, x_set_visibility)
+       (x_change_window_heights, x_set_autoraise, x_set_autolower)
+       (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
+       (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
+       (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
+       Remove.  Use generic functions instead.
+       (enum resource_types): Remove.
+       (x_set_scroll_bar_default_width): New global function (for frame.c).
+       (Fx_create_frame): Depend on x_figure_window_size to add space for
+       toolbar and setup size_hint_flags.
+       (w32_frame_parm_handlers): New table for redisplay_interface.
+       (syms_of_w32fns): Don't intern/staticpro removed vars.
+ 
+       * w32term.c: Remove unnecessary extern declarations.
+       (x_fullscreen_adjust): Remove. Use generic instead.
+       (x_redisplay_interface): Add w32_frame_parm_handlers member.
+ 
+       * w32reg.c (x_get_string_resource): Use XrmDatabase.
+ 
+       * macgui.h (XrmDatabase): New (dummy) typedef.
+ 
+       * macterm.h (EMACS_CLASS): Remove.
+       (struct mac_display_info): Add xrdb member.
+       (struct mac_output): Add want_fullscreen member.
+ 
+       * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
+       parameters now defined in frame.h and frame.c.
+       (Vx_resource_name): Remove. Use generic var.
+       (check_x_display_info): Make non-static (for frame.c).
+       (struct x_frame_parm_table, x_frame_parms): Remove.
+       (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
+       (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
+       (x_set_border_width, x_set_internal_border_width, x_set_visibility)
+       (x_change_window_heights, x_set_autoraise, x_set_autolower)
+       (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
+       (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
+       (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
+       Remove.  Use generic functions instead.
+       (enum resource_types): Remove.
+       (x_set_scroll_bar_default_width): New global function (for frame.c).
+       (mac_frame_parm_handlers): New table for redisplay_interface.
+       (syms_of_macfns): Don't intern/staticpro removed vars.
+ 
+       * macterm.c: Remove unnecessary extern declarations.
+       (x_redisplay_interface): Add mac_frame_parm_handlers member.
+ 
+       * Makefile.in (frame.o): Add dependency on blockinput.h and files
+       included from it (atimer.h and systime.h).
+ 
+ 2003-03-30  Andreas Schwab  <address@hidden>
+ 
+       * xdisp.c (x_insert_glyphs): Fix swapped width and height
+       parameters for shift_glyphs_for_insert.
+ 
+       * macterm.c (x_redisplay_interface): Add missing entry for
+       draw_vertical_window_border.
+ 
+ 2003-03-29  Kai Gro,A_(Bjohann  <address@hidden>
+ 
+       * fileio.c (Fexpand_file_name): In the no-handler case, after
+       expanding, look again for a handler and invoke it.  This is needed
+       for filenames like "/foo/../address@hidden:/bar/../baz" -- the first
+       expansion produces "/address@hidden:/bar/../baz" which needs to be
+       expanded again for the finame result "/address@hidden:/baz".
+ 
+ 2003-03-28  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
+       of area to be redrawn for better performance.
+ 
+ 2003-03-28  Stefan Monnier  <address@hidden>
+ 
+       * xterm.c (take_vertical_position_into_account): Remove.
+       (xt_action_hook): Call set_vertical_scroll_bar if needed.
+       (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
+       (xm_scroll_callback, x_create_toolkit_scroll_bar)
+       (x_set_toolkit_scroll_bar_thumb): Simplify.
+       (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
+       (XTread_socket): Remove unused var.
+       (x_make_frame_invisible): Replace goto with else.
+ 
+       * xdisp.c (set_vertical_scroll_bar): New fun.
+       (redisplay_window): Use it.
+ 
+ 2003-03-26  Richard M. Stallman  <address@hidden>
+ 
+       * xdisp.c (update_tool_bar): Recompute tool bar if
+       update_mode_lines is set.  Set w->update_mode_line
+       only if the tool bar contents actually change.
+       (update_menu_bar): Undo previous change.
+ 
+ 2003-03-26  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
+       (xg_frame_set_char_size): Calculate scroll bar width before frame
+       width.  Call SET_FRAME_GARBAGED and cancel_mouse_face.
+       (xg_separator_p): Check for all documented separator types.
+       (xg_update_scrollbar_pos): Variable gheight not needed, use height.
+       (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
+ 
+       * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
+       so tool bar gets updated.
+ 
+ 2003-03-26  Stefan Monnier  <address@hidden>
+ 
+       * data.c (store_symval_forwarding): Re-instate part of the code
+       that was deleted with too much enthusiasm.
+ 
+ 2003-03-25  Stefan Monnier  <address@hidden>
+ 
+       * data.c (store_symval_forwarding): Delete special read-only
+       hack for type == -1, since we now use ->constant instead.
+       (Fkill_local_variable): Don't use XBUFFER if it can be nil.
+ 
+       * buffer.c (overlays_in): Declare static.
+       (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
+       `constant' field rather than the variable's `type' field.
+ 
+ 2003-03-24  Andrew Choi  <address@hidden>
+ 
+       * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
+ 
+       * dispextern.h [HAVE_CARBON]: Include Carbon.h.
+ 
+       * fns.c [MAC_OSX]: Do not redefine vector.
+ 
+       * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
+ 
+       * macgui.h: Remove definition of No_Cursor.
+ 
+       * macterm.h: Include Carbon.h.  Replace (struct Cursor *) by Cursor.
+ 
+       * xdisp.c: Define No_Cursor.
+       (x_write_glyphs, notice_overwritten_cursor)
+       (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
+       (note_mouse_highlight): Remove Mac-specific code.
+       (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
+ 
+ 2003-03-24  John Paul Wallington  <address@hidden>
+ 
+       * xdisp.c (redisplay_window): If mini window's buffer is not
+       empty, then redisplay it like other windows.
+ 
+ 2003-03-23  Kim F. Storm  <address@hidden>
+ 
+       * w32term.c (w32_draw_window_cursor): Fix last change.
+ 
+ 2003-03-23  Kenichi Handa  <address@hidden>
+ 
+       * alloc.c (make_string_from_bytes, make_specified_string):
+       Add `const' for the arg CONTENTS.
+ 
+       * lisp.h (make_string_from_bytes, make_specified_string):
+       Prototypes adjusted.
+ 
+ 2003-03-23  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
+ 
+       * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
+       (XG_SB_RANGE): New define.
+ 
+       * gtkutil.c (xg_fixed_handle_expose): New function.
+       (xg_create_frame_widgets): Call xg_fixed_handle_expose for
+       expose events.
+       (xg_update_scrollbar_pos): Take two more arguments, left and width
+       of scroll bar including borders.
+       Clear left and right part outside scroll bar separately as some
+       themes have bars that are not an even number of pixels.
+       Don't set reallocate_redraws, don't call
+       gdk_window_process_all_updates.
+       (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
+       so no need to change it.  Calculate size and value with XG_SB_RANGE.
+ 
+       * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
+       Pass left and width of scroll bar including borders to
+       xg_update_scrollbar_pos.
+ 
+ 2003-03-22  Thien-Thi Nguyen  <address@hidden>
+ 
+       * Makefile.in: Make sure space precedes end-of-line backslashes.
+ 
+ 2003-03-22  Kim F. Storm  <address@hidden>
+ 
+       * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
+       Add generic versions here.  Remove system specific versions
+       defined elsewhere.
+ 
+       * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
+       Add prototypes.
+ 
+       * xterm.h (STORE_NATIVE_RECT): New macro.
+ 
+ 2003-03-21  Kim F. Storm  <address@hidden>
+ 
+       * xdisp.c (get_glyph_string_clip_rect):
+       Use FRAME_INTERNAL_BORDER_WIDTH.
+ 
+       * dispextern.h (struct redisplay_interface): Add active_p
+       argument to draw_window_cursor member.  All uses changed.
+ 
+ 2003-03-21  Kim F. Storm  <address@hidden>
+ 
+       The following changes consolidate code related to writing and
+       inserting glyphs, exposing frame, the tool bar, the mouse face,
+       the output cursor, and help echo from xterm.c, w32term.c and
+       macterm.c into xdisp.c.  It also generalizes the use of the
+       window_part enum instead of using numeric values throughout.
+ 
+       * xdisp.c: Consolidate gui-independent code here.
+       Include keymap.h.
+       (Qhelp_echo): Import.
+       (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
+       (help_echo_string, help_echo_window, help_echo_object)
+       (previous_help_echo_string, help_echo_pos): Declare here.
+       (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
+       (estimate_mode_line_height): Define here.  Handle windowing
+       systems directly (without using estimate_mode_line_height_hook).
+       (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
+       (update_window_cursor, update_cursor_in_window_tree)
+       (fast_find_position, fast_find_string_pos)
+       (note_mode_line_highlight, note_mode_line_or_margin_highlight)
+       (expose_area, expose_line, expose_overlaps, expose_window)
+       (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
+       declared static as they are only used locally in xdisp.c.
+       (draw_glyphs): Rename from x_draw_glyphs and make static.
+       (tool_bar_item_info, notice_overwritten_cursor): Make static.
+       (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
+       (set_output_cursor, x_cursor_to, handle_tool_bar_click)
+       (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
+       (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
+       (display_and_set_cursor, x_update_cursor, x_clear_cursor)
+       (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
+       (note_mouse_highlight, x_clear_window_mouse_face)
+       (cancel_mouse_face, x_draw_vertical_border, expose_frame)
+       (x_intersect_rectangles): New generic functions for use by xdisp.c
+       and GUI front-ends.
+       (syms_of_xdisp): Initialize and staticpro help_echo* variables.
+       Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
+ 
+       * dispextern.h (Display_Info): Generic typedef for *_display_info.
+       (NativeRectangle): Generic typedef for rectangle type.
+       (enum window_part): Move here from window.c.
+       (struct redisplay_interface): New members flush_display_optional,
+       define_frame_cursor, clear_frame_area, draw_window_cursor,
+       draw_vertical_window_border, shift_glyphs_for_insert.
+       Rename member clear_mouse_face to clear_window_mouse_face.
+       (estimate_mode_line_height_hook): Remove hook.
+       (auto_raise_tool_bar_buttons_p): Don't declare extern.
+       (tool_bar_item_info): Remove prototype.
+       (help_echo_string, help_echo_window, help_echo_object)
+       (previous_help_echo_string, help_echo_pos)
+       (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
+       (x_stretch_cursor_p, output_cursor): Declare extern.
+       (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
+       (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
+       (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
+       (display_and_set_cursor, set_output_cursor, x_cursor_to)
+       (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
+       (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
+       (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
+       (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
+       (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
+       Add prototypes.
+       (mode_line_string, marginal_area_string): Fix prototypes.
+ 
+       * window.c (enum window_part): Move to dispextern.h.
+       (coordinates_in_window): Use enum window_part member names
+       instead of numbers to describe return value.
+       (struct check_window_data): Change part member to window_part.
+       (check_window_containing): Return window_part unaltered.
+       (window_from_coordinates): Change part arg from int to enum
+       window_part.  Allow part arg to be null.  All users changed.
+ 
+       * window.h (window_from_coordinates): Fix prototype.
+ 
+       * term.c (estimate_mode_line_height): Move to xdisp.c.
+ 
+       * keyboard.c (make_lispy_event): Use enum window_part.
+ 
+       * dispnew.c (mode_line_string, marginal_area_string): Use enum
+       window_part instead of int in arg list.  Users changed.
+ 
+       * xterm.h (No_Cursor): Declare as None for X.
+       (struct mac_output): Replace member cross_cursor by hand_cursor.
+ 
+       * xterm.c: Remove consolidated defines and code.
+       (BETWEEN): Remove unused macro.
+       (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
+       (x_define_frame_cursor, x_clear_frame_area)
+       (x_draw_window_cursor): New X-specific functions for RIF.
+       (x_redisplay_interface): Add new members.
+ 
+       * xfns.c: Setup and use hand_cursor instead of cross_cursor.
+ 
+       * w32term.h (struct w32_output): Remove cross_cursor member.
+ 
+       * w32term.c: Remove consolidated defines and code.
+       (BETWEEN): Remove unused macro.
+       (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
+       (w32_define_frame_cursor, w32_clear_frame_area)
+       (w32_draw_window_cursor): New W32-specific functions for RIF.
+       (w32_redisplay_interface): Add new members.
+ 
+       * w32gui.h (No_Cursor):  Define as 0 for W32.
+       (XRectangle): Add X compatible rectangle type.
+       (NativeRectangle): Declare as RECT for W32.
+       (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
+ 
+       * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
+ 
+       * w32console.c: Remove consolidated defines and code.
+ 
+       * msdos.h (Display_Info): Add generic typedef.
+ 
+       * msdos.c: Remove consolidated defines and code.
+       (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
+ 
+       * macterm.h (struct mac_output): Replace member cross_cursor by
+       hand_cursor.
+       (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
+ 
+       * macterm.c: Remove consolidated defines and code.
+       (BETWEEN): Remove unused macro.
+       (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
+       (mac_define_frame_cursor, mac_clear_frame_area)
+       (mac_draw_window_cursor): New Mac-specific functions for RIF.
+       (x_redisplay_interface): Add new members.
+ 
+       * macgui.h (No_Cursor): Define as 0 for Mac.
+       (XRectangle): Add X compatible rectangle type.
+       (NativeRectangle): Declare as Rect for Mac.
+       (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
+ 
+       * macfns.c (x_set_mouse_color): Setup hand_cursor.
+       (x_set_cursor_color): Use x_display_and_set_cursor.
+ 
+       * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
+       included from it.  Add dependency on keymap.h.
+ 
+       * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
+ 
+ 2003-03-21  Kenichi Handa  <address@hidden>
+ 
+       * fileio.c (Fexpand_file_name): Fix previous change.
+ 
+ 2003-03-19  Kenichi Handa  <address@hidden>
+ 
+       * fileio.c (Ffile_name_directory): Reconstruct file name by
+       make_specified_string.
+       (Ffile_name_nondirectory, Ffile_name_as_directory)
+       (Fdirectory_file_name, Fexpand_file_name)
+       (Fsubstitute_in_file_name): Likewise.
+       (Fread_file_name): Compare decoded homedir with DIR and
+       DEFAULT_FILENAME.
+ 
+       * alloc.c (make_specified_string): If NCHARS is negative, count
+       the number of characters.
+ 
+ 2003-03-18  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
+       all widgets.
+ 
+       * gtkutil.h: Removed xg_ignore_next_thumb.
+ 
+ 2003-03-18  Kenichi Handa  <address@hidden>
+ 
+       * coding.c (Vchar_coding_system_table): Remove this variable.
+       (Vcoding_system_safe_chars): New variable.
+       (intersection): Remove this function.
+       (find_safe_codings): Don't use Vchar_coding_system_table, but try
+       all codings in SAFE_CODINGS.
+       (Ffind_coding_systems_region_internal): Adjust for the change of
+       find_safe_codings.  Get generic coding systems from
+       Vcoding_system_safe_chars.
+       (Fdefine_coding_system_internal): New function.
+       (syms_of_coding): Defsubr Sdefine_coding_system_internal.
+       Initialize and staticpro Vcoding_system_safe_chars.
+ 
+ 2003-03-18  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
+       equal old values before updating.
+ 
+       * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
+ 
+       * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
+ 
+ 2003-03-17  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
+       (xg_resize_widgets): Don't call foreach(handle_fixed_child).
+       (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
+       (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
+       (xg_create_scroll_bar): Pass bar to button event callback.
+       (xg_find_top_left_in_fixed): New function.
+       (xg_update_scrollbar_pos): Don't call gdk_window_clear on
+       whole scroll bar area.  Get old position with
+       xg_find_top_left_in_fixed, calculate and only clear needed areas.
+       (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
+       dragging is in progress.  Calculate whole as for Motif.
+       Remove code that saved last values.  Call gtk_range functions to
+       set scroll bar sizes.
+ 
+       * gtkutil.h: Removed xg_ignore_next_thumb.
+ 
+ 2003-03-17  Juanma Barranquero  <address@hidden>
+ 
+       * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
+       and files included from it.
+ 
+ 2003-03-18  Stefan Monnier  <address@hidden>
+ 
+       * keymap.c (accessible_keymaps_1): Break cycles but without preventing
+       multiple occurrences of the same keymap under different prefixes.
+       (Faccessible_keymaps): Remove code redundant since rev 1.82.
+ 
+ 2003-03-16  Jason Rumney  <address@hidden>
+ 
+       * w32gui.h: Use HDC for Display.
+ 
+       * w32term.c (w32_encode_char): Prevent double-byte chars from
+       crashing Emacs.
+ 
+       * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
+       as binary.
+ 
+ 2003-03-16  Juanma Barranquero  <address@hidden>
+ 
+       * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
+ 
+ 2003-03-16  Kim F. Storm  <address@hidden>
+ 
+       The following changes consolidate some of the gui-independent
+       parts of the processing and drawing of "glyph strings" from
+       xterm.c, w32term.c, and macterm.c into xdisp.c.
+ 
+       * dispextern.h (struct glyph): Reduce face_id member from 22 to
+       21 bits (this reduces number of faces from 4M to 2M).
+       Replace W32 specific w32_font_type member (2 bits) by generic
+       font_type member (3 bits) for portability.
+       (FONT_TYPE_UNKNOWN): New define, default for font_type member.
+       (enum draw_glyphs_face): Define here.
+       (struct glyph_string): Define here.  Merge W32 and X versions.
+       (struct redisplay_interface): New members per_char_metric,
+       encode_char, compute_glyph_string_overhangs, draw_glyph_string.
+       (VCENTER_BASELINE_OFFSET): Define here.
+       (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
+       (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
+ 
+       * xdisp.c: Consolidate gui-independent "glyph string" code here.
+       (dump_glyph_string): Moved here.
+       (init_glyph_string, append_glyph_string_lists, append_glyph_string)
+       (prepend_glyph_string_lists, get_glyph_face_and_encoding)
+       (fill_composite_glyph_string, fill_glyph_string)
+       (fill_image_glyph_string, fill_stretch_glyph_string)
+       (left_overwritten, left_overwriting, right_overwritten)
+       (right_overwriting, get_char_face_and_encoding)
+       (set_glyph_string_background_width, compute_overhangs_and_x)
+       (append_glyph, append_composite_glyph, produce_image_glyph)
+       (take_vertical_position_into_account, append_stretch_glyph)
+       (produce_stretch_glyph): New generic functions (based on X version).
+       Call platform specific functions through rif.
+       (INIT_GLYPH_STRING): New macro, hides W32 details.
+       (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
+       (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
+       (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
+       (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
+       (notice_overwritten_cursor):
+       Generic functions exported to platform modules.  Users changed.
+ 
+       * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
+       (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
+       (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
+       New macros for consolidated code.
+ 
+       * xterm.c: Remove consolidated defines and code.
+       (x_per_char_metric, x_encode_char)
+       (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
+       (x_redisplay_interface): Add new members.
+ 
+       * w32gui.h (Display): Add dummy typedef for consolidation.
+       (XChar2b): Define alias for wchar_t for consolidation.
+       (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
+ 
+       * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
+       (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
+       New macros for consolidation.
+ 
+       * w32term.c: Remove consolidated defines and code.
+       (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
+       to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
+       (w32_per_char_metric): Change font_type arg to int for RIF.
+       (w32_encode_char): Return int according to RIF requirements.
+       (w32_compute_glyph_string_overhangs): Adapt to RIF.
+       (w32_get_glyph_overhangs): New function for RIF.  Uses generic
+       x_get_glyph_overhangs.
+       (w32_redisplay_interface): Add new members.
+ 
+       * macgui.h (XChar2b): Move typedef here for consolidation.
+       (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
+ 
+       * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
+       (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
+       consolidation.
+ 
+       * macterm.c: Remove consolidated defines and code.
+       (mac_per_char_metric): New function for RIF.
+       (mac_encode_char): Adapt to new RIF requirements.
+       (mac_compute_glyph_string_overhangs): Adapt for RIF.
+       (x_redisplay_interface): Add new members.
+ 
+ 2003-03-15  Stefan Monnier  <address@hidden>
+ 
+       * keymap.c (Vmenu_events): New var.
+       (syms_of_keymap): Initialize it.
+       (where_is_internal): Check more carefully what is a menu event.
+ 
+ 2003-03-14  Richard M. Stallman  <address@hidden>
+ 
+       * lread.c (read1): After #!, exit loop on eof.
+ 
+ 2003-03-14  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * gtkutil.h: Add declaration for xg_frame_cleared.
+ 
+       * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
+ 
+       * gtkutil.c (struct xg_last_sb_pos): New structure.
+       (handle_fixed_child): New function.
+       (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
+       and force a redraw on them.
+       (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
+       (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
+       so we can avoid unneeded redraws.
+       (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
+       and force a redraw on the scroll bar.
+       (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
+       if xg_last_sb_pos shows the positions are up to date.
+       (xg_frame_cleared): New function.
+ 
+ 2003-03-13  Kenichi Handa  <address@hidden>
+ 
+       * coding.c (Fdetect_coding_region): Fix docstring.
+       (Fdetect_coding_string): Fix docstring.
+ 
+ 2003-03-13  Andreas Schwab  <address@hidden>
+ 
+       * gtkutil.c: Add prototype for create_menus.
+ 
+       * data.c (long_to_cons): Fix type of top.
+ 
+       * xselect.c (selection_data_to_lisp_data): Use int instead of
+       long for an integer of size 4.
+ 
+       * gtkutil.c (xg_update_frame_menubar): Add missing return value.
+       (xg_tool_bar_help_callback): Likewise.
+ 
+ 2003-03-12  Andreas Schwab  <address@hidden>
+ 
+       * xterm.c (x_term_init) [USE_GTK]: Fix typo.
+ 
+ 2003-03-12  Kim F. Storm  <address@hidden>
+ 
+       The following changes consolidate the fringe handling from
+       xterm.c, w32term.c, and macterm.c into xdisp.c.
+ 
+       * xdisp.c: Consolidate fringe handling code here.
+       (left_bits, right_bits, continued_bits, continuation_bits)
+       (ov_bits, zv_bits): Define fringe bitmaps.
+       (fringe_bitmaps): New array holding fringe bitmaps.
+       (draw_fringe_bitmap): Draw a specific bitmap; call display
+       specific drawing routine via rif->draw_fringe_bitmap.
+       (draw_row_fringe_bitmaps): Generic replacement for
+       x_draw_row_fringe_bitmaps; all callers changed.
+       (compute_fringe_widths): Generic replacement for
+       x_compute_fringe_widths; all callers changed.
+ 
+       * dispextern.h (enum fringe_bitmap_type): Define here.
+       (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
+       (fringe_bitmaps): Declare extern.
+       (struct redisplay_interface): New member draw_fringe_bitmap.
+       (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
+ 
+       * xterm.c: Remove generic fringe code.
+       (x_draw_fringe_bitmap): Only perform actual fringe drawing.
+       (x_redisplay_interface): Add x_draw_fringe_bitmap member.
+ 
+       * w32term.c: Remove generic fringe code.
+       (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
+       (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
+ 
+       * macterm.c: Remove generic fringe code.
+       (x_draw_fringe_bitmap): Only perform actual fringe drawing.
+       (x_redisplay_interface): Add x_draw_fringe_bitmap member.
+ 
+ 2003-03-11  Stefan Monnier  <address@hidden>
+ 
+       * print.c (Fprin1_to_string): Return unibyte string if possible.
+ 
+ 2003-03-09  David Kastrup  <address@hidden>
+ 
+       * process.c (read_process_output): We have allocated enough space
+       for readmax and carryover, so actually use the alloted space.
+ 
+ 2003-03-09  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
+       toolkit scrollbar click.
+ 
+       * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
+       for USE_GTK.
+       (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
+       also.
+       (handle_one_xevent): ButtonPress/Release:  If event is for a toolkit
+       scrollbar and control is pressed, call x_scroll_bar_handle_click.
+ 
+       * gtkutil.h: Declare xg_get_scroll_id_for_window.
+ 
+       * gtkutil.c (xg_get_scroll_id_for_window): New function.
+       (xg_tool_bar_item_expose_callback): New function.
+       (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
+       (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
+       on the tool bar widget.
+       (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
+       to expose on the tool bar item widgets.
+ 
+ 2003-03-08  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
+       struct image* when deciding to update (struct image* may have been
+       deleted from the image cache).
+ 
+       * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
+       the event isn't for a frame (i.e. for dialogs).
+ 
+ 2003-03-07  Kenichi Handa  <address@hidden>
+ 
+       * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
+       composition components reaches the limit, terminate composing.
+       (COMPOSITION_OK): New macro.
+       (detect_coding_iso2022): Use it if an escape sequence for
+       composition is found.
+       (coding_restore_composition): Adjust the number of composition
+       components if it is not sane.
+ 
+ 2003-03-06  Juanma Barranquero  <address@hidden>
+ 
+       * w32term.h (struct w32_display_info): Add xrdb member to support
+       passing resources via -xrm on Windows.
+ 
+       * w32term.c (w32_make_rdb): New function.
+       (w32_term_init): Use it to initialize xrdb member of w32_display_info
+       struct.  Delete leftover code.
+ 
+       * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
+       for resources passed on the command line.
+ 
+       * w32reg.c (w32_get_rdb_resource): New function.
+       (x_get_string_resource): Use it, so resources passed with -xrm
+       supercede the ones in the registry.
+ 
+ 2003-03-04  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
+       instead of x_top_window_to_frame.
+ 
+ 2003-03-03  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
+       when restarting Emacs.
+ 
+ 2003-03-03  Richard M. Stallman  <address@hidden>
+ 
+       * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
+       to run kill-buffer-query-functions.
+       (Qkill_buffer_query_functions): New var.
+       (syms_of_buffer): Init and staticpro it.
+ 
+ 2003-03-02  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
+ 
+ 2003-02-25  Kim F. Storm  <address@hidden>
+ 
+       * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
+       If centering point failed to make whole line visible and vscroll
+       is non-zero, disable vscroll and try centering point again.
+ 
+       * lread.c (read1): Accept `single space' syntax like (? x).
+ 
+ 2003-02-25  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * keyboard.c (cancel_hourglass_unwind): Surround with
+       #ifdef HAVE_X_WINDOWS
+ 
+ 2003-02-25  Kenichi Handa  <address@hidden>
+ 
+       * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
+       process only when "subprocesses" is defined.
+ 
+ 2003-02-24  Stefan Monnier  <address@hidden>
+ 
+       * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
+ 
+ 2003-02-24  Juanma Barranquero  <address@hidden>
+ 
+       * callint.c (fix_command): Declare as static void and move before
+       Fcall_interactively.
+ 
+       * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
+       (syms_of_xdisp): Don't initialize Qwhen.
+ 
+ 2003-02-23  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * keyboard.c (cancel_hourglass_unwind): New function.
+       (command_loop_1): Cancel hourglass with unwind-protect.
+ 
+ 2003-02-23  Richard M. Stallman  <address@hidden>
+ 
+       * callint.c (fix_command): New subroutine, from Fcall_interactively.
+       Detect (when ... (region-beginning)) etc.
+       (Fcall_interactively): Call fix_command.
+       (Qif, Qwhen): New variables.
+       (syms_of_callint): Init and staticpro them.
+ 
+       * regex.c (print_partial_compiled_pattern): Output to stderr.
+ 
+ 2003-02-23  Kai Gro,A_(Bjohann  <address@hidden>
+ 
+       * dired.c (directory_files_internal): Don't expand directory.
+       (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
+       instead.  From Lars Hansen <address@hidden>.
+ 
+ 2003-02-22  Stefan Monnier  <address@hidden>
+ 
+       * fns.c (string_to_multibyte): Remove unused var i.
+       (Flanginfo): Fix int/Lisp_Object mixup.
+       (void_call2): New fun.
+       (Fmap_char_table): Use it in place of call2.
+ 
+       * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
+ 
+       * macros.c (Fstart_kbd_macro): Remove redundant assignment.
+ 
+       * keymap.c (copy_keymap_1): Make it static.
+ 
+       * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
+ 
+ 2003-02-22  David Ponce  <address@hidden>
+ 
+       * lread.c (Fload): Don't check STRING_MULTIBYTE.
+ 
+ 2003-02-21  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * process.h: Removed subtty field from struct Lisp_Process.
+ 
+       * process.c (create_process): Remove setting of subtty.
+       (emacs_get_tty_pgrp): New function.
+       (Fprocess_running_child_p, process_send_signal):
+       Call emacs_get_tty_pgrp instead of ioctl.
+       (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
+ 
+ 2003-02-21  Kai Gro,A_(Bjohann  <address@hidden>
+ 
+       * keymap.c (Fdefine_key): Doc fix.
+ 
+ 2003-02-21  Juanma Barranquero  <address@hidden>
+ 
+       Port of patch for RC by Klaus Zeitler <address@hidden>.
+ 
+       * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
+       POLLING_PROBLEM_IN_SELECT.
+ 
+       * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
+       Delete #undef of POLLING_PROBLEM_IN_SELECT.
+ 
+       * s/hpux10-20.h: New file.
+ 
+       * process.c (wait_reading_process_input):
+       Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
+ 
+ 2003-02-20  Kenichi Handa  <address@hidden>
+ 
+       * fontset.c (check_fontset_name): If NAME is nil, return the
+       default fontset.
+       (override_font_info): New function.
+       (Fset_fontset_font): Document that NAME nil means the default fontset.
+       (Ffontset_info): If FONTSET is not the default fontset, merge
+       FONTSET onto the copy of the default fontset, and work on that
+       copy.  Document that NAME nil means the default fontset.
+       (Ffontset_font): Document that NAME nil means the default fontset.
+ 
+       * process.c (setup_process_coding_systems): If the process's
+       in/out descriptor is -1, do nothing.
+ 
+ 2003-02-19  Andreas Schwab  <address@hidden>
+ 
+       * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
+       Add prototypes.
+ 
+ 2003-02-19  Kenichi Handa  <address@hidden>
+ 
+       * xfaces.c (try_alternative_families): Try all scalable fonts if
+       Vscalable_fonts_allowed is not Qt.
+ 
+ 2003-02-19  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
+ 
+ 2003-02-18  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
+       names.
+ 
+       * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
+       (sorted_font_list): Move allocation of struct font_name to
+       x_face_list_fonts.
+       (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
+       (Fx_list_fonts): Set maxnames to -1 to get all font names.
+ 
+ 2003-02-18  Kim F. Storm  <address@hidden>
+ 
+       * lread.c (read1): Fix last change.
+       "`" is not always special.  Allow "?" after a character constant.
+ 
+ 2003-02-18  Andrew Choi  <address@hidden>
+ 
+       * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
+ 
+ 2003-02-18  Andreas Schwab  <address@hidden>
+ 
+       * window.c (window_scroll_pixel_based): Move outside a
+       multi-glyph character before setting new window start.
+ 
+       * xdisp.c (in_display_vector_p): New function.
+       * dispextern.h (in_display_vector_p): Declare.
+ 
+ 2003-02-18  Kim F. Storm  <address@hidden>
+ 
+       * lread.c (read1): Fix and relax read syntax.
+       Recognize "[", ";", "#", and "?" after a dotted-pair dot.
+       Only recognize "," after dotted-pair dot if inside backquote.
+       Never include "`" or "," (inside backquote) in a symbol.
+       Allow dotted-pair dot after a character constant.
+       Allow "`" and "," (inside backquote) after a character constant.
+ 
+ 2003-02-17  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * gtkutil.c (xg_tool_bar_expose_callback): New function.
+       (xg_create_tool_bar): Force style of tool bar to be horizontal with
+       icons.  Set name of tool bar to emacs-toolbar.
+       (update_frame_tool_bar): Connect expose event to
+       xg_tool_bar_expose_callback.
+ 
+ 2003-02-17  Richard M. Stallman  <address@hidden>
+ 
+       * keyboard.c (this_command_key_count_reset): New variable.
+       Initiatize to 0 where this_command_key_count is set.
+       (read_char): Save and restore this_command_key_count_reset
+       around input method code.
+       (read_char): If this_command_key_count_reset, echo reread commands.
+       (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
+ 
+ 2003-02-17  Kenichi Handa  <address@hidden>
+ 
+       * fns.c (string_to_multibyte): Always return a multibyte string.
+ 
+ 2003-02-16  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
+       Negative max_fonts parameter means list all.
+ 
+ 2003-02-14  Dave Love  <address@hidden>
+ 
+       * fns.c (Flanginfo): Doc fix.
+ 
+ 2003-02-13  Kim F. Storm  <address@hidden>
+ 
+       * lread.c (read_escape): Interpret \s as a SPACE character, except
+       for \s-X in a character constant which still is the super modifier.
+       (read1): Signal an `invalid read syntax' error if a character
+       constant is immediately followed by a digit or symbol character.
+ 
+       * search.c (Fmatch_data): Doc fix.  Explicitly state that
+       match-data is undefined if last search failed.
+ 
+       * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
+       All uses changed.
+ 
+ 2003-02-12  Juanma Barranquero  <address@hidden>
+ 
+       * eval.c (Fdefmacro): Fix typo.
+ 
+ 2003-02-12  Kim F. Storm  <address@hidden>
+ 
+       * macros.c (Fstart_kbd_macro): If appending, and last keyboard
+       macro is a string, convert meta modifiers in string when copying
+       the string into a vector.
+ 
+ 2003-02-11  Kim F. Storm  <address@hidden>
+ 
+       * keymap.c (Fremap_command): Return nil if arg is not a symbol.
+ 
+ 2003-02-11  Kenichi Handa  <address@hidden>
+ 
+       * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
+ 
+ 2003-02-10  Kim F. Storm  <address@hidden>
+ 
+       * process.c: Doc fixes.
+       (syms_of_process): Add `:' prefix to QCfilter_multibyte.
+ 
+ 2003-02-10  Kenichi Handa  <address@hidden>
+ 
+       * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
+ 
+       * process.c (QCfilter_multibyte): New variable.
+       (setup_process_coding_systems): New function.
+       (Fset_process_buffer, Fset_process_filter):
+       Call setup_process_coding_systems.
+       (Fstart_process): Initialize the member `filter_multibyte' of
+       struct Lisp_Process.
+       (create_process): Call setup_process_coding_systems.
+       (Fmake_network_process): New keyward `:filter-multibyte'.
+       Initialize the member `filter_multibyte' of struct Lisp_Process.
+       Call setup_process_coding_systems.
+       (server_accept_connection): Call setup_process_coding_systems.
+       (read_process_output): If the process has a filter, decide the
+       multibyteness of a string to given to the filter by
+       `filter_multibyte' member of the process.  If the process doesn't
+       have a filter and the result of conversion is unibyte, use
+       Fstring_to_multibyte (not Fstring_make_multibyte) to get the
+       multibyte form.
+       (Fset_process_coding_system): Call setup_process_coding_systems.
+       (Fset_process_filter_multibyte): New function.
+       (Fprocess_filter_multibyte_p): New function.
+       (syms_of_process): Intern and staticpro QCfilter_multibyte.
+       Defsubr Sset_process_filter_multibyte and
+       Sprocess_filter_multibyte_p.
+ 
+       * process.h (struct Lisp_Process): New member filter_multibyte.
+ 
+       * lisp.h (setup_process_coding_systems): Add prototype.
+ 
+       * buffer.c (Fset_buffer_multibyte): If the current buffer has a
+       process, update coding systems for the process.
+ 
+ 2003-02-09  Kenichi Handa  <address@hidden>
+ 
+       * fns.c (string_to_multibyte): New function.
+       (Fstring_to_multibyte): New function.
+       (syms_of_fns): Defsubr it.
+ 
+ 2003-02-08  Andreas Schwab  <address@hidden>
+ 
+       * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
+       instead of the substitution.
+ 
+ 2003-02-08  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
+ 
+       * xmenu.c (menu_position_func): Adjust menu popup position so that
+       the menu is fully visible.
+ 
+ 2003-02-07  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
+       (x_make_frame_invisible, x_wm_set_icon_position):
+       Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
+ 
+       * xfns.c (x_set_name, x_set_title): Ditto.
+ 
+ 2003-02-04  Richard M. Stallman  <address@hidden>
+ 
+       * keyboard.c (echo_now): Update before_command_echo_length.
+       (Freset_this_command_lengths): Reset this_command_key_count etc.
+       immediately rather than arranging to do it later.
+       (before_command_key_count_1, before_command_echo_length_1)
+       (before_command_restore_flag): Vars deleted.
+       (add_command_key): Don't handle before_command_restore_flag.
+       (read_char, record_menu_key): Don't update before_command_key_count or
+       before_command_echo_length.
+       (read_char): Don't handle before_command_restore_flag.
+ 
+       * keyboard.c (command_loop_1): Don't call adjust_point_for_property
+       in direct-output clauses if it wouldn't be called in the ordinary case.
+ 
+ 2003-02-04  Kim F. Storm  <address@hidden>
+ 
+       * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
+ 
+ 2003-02-02  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * gtkutil.c (remove_from_container): Copying list is not needed.
+       (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
+       (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
+       on list returned from gtk_container_get_children to avoid memory leak.
+ 
+ 2003-02-01  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
+       local malloc.
+       [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
+       definitions in xpm.h.
+       (init_xpm_functions): New function.
+       (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
+       (init_external_image_libraries): Try to load libXpm.dll.
+ 
+       * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
+       timestamp.
+ 
+ 2003-01-31  Dave Love  <address@hidden>
+ 
+       * syntax.c (Fskip_chars_forward)
+       (open-paren-in-column-0-is-defun-start): Doc fix.
+ 
+ 2003-01-31  Joe Buehler  <address@hidden>
+ 
+       * fileio.c: Support // at start of name for Cygwin (just added proper
+       preprocessor tests).
+ 
+       * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
+ 
+       * Makefile.in: Use @EXEEXT@ for Cygwin.
+ 
+       * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
+ 
+       * s/cygwin.h: Added for Cygwin port.
+ 
+ 2003-01-31  Juanma Barranquero  <address@hidden>
+ 
+       * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
+       when including gif_lib.h.
+       (init_gif_functions, init_tiff_functions): New functions.
+       (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
+       Windows. Disable color table lookups. Call library functions
+       through pointers determined at runtime.
+       (init_external_image_libraries): Try to load libungif.dll and
+       libtiff.dll.
+ 
+ 2003-01-31  Kenichi Handa  <address@hidden>
+ 
+       * xdisp.c (SKIP_GLYPHS): New macro.
+       (set_cursor_from_row): Skip all glyphs that comes from overlay string.
+ 
+ 2003-01-30  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * gtkutil.c (free_frame_tool_bar): Remove debug printf.
+ 
+ 2003-01-30  Dave Love  <address@hidden>
+ 
+       * alloc.c (Vgc_elapsed, gcs_done): New variables.
+       (Fgarbage_collect): Use them.
+       (init_alloc, syms_of_alloc): Set them up.
+ 
+ 2003-01-30  Juanma Barranquero  <address@hidden>
+ 
+       * w32fns.c (init_external_image_libraries): Add missing operator.
+ 
+ 2003-01-29  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
+       an alternative name for jpeg.dll.
+ 
+ 2003-01-29  Kenichi Handa  <address@hidden>
+ 
+       * xdisp.c (set_cursor_from_row): Pay attention to string display
+       properties.
+ 
+ 2003-01-28  Benjamin Riefenstahl  <address@hidden>
+ 
+       * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
+       <escape>.
+       (keycode_to_xkeysym_table): Reformat and add more comments.
+       (XTread_socket): Drop special case for backspace.
+ 
+ 2003-01-28  Andrew Choi  <address@hidden>
+ 
+       * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
+       values in old-style RGB specs.
+ 
+ 2003-01-27  Juanma Barranquero  <address@hidden>
+ 
+       * w32fns.c (init_external_image_libraries): Try alternate names for the
+       jpeg dll.
+ 
+ 2003-01-27  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * gtkutil.c (create_dialog, xg_separator_p)
+       (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
+       before calling strcmp or strlen.
+ 
+ 2003-01-26  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
+       and handle image load failure.
+ 
+ 2003-01-26  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
+       New functions.
+       (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
+       Disable color table lookups. Call jpeg library functions
+       through pointers determined at runtime.
+       (init_external_image_libraries): Try to load jpeg.dll.
+ 
+ 2003-01-25  Richard M. Stallman  <address@hidden>
+ 
+       * lisp.h: Declare format2 instead of format1.
+ 
+       * fileio.c (barf_or_query_if_file_exists):
+       Call format2 instead of format1.
+ 
+       * editfns.c (format2): New function, replaces format1
+       but takes exactly two Lisp Objects as format args.
+ 
+       * buffer.c (Fkill_buffer): Call format2 instead of format1.
+ 
+ 2003-01-25  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xterm.h: Change to return value of x_dispatch_event to int.
+ 
+       * xterm.c (x_filter_event): New function.
+       (event_handler_gdk, XTread_socket): Call x_filter_event.
+       (x_dispatch_event): Change to return value of finish.
+       (event_handler_gdk): Use return value from x_dispatch_event.
+ 
+       * xfns.c (x_window): Call create_frame_xic for GTK version to
+       initialize input methods.
+ 
+       * gtkutil.h: Add (void) prototypes.
+ 
+       * gtkutil.c (create_menus): Remove code that puts the help menu to
+       the right.
+ 
+ 2003-01-25  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
+       [HAVE_PNG]: Sync with xfns.c version.
+       (png_load): Adjust colors for Windows. Use Windows
+       bitmaps. Disable color table lookups.
+       (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
+       (init_png_functions): New function.
+       (png_read_from_memory, png_load): Call png library functions
+       through pointers determined at runtime.
+       (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
+       (init_external_image_libraries): New function.
+       (init_xfns): Call it.
+ 
+ 2003-01-24  Andreas Schwab  <address@hidden>
+ 
+       * minibuf.c (Fminibuffer_message): Verify type of parameter.
+ 
+ 2003-01-24  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
+       of static initializer.
+ 
+ 2003-01-24  Dave Love  <address@hidden>
+ 
+       * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
+       architectures.
+ 
+       * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
+       Use __alignof__.
+ 
+ 2003-01-24  Kenichi Handa  <address@hidden>
+ 
+       * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
+       It it is nonzero, don't pretend that an invisible area doesn't exist.
+       (command_loop_1): Call adjust_point_for_property with proper
+       second arg.
+ 
+ 2003-01-22  Jason Rumney  <address@hidden>
+ 
+       Sync changes with xterm.c and xfns.c.
+ 
+       * w32term.c (x_draw_glyph_string_foreground)
+       (x_draw_composite_glyph_string_foreground): Implement overstriking.
+ 
+       * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
+       phys_cursor's hpos is overwritten.  This is still not completely
+       correct, as it doesn't really make sense to use hpos at all to
+       get the cursor glyph (as that is relative to the width of the
+       characters on the line, which may have changed during the update).
+ 
+       * w32term.c (notice_overwritten_cursor): Handle the special case
+       of the cursor being in the first blank non-text line at the
+       end of a window.
+ 
+       * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
+       (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
+       Compute from the x position returned by x_draw_glyphs.
+ 
+       (x_display_and_set_cursor): Don't set phys_cursor_width here,
+       except for NO_CURSOR and system caret, to make phys_cursor_width
+       contain what its name suggests.
+       (notice_overwritten_cursor): Consider the cursor image erased if
+       the output area intersects the cursor image in y-direction.
+ 
+       * w32term.c (note_mode_line_or_margin_highlight): Rename from
+       note_mode_line_highlight and extend.
+ 
+       * w32term.c (last_window): New variable.
+       (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
+       (note_mouse_movement): Remove reimplemented code in #if 0.
+ 
+       * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
+       not update_mode_lines, and always set it to 1.
+ 
+ 2003-01-21  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (IDC_HAND): Define it if system headers don't.
+ 
+ 2003-01-21  KOBAYASHI Yasuhiro  <address@hidden>
+ 
+       * w32term.h (struct w32_output): New member hand_cursor.
+       (WM_EMACS_SETCURSOR): New message definition.
+ 
+       * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
+       function w32_define_cursor.
+       (note_mouse_highlight): Initialize, setup cursor accoding to mouse
+       position, change member name output_data.x to output_data.w32 and
+       add function w32_define_cursor.
+       (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
+       and change member name output_data.x to output_data.w32.
+       (w32_initialize_display_info):
+       Setup dpyinfo->vertical_scroll_bar_cursor.
+ 
+       * w32fns.c (Vx_hand_shape): New variable.
+       (w32_wnd_proc): Add message entries for WM_SETCURSOR and
+       WM_EMACS_SETCURSOR.
+       (x-create-frame): Setup Cursor types.
+ 
+ 2003-01-21  David Ponce  <address@hidden>
+ 
+       * w32term.c (w32_encode_char): For DIM=1 charset, set
+       ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
+       x_encode_char change by Kenichi Handa <address@hidden> on
+       2002-09-30.)
+       (w32_draw_relief_rect): Declare all args.
+       (w32_define_cursor): New.
+ 
+       * w32fns.c (w32_load_cursor): New function.
+       (w32_init_class): Use it.
+       (x_put_x_image): Declare all args.
+ 
+ 2003-01-21  Richard Dawe  <address@hidden>  (tiny change)
+ 
+       * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
+ 
+ 2003-01-21  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * gtkutil.c: Must include stdio.h before termhooks.h
+ 
+ 2003-01-21  Dave Love  <address@hidden>
+ 
+       * alloc.c (Fgc_status): Print zombie list.
+       (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
+       Fix assignment of zombies.
+       (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
+       Don't take car of non-cons.
+ 
+       * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
+ 
+       * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
+ 
+ 2003-01-20  David Ponce  <address@hidden>
+ 
+       * w32menu.c (digest_single_submenu): Declare all args.
+ 
+       Sync with 2002-12-23  Richard M. Stallman  <address@hidden>
+       changes in xmenu.c:
+ 
+       (parse_single_submenu): Use individual keymap's prompt
+       string as pane name, if there is one.
+       (set_frame_menubar): Save menu_items_n_panes from each call to
+       parse_single_submenu and use it when calling digest_single_submenu.
+ 
+ 2003-01-20  Steven Tamm  <address@hidden>
+ 
+       * macterm.c (XTread_socket): Checks for valid, visible window
+       before sending a scroll-wheel event.
+ 
+ 2003-01-20  Richard M. Stallman  <address@hidden>
+ 
+       * xdisp.c (redisplay_window): If mini window's buffer is not
+       a minibuffer, then redisplay it like other windows.
+ 
+ 2003-01-20  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * gtkutil.c (xg_create_frame_widgets): Check if there is an
+       external tool bar before setting tool bar height.
+ 
+ 2003-01-19  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xterm.c (handle_one_xevent): Surround popup_activated
+       with #ifdef:s for non-toolkit version.
+ 
+       * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
+       (gtkutil.o): New file.
+       (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
+       (LIBW): Set to @GTK_LIBS@ if USE_GTK.
+ 
+       * gtkutil.c: New file for GTK version.
+ 
+       * gtkutil.h: New file for GTK version.
+ 
+       * xterm.h: Add xt_or_gtk_widget.
+       Include gtk files for USE_GTK.
+       (struct x_output): Add toolbar_height.
+       (struct x_output): Add GTK widgets and Gdk size_hints.
+       (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
+       (FRAME_OUTER_WINDOW): New macros for USE_GTK.
+       (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
+ 
+       * xterm.c: Include gtkutil.h for USE_GTK.
+       Declare extern void free_frame_menubar for USE_GTK.
+       (note_mouse_highlight): Check popup_activated for USE_GTK.
+       (xt_action_hook): Don't compile if USE_GTK.
+       (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
+       (xg_scroll_callback): New function.
+       (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
+       (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
+       for USE_GTK.
+       (x_scroll_bar_create): Call xg_update_scrollbar_pos and
+       xg_show_scroll_bar for USE_GTK.
+       (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
+       (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
+       (event_handler_gdk): New function for USE_GTK.
+       (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
+       (handle_one_xevent): Make sure widget is mapped before
+       calling x_real_positions for USE_GTK.
+       (XTread_socket): Add GTK event loop for USE_GTK.
+       (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
+       (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
+       (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
+       (x_iconify_frame): Add code for USE_GTK.
+       (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
+       (x_wm_set_size_hint): Only compile if not USE_GTK.  GTK version
+       is in gtkutil.c.
+       (x_term_init): Add initialization for GTK.
+       (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
+ 
+       * xmenu.c: Include gtkutil.h for USE_GTK.
+       (Fx_popup_menu): Use current position if x and y is NIL.
+       (single_menu_item, single_menu_item, Fx_popup_dialog):
+       Check for USE_GTK.
+       (popup_widget_loop): New function for USE_GTK.
+       (x_activate_menubar): Add code for USE_GTK.
+       (popup_activate_callback, popup_deactivate_callback)
+       (menu_highlight_callback, menubar_selection_callback):
+       Add USE_GTK versions.
+       (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
+       (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
+       (free_frame_menubar): Only compile if not USE_GTK.  GTK version
+       is in gtkutil.c.
+       (popup_selection_callback): New version for USE_GTK.
+       (create_and_show_popup_menu): New fuction, one USE_GTK version and
+       one USE_X_TOOLKIT version.
+       (xmenu_show): Call create_and_show_popup_menu.
+       (dialog_selection_callback): New version for USE_GTK.
+       (create_and_show_dialog): New fuction, one USE_GTK version and
+       one USE_X_TOOLKIT version.
+       (xdialog_show): Call create_and_show_dialog.
+ 
+       * xfns.c: Include gtkutil for USE_GTK.
+       (x_window_to_frame, x_any_window_to_frame)
+       (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
+       (x_top_window_to_frame): Add code for USE_GTK.
+       (x_set_background_color): Call xg_set_background_color for GTK.
+       (x_set_menu_bar_lines): Check for USE_GTK.
+       (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
+       (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
+       (x_window): Call xg_create_frame_widgets for USE_GTK.
+       (Fx_create_frame): Check for USE_GTK
+       (Fx_file_dialog): New implementation for USE_GTK.
+ 
+       * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
+       (update_menu_bar): Add check for USE_GTK.
+       (update_tool_bar): Add check for USE_GTK and external tool bar.
+       (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
+       (redisplay_internal): Add check for USE_GTK and popup_activated.
+       (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
+       (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
+       (display_menu_bar): Add check for USE_GTK
+ 
+       * lisp.h: Declare Vx_resource_name extern.
+ 
+       * keyboard.c (kbd_buffer_get_event):  Check MENU_BAR_ACTIVATE_EVENT
+       for USE_GTK.
+       (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
+ 
+       * frame.h (struct frame): Add external_tool_bar.  Check for USE_GTK.
+       (FRAME_EXTERNAL_TOOL_BAR): New macro.
+       (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
+ 
+       * fileio.c (Fread_file_name): Add check for USE_GTK.
+ 
+       * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
+       Add check for USE_GTK.
+ 
+       * config.in: Added HAVE_GTK
+ 
+       * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
+ 
+ 2003-01-18  Stefan Monnier  <address@hidden>
+ 
+       * charset.h (Funibyte_char_to_multibyte): Export.
+ 
+ 2003-01-18  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xmenu.c (mouse_position_for_popup): New function.
+       (Fx_popup_menu): Call mouse_position_for_popup for X and
+       mouse_position_hook for others.
+ 
+ 2003-01-17  Kim F. Storm  <address@hidden>
+ 
+       * editfns.c (Finsert): Mention `string-make-multibyte' and
+       `string-as-multibyte' in doc string.
+ 
+ 2003-01-17  Kenichi Handa  <address@hidden>
+ 
+       * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
+ 
+       * editfns.c (Fformat): Convert an unibyte char argument that is
+       formatted by "%c" to multibyte if the total result must be a
+       multibyte string.
+ 
+ 2003-01-16  Kim F. Storm  <address@hidden>
+ 
+       * process.c (set-process-filter): Document unibyte/multibyte-ness
+       of string argument.
+ 
+ 2003-01-16  Kenichi Handa  <address@hidden>
+ 
+       * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
+ 
+       * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
+       (re_search_2): Likewise.
+ 
+ 2003-01-15  Kenichi Handa  <address@hidden>
+ 
+       * xdisp.c (message_dolog): Fix bug of the case that *Message*
+       buffer is unibyte.
+ 
+ 2003-01-15  Francesco Potort,Al(B  <address@hidden>
+ 
+       * fns.c (Fsubstring): Clarify doc string.
+ 
+       * textprop.c (Ftext_properties_at, Fnext_char_property_change)
+       (Fprevious_char_property_change)
+       (Fnext_single_char_property_change)
+       (Fprevious_single_char_property_change, Fnext_property_change)
+       (Fnext_single_property_change, Fprevious_property_change)
+       (Fprevious_single_property_change, Fadd_text_properties)
+       (Fput_text_property, Fset_text_properties)
+       (Fremove_text_properties, Fremove_list_of_text_properties)
+       (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
+ 
+ 2003-01-14  Kim F. Storm  <address@hidden>
+ 
+       * process.h (struct Lisp_Process): New member plist replaces old
+       member private_vars.  All uses changed.
+ 
+       * process.c: Reworked 2003-01-12 change -- call a plist a plist!
+       (QCplist): Rename from QCvars.  Change all uses.
+       (Fprocess_plist): Replaces Fprocess_variable.  Simplified.
+       (Fset_process_plist): Replaces Fset_process_variable.  Simplify.
+       (syms_of_process): Intern, staticpro, defsubr these.
+       (Fmake_network_process): Describe :plist arg.  Remove :vars arg.
+ 
+ 2003-01-14  Francesco Potort,Al(B  <address@hidden>
+ 
+       * m/delta.h: Remove (obsolete).
+ 
+ 2003-01-13  Francesco Potort,Al(B  <address@hidden>
+ 
+       * fileio.c (Fdelete_directory, Fdelete_file): Document the
+       behaviour in front of symlinks.
+       (Fdelete_file): Raise an error on directories.
+ 
+ 2003-01-13  Dave Love  <address@hidden>
+ 
+       * fns.c (Freverse): Use QUIT.
+ 
+ 2003-01-13  Richard M. Stallman  <address@hidden>
+ 
+       * minibuf.c (minibuffer_completion_contents):
+       Error if point is inside prompt.
+ 
+       * keyboard.c (command_loop_1): Don't redisplay directly
+       if there's a post-command-hook.
+ 
+       * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
+       (Fdo_auto_save): Add gcpros around Ffile_name_directory.
+ 
+ 2003-01-12  Kim F. Storm  <address@hidden>
+ 
+       * process.h (struct Lisp_Process): New member private_vars.
+ 
+       * process.c (QCvars): New variable.
+       (syms_of_process): Intern and staticpro it.
+       (Fset_process_contact): Removed function.
+       (Fprocess_variable, Fset_process_variable): New functions.
+       (syms_of_process): Defsubr them.
+       (Fstart_process): Initialize private_vars plist to nil.
+       (Fmake_network_process): New arg :vars to setup the private
+       variables for new network process.
+       (server_accept_connection): Copy server's private variables to
+       client process.
+ 
+       * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
+       crashes).  Code rewritten and simplified.  Now directly aligns the
+       pointer and recalculates pure_bytes_used, rather than aligning the
+       size and adjusting the pointer.
+ 
+ 2003-01-11  Kim F. Storm  <address@hidden>
+ 
+       * process.c (Fset_process_contact): New function.
+       (syms_of_process): defsubr it.
+       (make-network-process): Update doc.
+ 
+ 2003-01-10  Andreas Schwab  <address@hidden>
+ 
+       * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
+       Reported by Berthold Gunreben <address@hidden>.
+ 
+ 2003-01-10  Dave Love  <address@hidden>
+ 
+       * composite.c (syms_of_composite): Make composition_hash_table weak.
+ 
+ 2003-01-09  Kim F. Storm  <address@hidden>
+ 
+       * process.c (Fmake_network_process): Convert new port number
+       to host byte order for `:service t' case.  From Mario Lang.
+ 
+ 2003-01-08  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
+       instead of XtAppProcessEvent.
+ 
+       * xterm.c (handle_one_xevent): New function.
+       (x_dispatch_event): New function.
+       (XTread_socket): Call handle_one_xevent.
+ 
+       * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
+ 
+       * xmenu.c (Fx_popup_menu): If popping up at mouse position,
+       call XQueryPointer to get coordinates.
+       (popup_get_selection): Do not set popup_activated_flag to zero,
+       let popup_deactivate_callback do that.  Needed for Motif.
+       Call x_dispatch_event instead of XtDispatchEvent.
+       (xmenu_show): Calculate root coordinate from frame top/left position.
+ 
+ 2003-01-08  Kim F. Storm  <address@hidden>
+ 
+       * process.c (server_accept_connection): Fix recording of new
+       connection's local address in :local property of contact info.
+       (Fmake_network_process): Record local network address for new
+       client processes in :local property of contact info.
+       (format-network-address): Add arg OMIT-PORT.  Change callers.
+ 
+ 2003-01-07  Dave Love  <address@hidden>
+ 
+       * Makefile.in (fns.o): Depend on coding.h.
+ 
+ 2003-01-07  Markus Rost  <address@hidden>
+ 
+       * minibuf.c (Fread_variable): Doc fix.
+ 
+       * eval.c (Fuser_variable_p): Doc change.  For custom variables,
+       use the same test as for custom-variable-p.
+ 
+ 2003-01-05  Richard M. Stallman  <address@hidden>
+ 
+       * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
+       Count LAST_LINE_MISFIT in scroll margin for end of window.
+       Move label too_near_end before setting SCROLL_MARGIN_POS.
+       Set LAST_LINE_MISFIT before jumping there.
+ 
+       * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
+       scroll_conservatively case.  If scrolling that much doesn't change
+       STARTP, move it down one line.
+ 
+       * xdisp.c (redisplay_window): Pass last_line_misfit arg to
+       try_scrolling.  Make it 1 after make_cursor_line_fully_visible fails.
+ 
+       * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
+       selected frame.
+ 
+       * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
+       (syms_of_keymap): staticpro them.
+       (Fapropos_internal): Initialize them and clear them out.
+       Don't GCPRO them.
+ 
+       * buffer.c (syms_of_buffer) <scroll-up-aggressively, 
scroll-down-aggressively>:
+       Doc fixes.
+ 
+       * lisp.h: New misc type Lisp_Save_Value.
+       (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
+       (XSAVE_VALUE): New macro.
+       (struct Lisp_Save_Value): New data type.
+       (union Lisp_Misc): Add u_save_value alternative.
+       (make_save_value): Declared.
+ 
+       * alloc.c (make_save_value): New function.
+ 
+       * xterm.c (x_catch_errors): Save dpy using make_save_value.
+       (x_catch_errors_unwind): Call XSync.
+ 
+ 2003-01-01  Richard M. Stallman  <address@hidden>
+ 
+       * window.c (window_scroll_pixel_based): Partially undo last change.
+ 
+       * keyboard.c (command_loop_1): Call adjust_point_for_property
+       in direct action cases for Qforward_char and Qbackward_char.
+       Set already_adjusted so it won't be done twice.
+ 
+ 2002-12-30  Richard Dawe  <address@hidden>  (tiny change)
+ 
+       * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
+       type definition of size_t.
+ 
+ 2003-01-02  Steven Tamm  <address@hidden>
+ 
+       * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
+       distinguish Carbon GUI builds from X11 builds on darwin.
+ 
+ 2002-12-30  Steven Tamm  <address@hidden>
+ 
+       * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
+       to default to t.
+ 
+ 2002-12-29  Francesco Potort,Al(B  <address@hidden>
+ 
+       * data.c (Fstring_to_number, Fminus): Better English in doc strings.
+ 
+ 2002-12-28  Steven Tamm  <address@hidden>
+ 
+       * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
+       allow building in a different directory than source.  Uses some
+       GNU Make extensions, but there is no other make on Mac OS X.
+ 
+ 2002-12-26  Francesco Potort,Al(B  <address@hidden>
+ 
+       * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
+       (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
+       (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
+       (Fstring_to_number): Mention the returned value in the doc strings.
+ 
+ 2002-12-23  Richard M. Stallman  <address@hidden>
+ 
+       * buffer.c (syms_of_buffer) <scroll-up-aggressively>
+       <scroll-down-aggressively>: Doc fix.
+ 
+       * xmenu.c (parse_single_submenu): Use individual keymap's prompt
+       string as pane name, if there is one.
+       (set_frame_menubar): Save menu_items_n_panes from each call to
+       parse_single_submenu and use it when calling digest_single_submenu.
+ 
+       * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
+       Don't try to make last line fully visible if it is past end of window.
+ 
+ 2002-12-22  Steven Tamm  <address@hidden>
+ 
+       * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
+       (mac_menu_show): Add support for hierarchical popup menus.
+       (add_menu_item): Remove indentation support.
+       (fill_submenu, fill_menu): Create hierarchical menus
+       instead of using indentation.
+ 
+ 2002-12-22  Richard M. Stallman  <address@hidden>
+ 
+       * xdisp.c (try_cursor_movement): Don't call try_window here.
+       (redisplay_window): Never redisplay minibuffer when inactive.
+ 
+       * window.c (select_window_1): Undo 9/21 change.
+ 
+ 2002-12-22  Steven Tamm  <address@hidden>
+ 
+       * macterm.c (XTread_socket): Call KeyTranslate for control and
+       meta to deal correctly shifted non-alpha characters, like C-S-5
+       being treated like C-%.  Does not look for shift key to deal
+       with masking off control-key with mac-reverse-ctrl-meta.
+ 
+ 2002-12-21  Richard M. Stallman  <address@hidden>
+ 
+       * xmenu.c (popup_get_selection): Now static.  New arg DO_TIMERS.
+       If it is non-nil, run timers.  Use an unwind-protect to requeue
+       the events that were read ahead.
+       (popup_get_selection_unwind): New subroutine.
+       (popup_get_selection_queue): File-scope variable now holds that queue.
+       (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
+       (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
+       Use an unwind-protect to pop down the dialog box.
+       (xdialog_show_unwind): New subroutine implements that.
+ 
+       * xdisp.c (row_containing_pos): Change exit test using last_y.
+       (try_window_id): Abort if row_containing_pos returns null.
+ 
+       * lread.c (load_error_handler): New function.
+       (Fload): Handle errors in Fsubstitute_in_file_name.
+       Don't expect Fsignal to return.
+ 
+       * eval.c: Errors and throws work right with interrupt blocking.
+       (struct catchtag): New elt interrupt_input_blocked.
+       (unwind_to_catch): Restore interrupt_input_blocked from saved value.
+       (internal_catch, Fcondition_case, internal_condition_case)
+       (internal_condition_case_1, internal_condition_case_2): Save it.
+       (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
+ 
+       * editfns.c (Fformat): Add parens.
+ 
+       * dired.c (file_name_completion): Fix that change.
+       Delete special quit-handling code; just use QUIT.
+ 
+ 2002-12-21  Tak Ota  <address@hidden>  (tiny change)
+ 
+       * dired.c (file_name_completion): Close directory on error
+       just as in directory_files_internal.
+ 
+ 2002-12-19  David Kastrup  <address@hidden>
+ 
+       * window.c (Fset_window_configuration): Set old_point to correct
+       value when new_current_buffer == current_buffer.
+ 
+ 2002-12-17  Ben Key  <address@hidden>
+ 
+       Revisited my earlier fix for the following entry in etc/PROBLEMS:
+       "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
+       or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
+ 
+       These changes were in part based upon suggestions made by Peter
+       'Luna' Runestig address@hidden
+ 
+       * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
+       g_b_init_get_token_information, g_b_init_lookup_account_sid,
+       g_b_init_get_sid_identifier_authority ): Add several static
+       global variables.
+ 
+       * w32.c (globals_of_w32): New function.  Used to initialize those
+       global variables that must always be initialized on startup even
+       when the global variable initialized is non zero.  Its primary
+       purpose at this time is to set the global variables
+       g_b_init_is_windows_9x, g_b_init_open_process_token,
+       g_b_init_get_token_information, g_b_init_lookup_account_sid, and
+       g_b_init_get_sid_identifier_authority to 0 on startup.
+       Called from main.
+ 
+       * w32.c (is_windows_9x): Perform initialization only if
+       g_b_init_is_windows_9x is equal to 0.  On initialization set
+       g_b_init_is_windows_9x equal to 1.
+ 
+       * w32.c (open_process_token): Perform initialization only if
+       g_b_init_open_process_token is equal to 0.  On initialization set
+       g_b_init_open_process_token equal to 1.
+ 
+       * w32.c (get_token_information): Perform initialization only if
+       g_b_init_get_token_information is equal to 0.  On initialization
+       set g_b_init_get_token_information equal to 1.
+ 
+       * w32.c (lookup_account_sid): Perform initialization only if
+       g_b_init_lookup_account_sid is equal to 0.  On initialization
+       set g_b_init_lookup_account_sid equal to 1.
+ 
+       * w32.c (get_sid_identifier_authority): Perform initialization
+       only if g_b_init_get_sid_identifier_authority is equal to 0.
+       On initialization set g_b_init_get_sid_identifier_authority equal to 1.
+ 
+       * w32fns.c (globals_of_w32fns): New function. Used to initialize
+       those global variables that must always be initialized on startup
+       even when the global variable initialized is non zero.
+       Its primary purpose at this time is to initialize the global variable
+       track_mouse_event_fn.
+ 
+       * w32fns.c (w32_wnd_proc):  Remove initialization of
+       track_mouse_event_fn from the handler for the WM_SETFOCUS message.
+ 
+       * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
+ 
+       * w32menu.c (globals_of_w32menu):  New function. Used to
+       initialize those global variables that must always be initialized
+       on startup even when the global variable initialized is non zero.
+       Its primary purpose at this time is to initialize the global
+       variables get_menu_item_info and set_menu_item_info.
+ 
+       * w32menu.c (initialize_frame_menubar): Remove initialization of
+       get_menu_item_info and set_menu_item_info.
+ 
+       * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
+ 
+       * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
+       Declare them.
+ 
+       * emacs.c (main): Call globals_of_w32 prior to calling
+       init_environment if WINDOWSNT is defined.  Call globals_of_w32fns
+       and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
+       is defined.
+ 
+       * w32term.c (x_update_window_begin): Fix Windows API error
+       detected by BoundsChecker.  Test to determine if
+       w32_system_caret_hwnd is NULL prior to attempting to use
+       SendMessage to send the WM_EMACS_HIDE_CARET message to it.
+ 
+       * w32term.c (x_update_window_end): Fix Windows API error
+       detected by BoundsChecker.  Test to determine if
+       w32_system_caret_hwnd is NULL prior to attempting to use
+       SendMessage to send the WM_EMACS_SHOW_CARET message to it.
+ 
+ 2002-12-17  Kenichi Handa  <address@hidden>
+ 
+       * coding.c (coding_system_require_warning): New variable.
+       (syms_of_coding): DEFVAR it.
+ 
+       * coding.h (coding_system_require_warning): Extern it.
+ 
+       * fileio.c (choose_write_coding_system): Even if
+       Vcoding_system_for_write is non-nil, if
+       coding_system_require_warning is nonzero, call
+       Vselect_safe_coding_system_function.
+ 
+ 2002-12-17  Markus Rost  <address@hidden>
+ 
+       * Makefile.in (lisp, shortlisp): Add cus-face and timer.
+       (lisp): Add font-core.
+ 
+ 2002-12-13  Stefan Monnier  <address@hidden>
+ 
+       * textprop.c (text_read_only): New arg `propval'.
+       (get_char_property_and_overlay): Remove unused var `next_overlay'.
+       (verify_interval_modification): Use text_read_only's new arg.
+ 
+ 2002-12-13  Kenichi Handa  <address@hidden>
+ 
+       * coding.c (Funencodable_char_position): Set pend correctly.
+ 
+ 2002-12-12  Jason Rumney  <address@hidden>
+ 
+       * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
+       (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
+       Be more careful about when help_events are generated.
+ 
+ 2002-12-12  Steven Tamm  <address@hidden>
+ 
+       * macterm.c (mac_check_for_quit_char): Correctly set the
+       modifiers of the event to 0.
+       * mac.c (sys_select): Duplicate rfds before calling select to
+       ensure that rfds survive the while loop.
+ 
+ 2002-12-11  Kim F. Storm  <address@hidden>
+ 
+       * xdisp.c (try_window_id): Don't call set_cursor_from_row if
+       row_containing_pos returned NULL.
+ 
+ 2002-12-10  Steven Tamm  <address@hidden>
+ 
+       * mac.c (sys_read): Fix sys_read to not call select if IO is
+       non-blocking.
+       (sys_select): Fix sys_select to not use a timeout larger than
+       the one given.
+ 
+ 2002-12-10  Juanma Barranquero  <address@hidden>
+ 
+       * editfns.c (Fformat): Use alloca, not _alloca.
+ 
+ 2002-12-09  Richard M. Stallman  <address@hidden>
+ 
+       * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
+       as the last thing.
+ 
+ 2002-12-09  Dave Love  <address@hidden>
+ 
+       * s/sol2-8.h: Removed.  (Not necessary.)
+ 
+ 2002-12-09  Matthew Swift  <address@hidden>
+ 
+       * editfns.c (Fformat): Handle precision in string conversion
+       specifiers like libc functions do (ie, print at most that many
+       characters).
+ 
+ 2002-12-08  Richard M. Stallman  <address@hidden>
+ 
+       * xdisp.c (row_containing_pos): Check more carefully
+       whether charpos is really in the row before returning it.
+ 
+ 2002-12-07  Steven Tamm  <address@hidden>
+ 
+       * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
+ 
+       * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
+       each stack frame.  This may change as it could be time consuming.
+ 
+       * macterm.c (mac_check_for_quit_char, quit_char_comp)
+       (init_quit_char_handler, mac_determine_quit_char_modifiers)
+       (mac_initialize): Add code to check for pressing of quit_char
+       in the OS event queue.
+ 
+       * mac.c (sys_select): Call mac_check_for_quit_char every second
+       while blocking on select.
+ 
+       * mac.c (sys_read): Use sys_select to test for input first
+       before calling read, to allow C-g to break.
+ 
+ 2002-12-07  Richard M. Stallman  <address@hidden>
+ 
+       * minibuf.c (Fcompleting_read): Doc fix.
+ 
+       * lread.c (syms_of_lread) <load-history>: Doc fix.
+ 
+       * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
+ 
+       * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
+       autoload.
+ 
+       * data.c (Fdefalias): Record in load-history redefining an autoload.
+ 
+       * alloca.c: Undo ifdef change accidentally made on 12-04.
+ 
+ 2002-12-06  Francesco Potorti`  <address@hidden>
+ 
+       * xfns.c (png_load): Avoid double gamma correction for PNG images.
+ 
+ 2002-12-04  Richard M. Stallman  <address@hidden>
+ 
+       * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
+ 
+       * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
+ 
+       * alloca.c: Don't use #error.
+ 
+ 2002-12-03  Dave Love  <address@hidden>
+ 
+       * buffer.c (Qucs_set_table_for_input): New.
+       (Fget_buffer_create): Use it.
+       (Qset_buffer_major_mode_hook): Deleted.
+       (Fset_buffer_major_mode): Revert previous change.
+       (init_buffer_once): Intern ucs-set-table-for-input.
+       (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
+       Add &Qucs_set_table_for_input.
+ 
+ 2002-12-03  Andreas Schwab  <address@hidden>
+ 
+       * callint.c (Fcall_interactively): Use next_event only if less
+       than key_count.
+ 
+ 2002-12-02  Andrew Choi  <address@hidden>
+ 
+       * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
+       names to 255 characters.
+ 
+       * macterm.c (XTread_socket): If all frames have been collapsed,
+       expand the first one before handling drag-and-drop events.
+ 
+       * s/darwin.h (GETPGRP_NO_ARG): Delete.  Replaced by GETPGRP_VOID,
+       which is detected by autoconf.
+ 
+ 2002-12-01  Steven Tamm  <address@hidden>
+ 
+       * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
+       offset in two hints table to allow prebinding to be redone and
+       allow the executable to be stripped.
+ 
+ 2002-11-29  Dave Love  <address@hidden>
+ 
+       * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
+       already provided.
+ 
+ 2002-11-29  Richard M. Stallman  <address@hidden>
+ 
+       * xdisp.c (start_display): Check more intelligently for
+       whether the line is continued.
+       (move_it_vertically_backward): Clear it->continuation_lines_width.
+ 
+ 2002-11-28  Dave Love  <address@hidden>
+ 
+       * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
+       * s/alliant.h, s/altos.h: Deleted.  (Unused/empty.)
+ 
+ 2002-11-27  Steven Tamm  <address@hidden>
+ 
+       * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
+       more descriptive error output from lread.c:Fload upon most require
+       cycles during boostrapping.
+ 
+ 2002-11-27  Jason Rumney  <address@hidden>
+ 
+       * fileio.c (Finsert_file_contents): Give a more appropriate error
+       for files bigger than 2Gb when off_t is 32 bit.
+ 
+       * dired.c (Ffile_attributes): Don't return negative file sizes for
+       files bigger than 2Gb when off_t is 32 bit.
+ 
+ 2002-11-27  Dave Love  <address@hidden>
+ 
+       * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
+ 
+       * systty.h: Don't conditionally define GETPGRP_NO_ARG.
+       Test GETPGRP_VOID instead.
+       [BSD_TERMIOS]: Remove definitions (never used).
+ 
+       * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
+       Don't define.
+       (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
+ 
+       * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
+ 
+ 2002-11-25  Jason Rumney  <address@hidden>
+ 
+       * w32.c (sys_write): Avoid non-blocking mode, which is not fully
+       supported.
+ 
+ 2002-11-25  Dave Love  <address@hidden>
+ 
+       * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
+ 
+       * Makefile.in (TEMACS_LDFLAGS): Update last change.
+ 
+ 2002-11-25  Andreas Schwab  <address@hidden>
+ 
+       * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
+ 
+ 2002-11-24  Steven Tamm  <address@hidden>
+ 
+       * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
+       determine the size of pointers alloced in unexed space instead
+       of using possibly invalid emacs_zone pointers.  This fixes the
+       binary incompatibility problems caused by updates to libSystem.B.
+ 
+ 2002-11-24  Richard M. Stallman  <address@hidden>
+ 
+       * search.c (Fstring_match): Doc fix.
+ 
+       * callint.c (Fcall_interactively): If a command fails because
+       `*' detects a read-only buffer, but RECORD_FLAG is set,
+       record it anyway if the args don't actually do tty input.
+ 
+ 2002-11-22  Dave Love  <address@hidden>
+ 
+       * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
+ 
+       * keyboard.c (interrupt_signal): Provide forward declaration.
+       (kbd_buffer_store_event): Don't declare interrupt_signal.
+ 
+       * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
+ 
+ 2002-11-21  Richard M. Stallman  <address@hidden>
+ 
+       * eval.c (interactive_p): Skip any number of bytecode
+       and special form frames, in any order.
+ 
+ 2002-11-20  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (convert_mono_to_color_image): New function.
+       (xbm_load, xbm_load_image): Use it when foreground or background
+       is explicitly set.
+ 
+ 2002-11-19  Dave Love  <address@hidden>
+ 
+       * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
+ 
+ 2002-11-18  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
+       (XPutPixel): Swap blue and red.
+       (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
+       (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
+       (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
+       (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
+ 
+ 2002-11-18  Dave Love  <address@hidden>
+ 
+       * m/orion105.h (HAVE_ALLOCA): Don't define.
+ 
+       * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
+ 
+       * m/intel386.h: Don't include alloca.h or define alloca.
+ 
+       * m/ia64.h: Don't include alloca.h, stdlib.h.  Don't declare
+       malloc, realloc, calloc.
+ 
+       * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
+       (bcmp): Don't define.
+ 
+       * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
+ 
+       * m/amdahl.h: Don't define LIB_STANDARD.
+ 
+       * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
+ 
+       * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
+ 
+       * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
+       Don't include alloca.h.
+ 
+       * s/aix3-2.h (HAVE_FSYNC): Don't define.
+ 
+       * regex.c (_GNU_SOURCE): Don't define.
+ 
+       * process.c (_GNU_SOURCE): Don't define.
+ 
+       * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
+ 
+ 2002-11-18  Markus Rost  <address@hidden>
+ 
+       * s/sol2-8.h: Include sol2-6.h.
+ 
+ 2002-11-18  Miles Bader  <address@hidden>
+ 
+       * dispextern.h (struct face): Add `overstrike' field.
+       * xterm.c (x_draw_glyph_string_foreground)
+       (x_draw_composite_glyph_string_foreground): Implement overstriking.
+       * xfaces.c (load_face_font): Set `face->overstrike' based on
+       result from choose_face_font.
+       (best_matching_font, choose_face_font): Add `needs_overstrike'
+       argument, and use it to return whether overstriking is desirable
+       for this face/font combo.
+       (set_font_frame_param: Pass new argument to choose_face_font.
+ 
+ 2002-11-17  Ben Key  <address@hidden>
+ 
+       This change is my fix for the following entry in etc/PROBLEMS:
+       "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
+       or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
+ 
+       * w32.c: Added wrapper functions around the win32 API functions
+       OpenProcessToken, GetTokenInformation, LookupAccountSid, and
+       GetSidIdentifierAuthority.  These wrapper functions serve two
+       purposes:
+       1.  They ensure that the wrapped function can never be called
+       when Emacs is running on an operating system on which they are
+       not supported (Microsoft Windows 95 / 98 / ME).
+       2.  They call the wrapped functions via function pointers rather
+       than calling them directly.  This avoids taking advantage of the
+       undocumented fact that although these functions are not supported
+       in the 9x branch of Microsoft Windows, the functions do exist in
+       the version of advapi32.dll that is found in the 9x branch of
+       Microsoft Windows.
+ 
+       * w32.c (init_user_info): Replace the calls to the win32 API
+       functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
+       and GetSidIdentifierAuthority with calls to the newly added
+       wrapper functions.
+ 
+       * w32.h: Added extern declarations for the following functions:
+       syms_of_w32term, syms_of_w32fns, syms_of_w32select,
+       syms_of_w32menu, and void syms_of_fontset.
+ 
+       * w32fns.c (w32_wnd_proc): Add code to reinitialize the
+       function pointer track_mouse_event_fn in the handler for the
+       WM_SETFOCUS message.
+ 
+       * w32menu.c (initialize_frame_menubar): Add code to
+       reinitialize the function pointers set_menu_item_info and
+       get_menu_item_info.
+ 
+ 2002-11-17  Ben Key  <address@hidden>
+ 
+       * sound.c: Added a partial implementation of play-sound-internal
+       for Microsoft Windows.  Added various #ifdef / #else / #endif
+       code blocks to separate the code that will compile under
+       Microsoft Windows from the code that is specific to Gnu/Linux.
+       Moved several blocks of code around to make this separation of code
+       into Windows compatible and Gnu/Linux compatible code blocks easier.
+ 
+       * makefile.w32-in: Include sound.c and link with WinMM.lib.
+ 
+       * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
+       added support for play-sound-internal under Windows would be
+       included in the build of Emacs.
+ 
+ 2002-11-16  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (w32_load_system_font): Don't disable Cleartype.
+ 
+       * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
+ 
+ 2002-11-15  Stefan Monnier  <address@hidden>
+ 
+       * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
+       (adjust_point_for_property): Move out of display and invisible even if
+       we were already inside before (in case a property was added while
+       we weren't looking).  Be more careful when handling invisible props.
+       Skip invisible text as if it really wasn't there at all.
+ 
+ 2002-11-15  Jason Rumney  <address@hidden>
+ 
+       * w32term.c (x_draw_image_foreground)
+       (w32_draw_image_foreground_1): Use standard copy and invert
+       operations to draw images.
+ 
+       * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
+       depth of 1.
+       (xbm_read_bitmap_data): Invert bits as xbm is read in.
+       (XPutPixel): Don't invert bits here.
+ 
+ 2002-11-15  Jason Rumney  <address@hidden>
+ 
+       * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
+       (w32_draw_image_foreground_1): Handle image masks.
+       (x_draw_image_glyph_string): Don't BitBlt transparently.
+ 
+       * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
+       (x_from_xcolors): Adjust RGB values for W32.
+       (image_background, image_background_transparent)
+       (postprocess_image, x_to_xcolors, x_disable_image)
+       (x_build_heuristic_mask): Adapt for W32 and enable.
+       (x_create_x_image_and_pixmap): Mark images with palettes as such.
+       (xbm_load): Remove unused variable.
+ 
+ 2002-11-14  Richard M. Stallman  <address@hidden>
+ 
+       * buffer.c (syms_of_buffer): Doc fix.
+ 
+ 2002-11-14  Dave Love  <address@hidden>
+ 
+       * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
+ 
+       * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
+       * xmenu.c (unuse_menu_items, digest_single_submenu):
+       * xfns.c (x_put_x_image):
+       * xdisp.c (message2_nolog, set_message):
+       * undo.c (record_point):
+       * terminfo.c (tparam):
+       * syntax.c (scan_sexps_forward):
+       * scroll.c (calculate_scrolling, calculate_direct_scrolling):
+       * composite.c (update_compositions):
+       * cm.c (calccost, cmgoto):
+       * charset.c (c_string_width): Declare all args (per C99).
+ 
+       * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
+ 
+       * lisp.h (get_specified_cursor_type, get_window_cursor_type):
+       Don't declare.
+ 
+       * emacs.c (main) [!VMS]: Avoid third arg.
+ 
+       * fns.c (Fcopy_sequence): Doc fix.
+       (Fmap_char_table): Cast `call2'.
+ 
+ 2002-11-14  Francesco Potorti`  <address@hidden>
+ 
+       * s/sol2-8.h: New file.
+ 
+ 2002-11-14  Kim F. Storm  <address@hidden>
+ 
+       * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
+       dependency on `risky-local-variable' and the :propertize form.
+ 
+ 2002-11-12  Stefan Monnier  <address@hidden>
+ 
+       * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
+ 
+       * syntax.c (scan_sexps_forward): Undo last patch.
+       Use a more obvious fix: check eob before updating the syntax table.
+ 
+ 2002-11-09  Stefan Monnier  <address@hidden>
+ 
+       * syntax.c (scan_sexps_forward): Update syntax table before reading
+       a char rather than after so we don't update the table past eob.
+ 
+ 2002-11-09  Dave Love  <address@hidden>
+ 
+       * buffer.c (Fset_buffer_major_mode): Fix last change.
+ 
+       * regex.c (regexec): Fix pmatch declaration.
+ 
+       * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
+ 
+       * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
+       to self-inserting characters.
+       (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
+ 
+       * coding.c (Vtranslation_table_for_input): New.
+       (syms_of_coding): DEFVAR it.
+ 
+ 2002-11-08  Juanma Barranquero  <address@hidden>
+ 
+       * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
+       window.
+ 
+ 2002-11-08  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * process.c (Fformat_network_address): Remove unused locals p,
+       cp, and i.
+ 
+ 2002-11-06  Dave Love  <address@hidden>
+ 
+       * buffer.c (Qset_buffer_major_mode_hook): New.
+       (Fset_buffer_major_mode): Use it.
+ 
+ 2002-11-06  Richard M. Stallman  <address@hidden>
+ 
+       * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
+       and stop_polling.
+ 
+       * process.c (wait_reading_process_input):
+       Test POLLING_PROBLEM_IN_SELECT, not hpux.
+       Avoid initialization for auto Lisp_Object var.
+ 
+       * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
+ 
+       * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
+ 
+ 2002-11-05  Richard M. Stallman  <address@hidden>
+ 
+       * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
+ 
+       * callint.c (Fcall_interactively): New local filter_specs.
+       (Fcall_interactively): Check for progn as well as let.
+       Add a gcpro.
+       (Qprogn): New variable.
+       (syms_of_callint): Staticpro and init Qprogn.
+ 
+ 2002-11-04  John Paul Wallington  <address@hidden>
+ 
+       * lread.c (Feval_buffer): Doc fix.
+ 
+ 2002-11-04  Dave Love  <address@hidden>
+ 
+       * keyboard.c (read_char): Always translate iff
+       Vkeyboard_translate_table is a char table and c is valid.
+ 
+       * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
+       and fix C types.
+ 
+ 2002-11-03  Stefan Monnier  <address@hidden>
+ 
+       * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
+ 
+       * editfns.c (get_pos_property): Don't hardcode Qfield.
+ 
+       * keyboard.c (adjust_point_for_property): Handle `display' prop on
+       overlays.  Also handle `invisible' prop.
+ 
+ 2002-11-02  Stefan Monnier  <address@hidden>
+ 
+       * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
+       (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
+ 
+ 2002-11-01  Andreas Schwab  <address@hidden>
+ 
+       * editfns.c (Fmessage): Revert last change to properly handle %%.
+ 
+ 2002-11-01  Stefan Monnier  <address@hidden>
+ 
+       * xmenu.c (unuse_menu_items): New fun.
+       (menu_items_inuse): New var.
+       (syms_of_xmenu): Initialize it.
+       (init_menu_items): Use it to detect re-entrance.
+       (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
+       (Fx_popup_menu): Remove spurious XSETFRAME.
+ 
+       * editfns.c (find_field): Make an exception for nil fields.
+ 
+ 2002-11-01  Dave Love  <address@hidden>
+ 
+       * m/gec63.h: Deleted.
+ 
+ 2002-10-31  Dave Love  <address@hidden>
+ 
+       * xterm.c (XTread_socket): Fix last change.
+       (xaw_scroll_callback): Cast call_data to long to avoid warning.
+ 
+ 2002-10-31  Stefan Monnier  <address@hidden>
+ 
+       * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
+ 
+ 2002-10-30  Stefan Monnier  <address@hidden>
+ 
+       * editfns.c (overlays_around, get_pos_property): New funs.
+       (find_field): Use them.
+       Also be careful not to modify POS before its last use.
+       (Fmessage): Don't Fformat if there's nothing to format.
+ 
+ 2002-10-30  Dave Love  <address@hidden>
+ 
+       * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
+       [HAVE_PTY_H]; Include pty.h.
+ 
+       * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
+ 
+       * xterm.c (Qeql): Declare.
+       (Vx_keysym_table): New.
+       (syms_of_xterm): Initialize it.
+       (XTread_socket): Use it.  Deal with ASCII keysyms.
+       (XSetIMValues) [HAVE_X11R6]: Prototype.
+ 
+       * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
+       (lispy_kana_keys): Comment out.
+       (make_lispy_event) [XK_kana_A]: Comment out.
+       (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
+       Fix sprintf call.
+ 
+       * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
+       regexp.h change).
+       (TERMINFO, LIBS_TERMCAP): Define.
+ 
+       * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
+       (bcmp): Define conditional on HAVE_BCMP.
+       (NO_SIOCTL_H): Don't define.
+       (TIOCSIGSEND): Don't make conditional on IRIX6.
+ 
+       * s/sol2-5.h: Don't include strings.h.
+       (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
+ 
+       * s/irix6-0.h (IRIX6): Don't define.
+       (bcopy, bcmp, bzero): Don't undef.
+ 
+       * s/irix6-5.h: Don't include strings.h.
+       (IRIX6): Don't define.
+       (bcopy, bcmp, bzero): Don't undef.
+ 
+       * syntax.c (Fforward_comment): Doc fix.
+ 
+ 2002-10-29  Kim F. Storm  <address@hidden>
+ 
+       * process.c (Fsignal_process): Allow PROCESS to be specified by
+       name in addition to pid (as integer or string).
+ 
+ 2002-10-28  Harald Maier  <address@hidden>  (tiny change)
+ 
+       * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
+       environments.
+ 
+ 2002-10-27  Kim F. Storm  <address@hidden>
+ 
+       * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
+ 
+       * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
+ 
+       * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
+ 
+       * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
+ 
+ 2002-10-26  Richard M. Stallman  <address@hidden>
+ 
+       * editfns.c (Fformat): Detect invalid format letters for floats.
+ 
+ 2002-10-25  Kenichi Handa  <address@hidden>
+ 
+       * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
+       (x_set_title): Likewise.
+ 
+ 2002-10-25  Juanma Barranquero  <address@hidden>
+ 
+       * macgui.h:
+       * w32gui.h: Remove definition of XColor.
+ 
+       * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
+ 
+ 2002-10-24  Kim F. Storm  <address@hidden>
+ 
+       * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
+       Callers changed (supply dummy arg).
+ 
+       * lisp.h (get_window_cursor_type): Update prototype.
+ 
+       * w32term.c (x_display_and_set_cursor): Get active_cursor from
+       get_window_cursor_type to track system caret.
+ 
+ 2002-10-24  Kim F. Storm  <address@hidden>
+ 
+       * process.c (Fformat_network_address): New function.
+       (syms_of_process): Defsubr it.
+       (list_processes_1): Use it to format :local/:remote address if
+       service/host is not set; before emacs would crash in that case.
+       (Fmake_network_process): Don't use Ffind_operation_coding_system
+       to setup coding system if host or service is not set.
+ 
+ 2002-10-23  Juanma Barranquero  <address@hidden>
+ 
+       Patch suggested by Jay Finger <address@hidden>.
+ 
+       * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
+       COLORREF.
+ 
+       * macgui.h:
+       * w32gui.h: Add definition of XColor.
+ 
+       * macfns.c:
+       * w32fns.c:
+       * xfaces.c: Remove definition of XColor.
+ 
+ 2002-10-22  Stefan Monnier  <address@hidden>
+ 
+       * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
+ 
+       * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
+       Only ignore truly dedicated windows.  For UNSHOW_BUFFER, delete the
+       window if it is dedicated.
+       (Fshrink_window): Add preserve_before as was done for enlarge_window.
+       (Vspecial_display_function): Update docstring.
+ 
+       * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
+       (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
+       (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
+ 
+ 2002-10-21  Stefan Monnier  <address@hidden>
+ 
+       * casefiddle.c (casify_region): Don't treat a prefix char as part
+       of a word when at the beginning.
+ 
+ 2002-10-17  Juanma Barranquero  <address@hidden>
+ 
+       * lread.c (syms_of_lread): Fix typos.
+ 
+ 2002-10-17  Dave Love  <address@hidden>
+ 
+       * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
+ 
+ 2002-10-16  Richard M. Stallman  <address@hidden>
+ 
+       * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
+ 
+ 2002-10-14  Juanma Barranquero  <address@hidden>
+ 
+       * w16select.c (syms_of_win16select): Fix docstring for
+       `selection-coding-system'.
+ 
+       * w32select.c (syms_of_w32select): Likewise.
+ 
+ 2002-10-14  Stefan Monnier  <address@hidden>
+ 
+       * syntax.c (scan_lists): Don't get fooled by a symbol ending with
+       a backslash-quoted char.
+       (scan_lists, scan_sexps_forward): Pacify the compiler.
+ 
+ 2002-10-13  Richard M. Stallman  <address@hidden>
+ 
+       * window.c (window_scroll): Set immediate_quit.
+ 
+       * print.c (print): When backquote form is the car of a list,
+       output in old style.  Use old_backquote_output to output all
+       comma forms inside it in old style too.
+ 
+       * buffer.h (struct buffer): Move `undo_list' down below `name'.
+ 
+ 2002-10-11  Markus Rost  <address@hidden>
+ 
+       * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
+       batch mode).
+ 
+       * lread.c (Fload): Doc fix (load-suffixes).
+ 
+ 2002-10-10  Steven Tamm  <address@hidden>
+ 
+       * macterm.c (syms_of_macterm, mac_get_mouse_btn):
+       Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
+       Also switch the default to Qnil from Qt.
+ 
+ 2002-10-08  Kenichi Handa  <address@hidden>
+ 
+       * coding.c (code_convert_region): When we need more GAP for
+       conversion, pay attention to the case that coding->produced is not
+       greater than coding->consumed.
+ 
+ 2002-10-07  Richard M. Stallman  <address@hidden>
+ 
+       * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
+ 
+ 2002-10-06  Andrew Choi  <address@hidden>
+ 
+       * macmenu.c (mac_menu_show): Add j to count menu items; match
+       menu_item_selection to it to find selected item.
+ 
+ 2002-10-06  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
+       cases.  The correct fix is to pass ReparentNotify to Xt.
+       The shell widget interprets ConfigureNotify differently depending
+       on if it has been reparented or not.
+ 
+ 2002-10-05  Markus Rost  <address@hidden>
+ 
+       * editfns.c (Fformat_time_string): Doc fix.
+ 
+ 2002-10-05  John Paul Wallington  <address@hidden>
+ 
+       * fns.c (Flength): Doc fix.
+ 
+ 2002-10-04  Stefan Monnier  <address@hidden>
+ 
+       * keyboard.c (keyremap): New struct.
+       (read_key_sequence): Use it: globally replace keytran_foo with
+       keytran.foo and fkey_foo with fkey.foo.  Rename temp vars
+       keytran_next and fkey_next to just `next'.
+ 
+ 2002-10-04  Steven Tamm  <address@hidden>
+ 
+       * macterm.c (keycode_to_xkeysym_table): Change return to be
+       treated like an X keysym.
+ 
+ 2002-10-03  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
+       and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
+       This is to also handle x/y changes that occur because of a resize.
+ 
+ 2002-10-02  John Paul Wallington  <address@hidden>
+ 
+       * frame.c (Vdelete_frame_functions): New variable.
+       (syms_of_frame): Initialize and defvar it.
+       (Fdelete_frame): Use it instead of delete-frame-hook.  Don't run
+       it when frame's `tooltip' parameter is non-nil.
+ 
+       * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
+ 
+       * w32fns.c (x_create_tip_frame): Likewise.
+ 
+       * macfns.c (x_create_tip_frame): Likewise.
+ 
+ 2002-09-30  Kenichi Handa  <address@hidden>
+ 
+       * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
+       -1 before calling ccl_driver.
+ 
+       * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
+       Only when it is non-nil, handle composition sequence.
+       (setup_coding_system) <0>: Don't force composition handling.
+ 
+       * Makefile.in (lisp, shortlisp): Add utf-16.elc
+ 
+ 2002-09-29  Richard M. Stallman  <address@hidden>
+ 
+       * search.c (Freplace_match): Adjust match data for the substitution
+       just made in the buffer.
+ 
+       * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
+       (redisplay_internal): Use them.  Do RESUME_POLLING at end of function.
+ 
+ 2002-09-27  Richard M. Stallman  <address@hidden>
+ 
+       * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
+       (read_char): Use them.  Do all exits thru the end of the function.
+ 
+ 2002-09-27  Kenichi Handa  <address@hidden>
+ 
+       * xfaces.c (try_font_list): Pay attention to the case that FAMILY
+       is nil.
+ 
+ 2002-09-26  Richard M. Stallman  <address@hidden>
+ 
+       * regex.h (__restrict_arr): Don't define if already defined.
+ 
+       * coding.c (run_pre_post_conversion_on_str):
+       Save and restore Vdeactivate_mark.
+ 
+ 2002-09-26  John Paul Wallington  <address@hidden>
+ 
+       * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
+ 
+ 2002-09-26  Kenichi Handa  <address@hidden>
+ 
+       * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY.  If it is
+       nonzero, try face's family at first.  Otherwise try FAMILY at first.
+       (choose_face_font): If C is a single byte char or latin-1, call
+       try_font_list with PREFER_FACE_FAMILY 1.
+ 
+ 2002-09-21  Richard M. Stallman  <address@hidden>
+ 
+       * window.c (select_window_1): Don't select frame.
+       Set frame's selected window only when frame itself is selected.
+       (Fselect_window): Doc fix.
+ 
+ 2002-09-18  Kim F. Storm  <address@hidden>
+ 
+       * process.c (make-network-process): Doc fix (there is no
+       network-server-log-function hook).
+ 
+ 2002-09-18  Richard M. Stallman  <address@hidden>
+ 
+       * print.c (print): Clear out the unused parts of Vprint_number_table.
+       (syms_of_print): Doc fix for `print-number-table'.
+ 
+       * unexelf.c (unexec): Undo previous change.
+ 
+ 2002-09-17  Andreas Schwab  <address@hidden>
+ 
+       * m/alpha.h [LINUX]: Don't define DATA_START.
+ 
+ 2002-09-16  Dave Love  <address@hidden>
+ 
+       * unexelf.c (unexec): Deal with .got, reinstating change from
+       25-08-1999.
+ 
+ 2002-09-13  Richard M. Stallman  <address@hidden>
+ 
+       * s/sol2-6.h (UNEXEC): Comment out definition.
+ 
+       * unexsol.c (unexec): Don't downcase first letter of error msg.
+ 
+       * xfaces.c (Fcolor_supported_p): Just one arg is required.
+ 
+ 2002-09-12  Markus Rost  <address@hidden>
+ 
+       * unexsol.c: Include buffer.h, charset.h, coding.h.
+ 
+ 2002-09-11  Richard M. Stallman  <address@hidden>
+ 
+       * unexsol.c: Don't use report_file_error; do it by hand
+       using dlerror.
+ 
+       * process.c (wait_reading_process_input, both versions):
+       Before calling turn_on_atimers, call stop_polling.
+ 
+       * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
+ 
+       * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
+       we go to too_near_end, call clear_glyph_matrix.
+       (redisplay_window): After make_cursor_line_fully_visible,
+       call clear_glyph_matrix and bypass `goto done'.
+ 
+       * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
+       and we have non-toolkit scroll bars, return nil for scroll-bar-width.
+ 
+ 2002-09-10  Richard M. Stallman  <address@hidden>
+ 
+       * fileio.c (Fdo_auto_save): Catch error making directory.
+       Only call push_message if we need to.
+       At the same time, make an unwind-protect to pop it.
+       Rename local message_p to old_message_p.
+       (do_auto_save_make_dir, do_auto_save_eh): New functions.
+       (do_auto_save_unwind): Don't call pop_message.
+ 
+       * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
+ 
+       * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
+ 
+       * alloc.c (Fgarbage_collect): Use pop_message_unwind.
+ 
+       * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
+ 
+ 2002-09-10  Stefan Monnier  <address@hidden>
+ 
+       * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
+       (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
+       (re_match_2_internal): Be more careful with infinite loops.
+ 
+ 2002-09-10  Kim F. Storm  <address@hidden>
+ 
+       * macros.c (end_kbd_macro): New function.
+       (Fend_kbd_macro): Use it.
+ 
+       * macros.h (end_kbd_macro): Declare extern.
+ 
+       * keyboard.c (Fdiscard_input): If defining keyboard macro,
+       end and save it instead of discarding it.
+ 
+ 2002-09-09  Markus Rost  <address@hidden>
+ 
+       * s/sol2-6.h: Fix typo.  Add comment.
+ 
+ 2002-09-09  Richard M. Stallman  <address@hidden>
+ 
+       * regex.c (regnum_t): Use signed int, not unsigned int.
+ 
+       * s/sol2-6.h: New file.
+ 
+       * s/sol2-5.h (UNEXEC): Definition deleted.
+ 
+ 2002-09-08  Kim F. Storm  <address@hidden>
+ 
+       * macros.c (executing_macro_index): Change type to EMACS_INT.
+       (syms_of_macros): DEFVAR_INT it  (needed by kmacro).
+ 
+       * macros.h (executing_macro_index): Change type to EMACS_INT.
+ 
+ 2002-09-06  Richard M. Stallman  <address@hidden>
+ 
+       * casetab.c (set_case_table): Make canon table point to eqv table.
+ 
+ 2002-09-06  Juanma Barranquero  <address@hidden>
+ 
+       * coding.c (syms_of_coding): Fix spacing.
+ 
+       * composite.c (Fcompose_region_internal)
+       (Fcompose_string_internal): Likewise.
+ 
+       * data.c (Flsh): Likewise.
+ 
+       * fontset.c (Fset_fontset_font): Likewise.
+ 
+       * macfns.c (Fx_server_max_request_size): Likewise.
+ 
+       * w16select.c (syms_of_win16select): Likewise.
+ 
+       * w32select.c (syms_of_w32select): Likewise.
+ 
+       * xselect.c (syms_of_xselect): Likewise.
+ 
+ 2002-09-05  Richard M. Stallman  <address@hidden>
+ 
+       * regex.c (set_image_of_range_1): In no-TRANSLATE case,
+       call EXTEND_RANGE_TABLE and return a proper value.
+       (set_image_of_range): Don't call set_image_of_range_1
+       if no TRANSLATE or if range includes all of Latin-1.
+       Only call it for the Latin-1 part of the range.
+       For other cases, make two separate ranges,
+       one for the original specified characters and one for
+       their case-conversions.
+ 
+ 2002-09-04  Richard M. Stallman  <address@hidden>
+ 
+       * s/sol2-5.h (UNEXEC): Use unexsol.o.
+ 
+       * window.c (displayed_window_lines): Correct for one-off bug
+       in HEIGHT on non-window displays.
+ 
+       * regex.c (set_image_of_range_1): New function.
+       (set_image_of_range): Use set_image_of_range_1 for Latin-1.
+       Return a value to indicate running out of memory.
+       (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
+       (extend_range_table_work_area): New subroutine.
+       (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
+       Different calling conventions, and used from set_image_of_range{,_1}.
+       (IMMEDIATE_QUIT_CHECK): Definitions moved.
+ 
+ 2002-09-04  Juanma Barranquero  <address@hidden>
+ 
+       * makefile.w32-in: All dependencies updated.
+ 
+ 2002-09-01  Richard M. Stallman  <address@hidden>
+ 
+       * unexsol.c: New file.
+ 
+       * xfns.c (Qbox): Declare external, don't define.
+ 
+       * xdisp.c (redisplay_window) <force-start case>:
+       If point is on semi-visible last line, reposition
+       it at previous line.
+ 
+       * alloc.c (display_malloc_warning): Use display-warning.
+       (malloc_warning_1): Function deleted.
+ 
+       * alloc.c [ALLOC_DEBUG]: #undef INLINE.
+ 
+       * lread.c (read1): Handle #! by skipping the line.
+ 
+ 2002-08-31  Richard M. Stallman  <address@hidden>
+ 
+       * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
+       Don't include LDFLAGS.
+       (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
+ 
+ 2002-08-31  Eli Zaretskii  <address@hidden>
+ 
+       * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
+       member of x_display_info unless we compile for some window system.
+ 
+ 2002-08-31  Kim F. Storm  <address@hidden>
+ 
+       * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
+       (get_window_cursor_type): Don't use them.
+       (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
+ 
+ 2002-08-30  Kenichi Handa  <address@hidden>
+ 
+       * xdisp.c (get_next_display_element): Fix previous change.
+ 
+ 2002-08-30  Andrew Choi  <address@hidden>
+ 
+       * macterm.c (expose_overlaps): New function (merge code from xterm.c).
+       (expose_window): Use it to fix the display of overlapping
+       rows (merge code from xterm.c).
+ 
+       * macfns.c (Qbox): Add extern declaration.
+ 
+ 2002-08-30  Juanma Barranquero  <address@hidden>
+ 
+       * w32fns.c (Qbox): Make extern.
+       (syms_of_w32fns): Remove initialization of Qbox.
+ 
+ 2002-08-30  Rune Kleveland  <address@hidden>  (tiny change)
+ 
+       * xfns.c (Fx_open_connection): Fix error message.
+ 
+ 2002-08-30  Kim F. Storm  <address@hidden>
+ 
+       The following changes consolidates the handling of the cursor
+       type in xdisp.c, moving duplicate code and functionality from
+       xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
+ 
+       * frame.h (enum text_cursor_kinds): Consolidated here.
+       Added DEFAULT_CURSOR value.
+       (struct frame) <desired_cursor, cursor_width>
+       <blink_off_cursor, blink_off_cursor_width>: New fields.
+       Consolidated from output_x, output_w32 and output_mac structs.
+       (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
+       (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
+ 
+       * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
+       Variables consolidated here.
+       (Valternate_cursor_type, Qalternate_cursor_type): New variables.
+       (Vcursor_in_non_selected_windows): Renamed from
+       cursor_in_non_selected_windows and changed to Lisp_Object.
+       (syms_of_xdisp): Define and staticpro new and moved variables.
+       (get_specified_cursor_type): Renamed from x_specified_cursor_type;
+       consolidated here.  Recognize Qhollow setting.
+       (set_frame_cursor_types): New function to set frame cursor types
+       based on the frame parameters.
+       (get_window_cursor_type): New function to calculate new cursor
+       type and width for the specified window.  Based on duplicated
+       code consolidated here.
+       Enhancements: cursor-in-non-selected-windows may be a cursor type,
+       check buffer-local alternate-cursor-type and blink-cursor-alist
+       before using built-in blink off methods.
+ 
+       * dispextern.h (cursor_in_non_selected_windows): Extern removed.
+ 
+       * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
+       (get_specified_cursor_type, get_window_cursor_type)
+       (set_frame_cursor_types): Added prototypes.
+ 
+       * macfns.c (x_specified_cursor_type): Removed.
+       (x_set_cursor_type): Use set_frame_cursor_types.
+       (Qbar, Qbox): Removed.
+       (syms_of_macfns): Don't intern or staticpro them.
+ 
+       * macterm.c (x_specified_cursor_type): Remove prototype.
+       (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
+       (x_display_and_set_cursor): Use get_window_cursor_type.
+       Remove unused local variables cursor_non_selected, active_cursor.
+       Redraw cursor if hbar cursor width changes.
+       (make_mac_frame): Set FRAME_DESIRED_CURSOR.
+ 
+       * macterm.h (enum text_cursor_kinds): Removed.
+       (struct output_mac) <current_cursor, desired_cursor, cursor_width>
+       <blink_off_cursor, blink_off_cursor_width>: Members removed.
+       (FRAME_DESIRED_CURSOR): Macro removed.
+ 
+       * w32fns.c (Vblink_cursor_alist): Removed.
+       (Qbar, Qhbar, Qbox, Qhollow): Removed.
+       (syms_of_w32fns): Don't intern, staticpro, or define them.
+       (x_specified_cursor_type): Removed.
+       (x_set_cursor_type): Use set_frame_cursor_types.
+ 
+       * w32term.c (x_specified_cursor_type): Remove prototype.
+       (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
+       (x_display_and_set_cursor): Use get_window_cursor_type.
+       Remove unused local variables cursor_off_state.
+       Redraw cursor if hbar cursor width changes.
+       Changed all occurrences of w32_highlight_frame to x_highlight_frame.
+ 
+       * w32term.h (enum text_cursor_kinds): Removed.
+       (struct output_w32) <current_cursor, desired_cursor, cursor_width>
+       <blink_off_cursor, blink_off_cursor_width>: Members removed.
+       (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
+       (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
+       (struct w32_display_info) <x_highlight_frame>: Renamed member from
+       w32_highlight_frame.
+ 
+       * xfns.c (Vblink_cursor_alist): Removed.
+       (Qbar, Qhbar, Qbox, Qhollow): Removed.
+       (syms_of_xfns): Don't intern, staticpro, or define them.
+       (x_specified_cursor_type): Removed.
+       (x_set_cursor_type): Use set_frame_cursor_types.
+ 
+       * xterm.c (x_specified_cursor_type): Remove prototype.
+       (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
+       (x_display_and_set_cursor): Use get_window_cursor_type.
+       Remove unused local variables cursor_off_state.
+       Redraw cursor if hbar cursor width changes.
+ 
+       * xterm.h (enum text_cursor_kinds): Removed.
+       (struct output_x) <current_cursor, desired_cursor, cursor_width>
+       <blink_off_cursor, blink_off_cursor_width>: Members removed.
+       (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
+       (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
+       (x_specified_cursor_type): Remove prototype.
+ 
+ 2002-08-28  Richard M. Stallman  <address@hidden>
+ 
+       * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
+       FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
+       (Vblink_cursor_alist): New variable.
+       (syms_of_w32fns): Initialize and defvar it.
+       (x_specified_cursor_type): Recognize Qbox for filled box.
+       Exceptions are hollow boxes.
+       (Qbox, Qhollow): New variables.
+       (syms_of_w32fns): Initialize and staticpro them.
+ 
+       * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
+       New macros.
+       (struct w32_output): New fields blink_off_cursor,
+       blink_off_cursor_width.
+       (FRAME_CURSOR_WIDTH): New macro.
+ 
+       * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
+       and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
+ 
+       * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
+       for bar cursor.
+ 
+       * w32term.c (expose_overlaps): New function.
+       (expose_window): Use it to fix the display of overlapping rows.
+ 
+ 2002-08-28  Simon Josefsson  <address@hidden>
+ 
+       * xfns.c (Fx_open_connection): Improve help when X connection
+       fails, xhost is insecure and xauth is better.
+ 
+ 2002-08-28  Juanma Barranquero  <address@hidden>
+ 
+       * makefile.w32-in: Add missing dependencies on w32term.h and
+       composite.h.
+ 
+       * emacs.c (USAGE1): Add missing newline.
+ 
+ 2002-08-27  Andrew Choi  <address@hidden>
+ 
+       * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
+ 
+ 2002-08-27  Richard M. Stallman  <address@hidden>
+ 
+       * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
+       FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
+       (Vblink_cursor_alist): New variable.
+       (syms_of_xfns): Initialize and defvar it.
+       (x_specified_cursor_type): Recognize Qbox for filled box.
+       Exceptions are hollow boxes.
+       (Qbox, Qhollow): New variables.
+       (syms_of_xfns): Initialize and staticpro them.
+ 
+       * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
+       New macros.
+       (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
+ 
+       * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
+       and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
+ 
+       * emacs.c (main): Handle --script.
+       (USAGE1): Mention --script.
+       (standard_args): Define sort order for --script.
+ 
+ 2002-08-27  Gerd Moellmann  <address@hidden>
+ 
+       * xdisp.c (redisplay_updating_p): Variable removed.
+       (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
+       New variables.
+       (init_iterator): Don't free realized faces if
+       inhibit_free_realized_faces is set.
+       (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
+       (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
+       initialize Qinhibit_free_realized_faces.
+ 
+       * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
+       when iterator is adding glyphs to a glyph matrix.
+ 
+ 2002-08-27  Kenichi Handa  <address@hidden>
+ 
+       * xdisp.c (get_next_display_element): In unibyte case, don't use
+       octal form for such eight-bit characters that can be converted to
+       multibyte char.
+ 
+ 2002-08-26  Kim F. Storm  <address@hidden>
+ 
+       * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
+       and background colors.  From Joe Buehler (tiny change).
+ 
+ 2002-08-26  Miles Bader  <address@hidden>
+ 
+       * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
+ 
+ 2002-08-25  Andrew Choi  <address@hidden>
+ 
+       * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
+       defined instead of MAC_OSX.
+ 
+       * s/darwin.h (select): Define select to sys_select only if
+       HAVE_CARBON is defined.
+       (HAVE_WORKING_VFORK): #undef it.  Define vfork to fork.
+       (DONT_REOPEN_PTY): #def it.
+ 
+       * macterm.c (XTread_socket): Remove code to call
+       SendEventToEventTarget for keys with command modifiers when
+       mac_command_key_is_meta is nil.
+ 
+ 2002-08-24  Andreas Schwab  <address@hidden>
+ 
+       * eval.c (Fdefvar): Fix last change.
+ 
+ 2002-08-23  Richard M. Stallman  <address@hidden>
+ 
+       * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
+       Record variables in load history as (defvar . VAR).
+       (Fdefvar): Don't record in load history if no initial value.
+       (Qdefvar): New variable.
+       (syms_of_eval): Init and staticpro it.
+ 
+       * lread.c (syms_of_lread): Doc fix.
+       (build_load_history): Use Fmember to see if a definition
+       is already in the Vload_history element.
+ 
+       * process.c (Fstart_process): Remove /: from program name.
+ 
+       * emacs.c (decode_env_path): Don't add /: if file name handler
+       has a `safe-magic' property.
+ 
+       * callproc.c (Fcall_process): Remove /: from program name.
+ 
+ 2002-08-23  Stefan Monnier  <address@hidden>
+ 
+       * regex.c (PATFETCH): Remove the translating fetch.
+       (PATFETCH_RAW): Rename to PATFETCH.
+       (set_image_of_range): New fun.
+       (SET_RANGE_TABLE_WORK_AREA): Use it.
+       (regex_compile): Don't translate the pattern chars so eagerly.
+       Only do it when inserting an `exactn' bytecode or when handling
+       a char-range.
+       (mutually_exclusive_p): Avoid empty statement.
+ 
+ 2002-08-22  Kim F. Storm  <address@hidden>
+ 
+       * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
+       end up on a partially visible line; this reverts a specific part
+       of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
+       display error which has been reported several times now.
+       However it introduces the problem that changes was supposed to fix.
+       See my comments in the source if you want to debug this further.
+ 
+ 2002-08-20  Kenichi Handa  <address@hidden>
+ 
+       * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
+ 
+ 2002-08-19  Eli Zaretskii  <address@hidden>
+ 
+       * msdos.c (croak): Add `void' to definition.
+ 
+       * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
+       Don't define them, they are defined in msdos.c.
+ 
+       * mem-limits.h [MSDOS]: Declare etext.
+ 
+       * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
+       `const' since CORRECT_DIR_SEPS modifies its target.
+ 
+ 2002-08-19  Kim F. Storm  <address@hidden>
+ 
+       * keyboard.c (Fclear_this_command_keys): Added optional arg
+       KEEP-RECORD to avoid clearing lossage when we just want to clear
+       the current key sequence (kmacro needs this).
+ 
+ 2002-08-19  Kenichi Handa  <address@hidden>
+ 
+       * composite.c (run_composition_function): Call FUNC if it is fboundp.
+ 
+       * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
+       cons, return Qnil.
+ 
+ 2002-08-17  Richard M. Stallman  <address@hidden>
+ 
+       * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
+ 
+       * sysdep.c [!VMS]: Include sys/files.h.
+ 
+       * editfns.c (save_restriction_restore): Defend from unchained marker.
+ 
+       * buffer.c (overlays_at): Handle extending vec uniformly.
+       (overlays_in): Handle extending vec from length 0 as in overlays_at.
+ 
+ 2002-08-15  Andrew Choi  <address@hidden>
+ 
+       * mac.c (init_mac_osx_environment): New function.
+ 
+       * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
+ 
+ 2002-08-14  Kim F. Storm  <address@hidden>
+ 
+       * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
+       executing macro before appending to it (when used from Lisp).
+       (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
+       which is called prior to each iteration of macro (for kmacro.el).
+       (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
+ 
+       * lisp.h (Fexecute_kbd_macro): Update prototype.
+ 
+       * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
+ 
+ 2002-08-14  Kenichi Handa  <address@hidden>
+ 
+       * xselect.c (QUTF8_STRING): New variable.
+       (symbol_to_x_atom): Pay attention to QUTF8_STRING.
+       (x_atom_to_symbol): Likewise.
+       (x_get_local_selection): New argument local_request.  If it is
+       nonzero, call handler_fn with the second arg nil.
+       (x_handle_selection_request): Call x_get_local_selection with
+       local_request 0.
+       (lisp_data_to_selection_data): Don't encode the string here.
+       (Fx_get_selection_internal): Call x_get_local_selection with
+       local_request 1.
+       (syms_of_xselect): Intern and staticpro QUTF8_STRING.
+ 
+       * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
+ 
+       * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
+ 
+ 2002-08-13  Richard M. Stallman  <address@hidden>
+ 
+       * minibuf.c (Fminibufferp): New function.
+       (syms_of_minibuf): Defsubr it.
+       (Fminibuffer_prompt_end): Handle non-minibuffers specially.
+ 
+ 2002-08-13  Gerd Moellmann  <address@hidden>
+ 
+       * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
+ 
+ 2002-08-12  Richard M. Stallman  <address@hidden>
+ 
+       * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
+       [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
+       (WSTOPSIG, WTERMSIG): Define each one independently if not defined
+       already.
+ 
+       * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
+ 
+ 2002-08-11  Andrew Choi  <address@hidden>
+ 
+       * macterm.c (XTmouse_position): Check wp with is_emacs_window.
+       (Vmac_pass_command_to_system): New variable.
+       (Vmac_pass_control_to_system): New variable.
+       (do_mouse_moved): Check wp with is_emacs_window.
+       (XTread_socket): Check window_ptr with is_emacs_window.
+       Call FrontNonFloatingWindow instead of FrontWindow.  Send keydown
+       events back to Mac Toolbox for processing, depending on values of
+       Vmac_pass_command_to_system and Vmac_pass_control_to_system.
+       (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
+       Vmac_pass_control_to_system.
+ 
+ 2002-08-10  Kenichi Handa  <address@hidden>
+ 
+       * coding.c (unencodable_char_position): New function.
+       (Funencodable_char_position): New function.
+       (syms_of_coding): Defsubr Funencodable_char_position.
+ 
+ 2002-08-10  Andrew Choi  <address@hidden>
+ 
+       * mac.c (sys_select) [MAC_OSX]: New function.
+ 
+       * macterm.c (MakeMeTheFrontProcess): New function.
+       (mac_initialize): Call MakeMeTheFrontProcess.
+ 
+       * s/darwin.h: Define select to sys_select.
+ 
+ 2002-08-09  Richard M. Stallman  <address@hidden>
+ 
+       * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
+ 
+ 2002-08-09  Gerd Moellmann  <address@hidden>
+ 
+       * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
+       end of the buffer.
+ 
+ 2002-08-08  Ken Raeburn  <address@hidden>
+ 
+       * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
+ 
+       * puresize.h (BASE_PURESIZE): Increase to 910000.
+ 
+ 2002-08-08  Kenichi Handa  <address@hidden>
+ 
+       * coding.c (Ffind_operation_coding_system): For write-region, if
+       VISIT is a filename, make it the target.
+ 
+ 2002-08-07  Richard M. Stallman  <address@hidden>
+ 
+       * alloc.c (mark_object): Detect long lists for debugging.
+       (mark_object_loop_halt): New variable.
+ 
+       * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
+ 
+       * data.c (Fmake_variable_frame_local): Doc fix.
+ 
+ 2002-08-01  David Ponce  <address@hidden>
+ 
+       * w32menu.c (local_heap, local_alloc, local_free): New macros.
+       (malloc_widget_value, free_widget_value)
+       (w32_free_submenu_strings): Use them.
+ 
+       (push_submenu_start, push_submenu_end, push_left_right_boundary)
+       (push_menu_pane, push_menu_item, single_keymap_panes)
+       (single_menu_item, Fx_popup_menu, menubar_selection_callback)
+       (single_submenu, set_frame_menubar)
+       (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
+ 
+       (Fx_popup_menu): Don't show pop up menu until preceding one is
+       actually cleaned up.  Moved UNGCPRO outside #ifdef HAVE_MENUS block.
+ 
+       * w32menu.c: Changes adapted from xmenu.c
+       (set_frame_menubar): First parse all submenus,
+       then make widget_value trees from them.
+       Don't allocate any widget_value objects
+       until we are done with the parsing.
+       (parse_single_submenu): New function.
+       (digest_single_submenu): New function.
+       (single_submenu): Function deleted, replaced by those two.
+ 
+ 2002-08-04  Andrew Choi  <address@hidden>
+ 
+       * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
+       returns a valid window pointer before proceeding for keyDown and
+       autoKey events.
+ 
+ 2002-08-03  Andrew Choi  <address@hidden>
+ 
+       * macterm.c (USE_CARBON_EVENTS): New macro.
+       (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
+       (x_iconify_frame): Call CollapseWindow.
+       (Vmac_reverse_ctrl_meta): New variable.
+       (Vmac_wheel_button_is_mouse_2): New variable.
+       (init_mac_drag_n_drop): New function.
+       (mac_do_receive_drag): New function.
+       (mac_handle_service_event): New function.
+       (init_service_handler): New function.
+       (mac_to_emacs_modifiers): New function.
+       (mac_event_to_emacs_modifiers): New function.
+       (mac_get_mouse_btn): New function.
+       (mac_convert_event_ref): New function.
+       (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
+       SendEventToEventTarget, mac_event_to_emacs_modifiers, and
+       mac_get_mouse_btn.
+       (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
+ 
+       * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
+       lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
+       (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
+       TOOL_BAR_EVENT for MAC_OS as well.
+       (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
+       as for WINDOWS_NT.
+       (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
+ 
+       * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
+ 
+ 2002-08-03  Gerd Moellmann  <address@hidden>
+ 
+       * xdisp.c (forward_to_next_line_start): Fix a condition that
+       lead to a newline being skipped.
+ 
+ 2002-08-02  Andrew Choi  <address@hidden>
+ 
+       * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
+ 
+ 2002-08-01  Richard M. Stallman  <address@hidden>
+ 
+       * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
+ 
+ 2002-07-31  Andrew Choi  <address@hidden>
+ 
+       * macfns.c: #undef init_process before #define-ing it.
+ 
+       * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
+       HAVE_CARBON is defined.
+ 
+ 2002-07-31  Richard M. Stallman  <address@hidden>
+ 
+       * xmenu.c (set_frame_menubar): First parse all submenus,
+       then make widget_value trees from them.
+       Don't allocate any widget_value objects
+       until we are done with the parsing.
+       (parse_single_submenu): New function.
+       (digest_single_submenu): New function.
+       (single_submenu): Function deleted, replaced by those two.
+ 
+ 2002-07-30  Juanma Barranquero  <address@hidden>
+ 
+       * w32proc.c (syms_of_ntproc): Fix docstring of
+       `w32-get-true-file-attributes'.
+ 
+ 2002-07-28  Richard M. Stallman  <address@hidden>
+ 
+       * s/hpux8.h (HPUX8): Define this before including hpux.h.
+       (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
+ 
+       * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
+ 
+       * keyboard.c (make_lispy_event):
+       Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
+       Explicitly clear up_modifier in event->modifiers.
+ 
+ 2002-07-27  Richard M. Stallman  <address@hidden>
+ 
+       * xterm.h (FRAME_CURSOR_WIDTH): New macro.
+ 
+       * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
+       for bar cursor.
+ 
+ 2002-07-26  Kenichi Handa  <address@hidden>
+ 
+       * coding.c (detect_coding_iso2022): While checking a byte sequence
+       for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
+       it in the normal loop.
+ 
+ 2002-07-24  Gerd Moellmann  <address@hidden>
+ 
+       * xterm.c (expose_overlaps): New function.
+       (expose_window): Use it to fix the display of overlapping rows.
+ 
+       * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
+ 
+ 2002-07-23  Ken Raeburn  <address@hidden>
+ 
+       * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
+       since it only depends on XUINT.
+ 
+       * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
+       EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
+       PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
+       Macros deleted.
+ 
+       * mem-limits.h (start_of_data): If DATA_START is defined, prefer
+       its value over other approaches.
+       * sysdep.c (start_of_data): Don't define the function if a macro
+       form has been defined.
+ 
+ 2002-07-23  Gerd Moellmann  <address@hidden>
+ 
+       * xdisp.c (redisplay_updating_p): New variable.
+       (init_iterator): Don't free realized faces when
+       redisplay_updating_p is set.
+       (redisplay_internal): Set redisplay_updating_p while updating
+       the display.
+ 
+ 2002-07-23  Richard M. Stallman  <address@hidden>
+ 
+       * editfns.c (Fmessage): Treat "" like nil.
+ 
+ 2002-07-23  Kenichi Handa  <address@hidden>
+ 
+       * xdisp.c (face_before_or_after_it_pos):
+       Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
+ 
+ 2002-07-22  Juanma Barranquero  <address@hidden>
+ 
+       * callproc.c (init_callproc) [DOS_NT]:
+       Initialize Vshared_game_score_directory to nil.
+       (syms_of_callproc) [DOS_NT]: Likewise.
+ 
+ 2002-07-22  Gerd Moellmann  <address@hidden>
+ 
+       * xdisp.c (display_line): Replace an abort with xassert.
+ 
+ 2002-07-21  Richard M. Stallman  <address@hidden>
+ 
+       * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
+       and END_UNCHANGED when setting buffer_unchanged_p.
+       Use current_matrix_up_to_date_p to decide whether to use
+       try_cursor_movement.
+ 
+       * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
+ 
+       * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
+ 
+       * callproc.c (init_callproc): Set up Vshared_game_score_directory.
+       Set to nil if dir does not exist.
+       (syms_of_callproc): Init unconditionally and simply.
+ 
+       * buffer.c (Fbuffer_list): Doc fix.
+ 
+ 2002-07-21  Ken Raeburn  <address@hidden>
+ 
+       * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
+ 
+       * buffer.c (mmap_realloc): When shrinking, make sure number of
+       pages to unmap is rounded towards zero.
+ 
+       * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
+       (XSETINT): Deleted.
+ 
+       * m/att3b.h (XINT): Don't define.
+       (VALBITS, VALMASK, XTYPE): Deleted.
+       (DATA_SEG_BITS): Define.
+       * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
+       ARRAY_MARK_FLAG): Deleted.
+       (DATA_SEG_BITS): Define.
+       * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
+       (DATA_SEG_BITS): Define.
+ 
+ 2002-07-20  Richard M. Stallman  <address@hidden>
+ 
+       * print.c (print_error_message): New args CONTEXT and CALLER.
+       Calls changed.
+ 
+       * lisp.h (print_error_message): Declare new args.
+ 
+       * keyboard.c (cmd_error_internal): Pass Vsignaling_function
+       and CONTEXT to print_error_message, don't print them here.
+       For a Quit, don't use Vsignaling_function.
+       Call message_log_maybe_newline.
+ 
+       * Makefile.in (xsmfns.o): Don't depend on lisp.h.
+ 
+ 2002-07-20  Kim F. Storm  <address@hidden>
+ 
+       * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
+ 
+ 2002-07-19  Ken Raeburn  <address@hidden>
+ 
+       * bytecode.c (struct byte_stack): Pointers into byte string now
+       point to const.
+       * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
+       const.
+       * charset.h (BCOPY_SHORT): Source pointer now points to const.
+       * coding.c (encode_eol, detect_coding, detect_eol):
+       (decode_coding, encode_coding, detect_coding_system):
+       Source strings now treated as const.
+       (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
+       modify Lisp string contents.
+       * coding.h (decode_coding, encode_coding, detect_coding,
+       detect_eol): Declarations updated.
+       * composite.c (compose_chars_in_text): Treat Lisp string contents
+       as const.
+       * dispnew.c (safe_bcopy): Source pointer now points to const.
+       * lisp.h (STRING_COPYIN): New macro.
+       (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
+       (internal_with_output_to_temp_buffer): Declarations updated.
+       * print.c (temp_output_buffer_setup):
+       (internal_with_output_to_temp_buffer): Buffer name argument is now
+       pointer to const.
+       * sound.c (struct sound_device): Function pointer field "write"
+       buffer argument now points to const.
+       (vox_write): Buffer argument points to const.
+       * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
+       contents as const.
+       * sysdep.c (emacs_write): Buffer pointer now const.
+       * term.c (encode_terminal_code): Buffer pointer now const.
+       * xfaces.c (may_use_scalable_font_p): Argument now points to const.
+       (x_face_list_fonts, x_update_menu_appearance):
+       (hash_string_case_insensitive): Treat Lisp string contents as const.
+ 
+ 2002-07-19  Juanma Barranquero  <address@hidden>
+ 
+       * fileio.c (Ffile_name_as_directory): Fix argument name in docstring.
+       (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
+ 
+       * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
+ 
+       * fileio.c (syms_of_fileio): Likewise.
+ 
+ 2002-07-18  Richard M. Stallman  <address@hidden>
+ 
+       * data.c (Fdefalias): Doc fix.
+ 
+ 2002-07-17  Dave Love  <address@hidden>
+ 
+       * intervals.h (text_property_stickiness): Use P_.
+ 
+       * ccl.c: Remove `emacs' conditionals.
+       (ccl_backtrace_table): Fix size spec.
+       (ccl_driver): Fix type errors.
+ 
+ 2002-07-16  Ken Raeburn  <address@hidden>
+ 
+       * alloc.c (xstrdup, make_string, make_unibyte_string)
+       (make_multibyte_string, build_string): String pointer args now
+       point to const.
+       * charset.c (find_charset_in_text, c_string_width):
+       (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
+       * fileio.c (report_file_error):
+       * insdel.c (copy_text, count_size_as_multibyte, insert_1):
+       (count_combining_before, count_combining_after, insert_1_both):
+       (insert, insert_and_inherit, insert_string):
+       (insert_before_markers, insert_before_markers_and_inherit):
+       * lread.c (intern, oblookup, hash_string):
+       * minibuf.c (temp_echo_area_glyphs):
+       * search.c (fast_c_string_match_ignore_case):
+       * sysdep.c (emacs_open, set_file_times):
+       * xfaces.c (xstricmp):
+       * xdisp.c (store_frame_title, string_char_and_length):
+       (message_dolog, message2, message2_nolog, set_message): Likewise.
+       (set_message_1): Cast message string argument to const pointer.
+       * editfns.c (general_insert_function): Insertion function now
+       takes pointer to const for input data.
+       * charset.h (find_charset_in_text, c_string_width):
+       (parse_str_as_multibyte): Declarations updated.
+       * dispextern.h (xstricmp): Declaration updated.
+       * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
+       (count_size_as_multibyte, count_combining_before):
+       (count_combining_after, insert_1, insert_1_both, message_dolog):
+       (insert, insert_and_inherit, insert_before_markers)
+       (insert_before_markers_and_inherit, set_message, message2):
+       (message2_dolog, build_string, make_string, make_unibyte_string):
+       (make_multibyte_string, intern, oblookup, report_file_error):
+       (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
+       (emacs_open, xstrdup): Declarations updated.
+       * systime.h (set_file_times): Declaration updated.
+ 
+       * charset.c (find_charset_in_text, lisp_string_width): Use const
+       for pointer to lisp string data.
+       * charset.h (FETCH_STRING_CHAR_ADVANCE):
+       (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
+       * coding.c (Ffind_coding_systems_region_interval):
+       * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
+       (Fmake_directory_internal, Fdelete_directory):
+       (Ffile_name_absolute_p, Fwrite_region, double_dollars):
+       * fontset.c (font_family_registry, fs_query_fontset):
+       (list_fontsets):
+       * frame.c (Fframe_parameter):
+       * keyboard.c (cmd_error_internal):
+       * keymap.c (Fdescribe_buffer_bindings):
+       * lread.c (complete_filename_p, openp):
+       * minibuf.c (Fminibuffer_complete_word):
+       * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
+       (face_before_or_after_it_pos, next_element_from_string):
+       (get_overlay_arrow_glyph_row, display_mode_element):
+       (decode_mode_spec_coding):
+       * xterm.c (same_x_server): Likewise.
+ 
+       * buffer.c (reset_buffer_local_variables): Delete "#if 0"
+       settings of non-existent fields.
+ 
+       * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
+       copy a lisp value.
+ 
+       * lread.c (Fintern_soft): Use string macros instead of
+       Lisp_String fields.
+       * keyboard.c (echo_char, parse_modifiers_uncached):
+       (parse_solitary_modifier, Fexecute_extended_command): Likewise.
+       * textprop.c (validate_interval_range, interval_of): Likewise.
+ 
+       * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
+ 
+       * charset.h (FETCH_STRING_CHAR_ADVANCE)
+       (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
+       XSTRING()->size_byte.
+ 
+       * lisp.h (SDATA, SREF): Produce rvalue.
+       (SSET): New macro.
+       * alloc.c (make_event_array): Use SSET for storing into a string.
+       * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
+       a string.
+       * casefiddle.c (casify_object): Use SSET.
+       * charset.h (FETCH_STRING_CHAR_ADVANCE)
+       (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
+       address of string contents.
+       * data.c (Faref): Use SDATA.
+       (Faset): Use SDATA, SSET.
+       * dired.c (directory_files_internal): Use SSET.
+       * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
+       (Fread_file_name): Use SREF, SSET.
+       * fns.c (concat): Use SSET.
+       (concat, Fdelete): Use SDATA.
+       * insdel.c (insert_from_string_1): Use SDATA.
+       * keyboard.c (Fevent_convert_list): Use SREF.
+       * lread.c (Fload): Use SDATA, SSET.
+       * macfns.c (validate_x_resource_name): Use SSET.
+       * process.c (status_message): Use SSET.
+       * search.c (wordify): Use SDATA.
+       (Freplace_match): Use SREF.
+       * w32fns.c (validate_x_resource_name): Use SSET.
+       * xfns.c (validate_x_resource_name): Use SSET.
+       * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
+ 
+ 2002-07-16  Richard M. Stallman  <address@hidden>
+ 
+       * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
+ 
+       * xdisp.c (reconsider_clip_changes):
+       Don't test prevent_redisplay_optimizations_p.
+       (redisplay_internal): Test prevent_redisplay_optimizations_p
+       along with clip_changed in some cases.
+       (try_window_id): Likewise.
+       (redisplay_window): New local var buffer_unchanged_p.
+ 
+       * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
+ 
+       * process.c (create_process): Test USG_SUBTTY_WORKS.
+       (process_send_signal): Clean up handling of GID.
+       Detect errors in ioctls meant to set GID.
+ 
+       * window.c (temp_output_buffer_show):
+       Don't set prevent_redisplay_optimizations_p.
+ 
+ 2002-07-15  Juanma Barranquero  <address@hidden>
+ 
+       * eval.c (Fdefvaralias): Add docstring argument.
+ 
+ 2002-07-15  Ken Raeburn  <address@hidden>
+ 
+       * lisp.h (STRING_INTERVALS): Produce rvalue.
+       (STRING_SET_INTERVALS): New macro.
+       * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
+       * fns.c (Fstring_as_multibyte): Likewise.
+       * intervals.c (balance_possible_root_interval, delete_interval)
+       (create_root_interval, copy_intervals_to_string): Likewise.
+       * textprop.c (set_text_properties): Likewise.  Use NULL_INTERVAL
+       instead of 0.
+ 
+ 2002-07-14  Ken Raeburn  <address@hidden>
+ 
+       * lisp.h (STRING_SET_CHARS): New macro.
+       (SCHARS, SBYTES): Produce rvalues.
+       * dired.c (directory_files_internal): Use STRING_SET_CHARS.
+       * fns.c (concat): Likewise.
+       * lread.c (read_vector): Likewise.
+ 
+       * lisp.h (SMBP): Deleted.  All uses changed to STRING_MULTIBYTE.
+       (STRING_SET_UNIBYTE): New macro.
+       (SET_STRING_BYTES): Deleted.  Callers (all of which supplied a
+       length of -1) changed to use STRING_SET_UNIBYTE.
+       * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
+       casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
+       composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
+       dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
+       fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
+       keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
+       minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
+       sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
+       w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
+       w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
+       xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
+       STRING_BYTES or indirection changed to SCHARS, SBYTES,
+       STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
+       unchanged for now.
+ 
+ 2002-07-13  Kim F. Storm  <address@hidden>
+ 
+       * keyboard.c (command_loop_1): Invert check on Vmemory_full.
+ 
+ 2002-07-12  Richard M. Stallman  <address@hidden>
+ 
+       * fileio.c (Fwrite_region): Doc fix.
+ 
+       * print.c (print_error_message): Don't handle Vsignaling_function here.
+ 
+       * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
+       (command_loop_1): Avoid certain actions after memory-full error.
+ 
+       * eval.c (Fsignal): Don't call cancel_hourglass.
+       For a memory-full error, don't call Vsignal_hook_function
+       and don't set Vsignaling_function.
+ 
+       * process.c (process_send_signal): Add abort call.
+ 
+ 2002-07-11  Markus Rost  <address@hidden>
+ 
+       * keymap.c (Fkey_binding): Fix typo.
+ 
+ 2002-07-11  Richard M. Stallman  <address@hidden>
+ 
+       * alloc.c (Vmemory_full): New variable.
+       (Vmemory_signal_data): Renamed from memory_signal_data.
+       Uses changed.
+       (syms_of_alloc): Defvar them.
+       (memory_full, buffer_memory_full): Set Vmemory_full.
+ 
+       * lisp.h (Vmemory_full): Add declaration.
+       (current_column, indented_beyond_p): Change declaration.
+ 
+       * indent.c (last_known_column): Declare as double, not float.
+       (current_column, current_column_1, string_display_width)
+       (position_indentation): Return `double'.
+       (indented_beyond_p): Arg `column' is `double'.  Callers changed.
+ 
+       * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
+       (back_to_previous_visible_line_start)
+       (reseat_at_next_visible_line_start, next_element_from_buffer):
+       Use `double', not `float', when calling indented_beyond_p.
+ 
+       * s/hpux11.h (BROKEN_SA_RESTART): Defined.
+ 
+       * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
+ 
+ 2002-07-11  Juanma Barranquero  <address@hidden>
+ 
+       * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
+       * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
+       * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
+       * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
+       * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
+       * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
+ 
+ 2002-07-10  Juanma Barranquero  <address@hidden>
+ 
+       * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. All callers
+       changed.
+ 
+ 2002-07-09  Stefan Monnier  <address@hidden>
+ 
+       * data.c (Fdefalias): Add an optional `docstring' argument.
+       (set_internal, Fsetq_default): Use XCAR/XCDR.
+ 
+       * composite.c (HASH_VALUE, HASH_KEY):
+       * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
+ 
+ 2002-07-09  Kenichi Handa  <address@hidden>
+ 
+       * callproc.c (Fcall_process): Fix previous change.
+ 
+ 2002-07-07  Stefan Monnier  <address@hidden>
+ 
+       * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
+       Add support for hash-tables.
+       (Ftry_completion): Return t even if the string appears multiple times.
+ 
+       * fns.c (Fnconc): Use XCDR.
+       (Fprovide): Use CONSP and XCDR.
+       (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
+       (HASH_TABLE_SIZE): Delete: moved to lisp.h.
+       (Fmake_hash_table): Accept `:size nil'.
+       (Fmakehash): Delete: moved to subr.el.
+       (syms_of_fns): Don't defsubr makehash.
+ 
+       * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
+       (HASH_TABLE_SIZE): Move from fns.c.
+ 
+ 2002-07-07  Richard M. Stallman  <address@hidden>
+ 
+       * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
+       Instead just return 0 when there is something to be done.
+       (try_scrolling): If make_cursor_line_fully_visible returns 0,
+       retry scrolling as if cursor were off the bottom.
+       (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
+       return CURSOR_MOVEMENT_MUST_SCROLL.
+       (redisplay_window): If make_cursor_line_fully_visible returns 0,
+       go to try_to_scroll.
+ 
+       * buffer.c (Fbuffer_local_value): Store current value into its binding
+       so we get the up-to-date value for the binding that is loaded.
+ 
+       * eval.c (Fdefmacro): Doc fix.
+ 
+ 2002-07-05  Dave Love  <address@hidden>
+ 
+       * keyboard.c (read_key_sequence): Set initial_idleness_start_time
+       correctly.
+ 
+       * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
+       (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
+       (ccl_driver): Add cases for CCL_LookupIntConstTbl,
+       CCL_LookupCharConstTbl.
+       (syms_of_ccl): Defvar translation-hash-table-vector.
+ 
+ 2002-07-05  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * xdisp.c: Remove unused variable `face'.
+ 
+ 2002-07-04  Juanma Barranquero  <address@hidden>
+ 
+       * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
+       obsolescence information.
+ 
+ 2002-07-03  Andrew Choi  <address@hidden>
+ 
+       * macterm.c (x_list_fonts): Fix comment.  Cache fonts matching
+       pattern.  Search cache first.
+       (init_font_name_table): Also add entry for jisx0201.1976-0 coding
+       for Japanese font.
+       (XLoadQueryFont): Use it.
+ 
+ 2002-07-02  Richard M. Stallman  <address@hidden>
+ 
+       * keymap.c (Fdefine_key): Doc fix.
+ 
+       * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
+ 
+ 2002-07-02  Juanma Barranquero  <address@hidden>
+ 
+       * keymap.c (syms_of_keymap): Fix typo.
+ 
+ 2002-07-01  Andrew Choi  <address@hidden>
+ 
+       * s/darwin.h: Define POSIX_SIGNALS.
+ 
+       * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
+       and FSRefMakePath to convert FSSpec returned with Apple Event to
+       Posix pathname.
+       (mac_initialize) [TARGET_API_MAC_CARBON]:
+       Call init_required_apple_events and disable the `Quit' menu item
+       provided automatically by the Carbon Toolbox.
+ 
+ 2002-07-01  Dave Love  <address@hidden>
+ 
+       * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
+       for K&R.
+ 
+       * xterm.c: Fix prototype for K&R.
+ 
+       * term.c (costs_set): Declare static, non-initialized for pcc.
+ 
+ 2002-07-01  Richard M. Stallman  <address@hidden>
+ 
+       * keyboard.c (timer_last_idleness_start_time): New variable.
+       (timer_start_idle): Set that.
+       (read_key_sequence): Use that to reset timer_idleness_start_time
+       to previous value.
+ 
+       * window.c (Frecenter): With arg, set optional_new_start.
+ 
+       * xdisp.c (redisplay_internal): Make optional_new_start really work.
+ 
+       * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
+       buffer for completion.
+ 
+ 2002-06-29  Ken Raeburn  <address@hidden>
+ 
+       * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
+ 
+ 2002-06-28  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * keyboard.c (readable_filtered_events): New function that filters
+       FOCUS_IN_EVENT depending on parameter.
+       (readable_events): Calls readable_filtered_events, not filtering
+       FOCUS_IN_EVENT.
+       (get_filtered_input_pending): New function, filtering parameter passed
+       to readable_filtered_events.
+       (get_input_pending): Calls get_filtered_input_pending, not filtering
+       FOCUS_IN_EVENT.
+       (Finput_pending_p): Calls get_filtered_input_pending, DO filter
+       FOCUS_IN_EVENT.
+ 
+       * xterm.h (struct x_output): Add focus_state.
+ 
+       * xterm.c (x_focus_changed): New function.
+       (x_detect_focus_change): New function.
+       (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
+       EnterNotify and LeaveNotify to track X focus changes.
+ 
+ 2002-06-28  Andreas Schwab  <address@hidden>
+ 
+       * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
+ 
+ 2002-06-27  Kim F. Storm  <address@hidden>
+ 
+       * xdisp.c: (mode_line_string_list, mode_line_string_face)
+       (mode_line_string_face_prop): New variables.
+       (store_mode_line_string): New function.
+       (display_mode_element): Use store_mode_line_string to
+       add mode-line string elements to mode_line_string_list
+       when mode_line_string_list is non-nil.
+       (Fformat_mode_line): Now returns propertized string by
+       default.  New arg NO-PROPS to ignore properties.
+       (decode_mode_spec): Only add two dashes for %- in propertized
+       mode-line string.
+       (syms_of_xdisp): Init and staticpro mode_line_string_list.
+ 
+ 2002-06-27  Stefan Monnier  <address@hidden>
+ 
+       * minibuf.c (minibuffer_completion_contents): Add return type.
+ 
+ 2002-06-27  Juanma Barranquero  <address@hidden>
+ 
+       * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
+ 
+ 2002-06-26  Juanma Barranquero  <address@hidden>
+ 
+       * fileio.c (read_file_name_cleanup): Add missing return.
+ 
+ 2002-06-26  Richard M. Stallman  <address@hidden>
+ 
+       * window.c (Frecenter): Don't set force_start flag.
+ 
+       * minibuf.c (do_completion, Fminibuffer_complete_word)
+       (Fminibuffer_completion_help): Complete just the text before point.
+       (minibuffer_completion_contents): New function.
+ 
+       * buffer.c (Fbury_buffer): Use frames_discard_buffer.
+ 
+       * frame.c (frames_bury_buffer): Function deleted.
+ 
+ 2002-06-25  Miles Bader  <address@hidden>
+ 
+       * callint.c (Fcall_interactively): When checking to see if doprnt hit
+       the end of callint_message, allow for a terminating '\0'.
+ 
+ 2002-06-24  Juanma Barranquero  <address@hidden>
+ 
+       * w32select.c: Include composite.h
+ 
+       * w16select.c: Likewise.
+ 
+ 2002-06-24  Kenichi Handa  <address@hidden>
+ 
+       * callproc.c (Fcall_process): If code detection is necessary,
+       call detect_coding directly here.
+ 
+       * coding.c (detect_eol): Preserve coding->cmp_data.
+ 
+       * w16select.c (Fw16_get_clipboard_data):
+       * w32fns.c (w32_to_x_font):
+       * w32select.c (Fw32_get_clipboard_data):
+       * xselect.c (selection_data_to_lisp_data):
+       * xterm.c (XTread_socket): Disable composition handling.
+ 
+ 2002-06-24  Stefan Monnier  <address@hidden>
+ 
+       * print.c (temp_output_buffer_setup): Kill all local variables.
+ 
+ 2002-06-22  Stefan Monnier  <address@hidden>
+ 
+       * lread.c (Fread): Remove redundant and imprecise declaration.
+ 
+       * xfns.c (check_x_display_info): Use check_x_frame.
+ 
+       * .gdbinit (xprintsym): Use the new `xname' field.
+       (xsymbol): Use it.
+ 
+ 2002-06-22  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (file_dialog_callback): New function.
+       (Fx_file_dialog): Allow selecting directories as well as files.
+ 
+ 2002-06-21  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
+       OpenBSD. Add support for mipseb-*-netbsd* machines.
+ 
+ 2002-06-17  Andrew Choi  <address@hidden>
+ 
+       * macterm.c (mac_scroll_area): Set foreground and backcolor to
+       black and white before scrolling.  Restore frame background and
+       foreground color after scrolling.
+       (do_window_update): Call XClearWindow before calling expose_frame.
+       (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
+       FRAME_FOREGROUND_PIXEL of frame.
+ 
+       * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
+       test Mac command key as <ALT> key.
+ 
+ 2002-06-17  Stefan Monnier  <address@hidden>
+ 
+       * window.c (Fset_window_configuration): Lisp_Object/int mixup.
+ 
+       * keyboard.c (read_key_sequence): Be more careful with first_unbound.
+       Lookup keys in function-key-map immediately so that key-translation-map
+       can be applied earlier.
+       Remove function_key_possible and key_translation_possible, replaced
+       by checking `keytran_start < t'.
+ 
+       * .gdbinit (xsymbol): Use the new `xname' field.
+ 
+ 2002-06-17  Andrew Choi  <address@hidden>
+ 
+       * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
+       test Mac command key as <ALT> key.
+ 
+       * mac.c (do_applescript): Call initialize_applescript if necessary
+       when first called.  Dispose of result_desc only when there is no error.
+       (Fdo_applescript): Use %d format specifier instead of %ld.
+ 
+ 2002-06-16  Andrew Choi  <address@hidden>
+ 
+       * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
+       of FrontWindow for cases keyDown and autoKey.
+ 
+       * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
+       Vdefault_fontset to Monaco with mac-roman coding.
+ 
+       * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
+       init_process before and after inclusion of Carbon/Carbon.h, resp.
+ 
+       * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
+       cursor_gc.
+       (add_font_name_table_entry): New function.
+       (init_font_name_table): Use add_font_name_table_entry; add italic,
+       bold, and bold-italic entries for truetype fonts.
+ 
+       * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
+       for Mac too.
+       (try_font_list) [MAC_OS]: If no font matches given registry, try
+       fonts with any registry matching face_family.
+       (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
+ 
+       * s/darwin.h: If autoconf detects the Ncurses library, define
+       LIBS_TERMCAP to -lncurses to use it.
+ 
+ 2002-06-16  Eli Zaretskii  <address@hidden>
+ 
+       * strftime.c [__hpux]: Include sys/_mbstate_t.h.
+ 
+ 2002-06-15  Richard M. Stallman  <address@hidden>
+ 
+       * window.c (Fset_window_configuration): Explicitly preserve
+       the point value that new_current_buffer had at the start.
+ 
+ 2002-06-14  Juanma Barranquero  <address@hidden>
+ 
+       * composite.c (Fcompose_region_internal, Fcompose_string_internal):
+       Fix typos.
+ 
+ 2002-06-14  Kim F. Storm  <address@hidden>
+ 
+       * insdel.c (insert_1_both, insert_from_string_1)
+       (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
+       insert happened in the end_unchanged region.  Otherwise, the
+       redisplay may be confused and duplicate the last line in the
+       buffer [seen after save-buffer when require-final-newline==t].
+ 
+ 2002-06-13  Jason Rumney  <address@hidden>
+ 
+       * w32.c (init_environment): Remove EMACSLOCKDIR.
+       (stat): Swap _S_IFDIR and _S_IFREG.
+ 
+ 2002-06-13  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
+       * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
+       * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
+       ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
+       to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
+       NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
+       to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
+       language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
+       to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
+       W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
+       SELECTION_REQUEST_EVENT, selection_clear_event to
+       SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
+       delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
+       ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
+       menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
+       DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
+       no_event to NO_EVENT.
+ 
+ 2002-06-12  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
+ 
+ 2002-06-12  Stefan Monnier  <address@hidden>
+ 
+       * intervals.c (textget): Don't forget to `return'.
+       (lookup_char_property): Use XCAR/XCDR.
+ 
+ 2002-06-12  Juanma Barranquero  <address@hidden>
+ 
+       * xdisp.c (Fformat_mode_line): Fix typo.
+ 
+ 2002-06-12  Kim F. Storm  <address@hidden>
+ 
+       * xdisp.c (Fformat_mode_line): New function.
+       (frame_title_buf, frame_title_buf_end, frame_title_ptr)
+       (store_frame_title_char, store_frame_title): Use unconditionally.
+       (init_xdisp): Defsubr Fformat_mode_line.
+       Initialize frame_title_buf etc. unconditionally.
+ 
+ 2002-06-11  Stefan Monnier  <address@hidden>
+ 
+       * keyboard.c (read_key_sequence):
+       Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
+       things through those maps after downcasing events.
+       Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
+       applies after function-key-map.
+       Make sure that keytran can be done in the middle in the sequence.
+       Be careful not to throw away events past the one we downcase.
+ 
+       * lread.c (read_integer): Remove unused var `tem'.
+       (read1): Fix int/Lisp_Object mixup.
+ 
+       * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
+ 
+ 2002-06-11  Richard M. Stallman  <address@hidden>
+ 
+       * keyboard.c (readable_events): Ignore any number of
+       FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
+ 
+ 2002-06-09  Miles Bader  <address@hidden>
+ 
+       * xfaces.c (Ftty_supports_face_attributes_p): New function.
+       (parse_rgb_list, tty_lookup_color): New functions.
+       (tty_defined_color): Use `tty_lookup_color' to do all the work.
+       (color_distance, Fcolor_distance): New functions.
+       (TTY_SAME_COLOR_THRESHOLD): New macro.
+       (Qtty_color_standard_values): New variable.
+       (syms_of_xfaces): Initialize new vars & functions.
+ 
+ 2002-06-08  Colin Walters  <address@hidden>
+ 
+       * textprop.c (Vchar_property_alias_alist): New variable.
+       (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
+ 
+       * intervals.c (lookup_char_property): New function for looking up
+       overlay and text properties, created from textget.
+       (textget): Use it.
+ 
+       * intervals.h (lookup_char_property): Declare.
+       (Vchar_property_alias_alist): Declare.
+ 
+       * buffer.c (Foverlay_get): Use lookup_char_property.
+ 
+ 2002-06-07  Sam Steingold  <address@hidden>
+ 
+       * xselect.c (lisp_data_to_selection_data): Fix last change:
+       *data_ret is not a Lisp string, while unibyte_string is.
+ 
+ 2002-06-07  Eli Zaretskii  <address@hidden>
+ 
+       * xselect.c (lisp_data_to_selection_data): Fix last change:
+       set size_ret.
+ 
+ 2002-06-07  Andreas Schwab  <address@hidden>
+ 
+       * m/amdx86-64.h: New file.
+ 
+ 2002-06-05  Eli Zaretskii  <address@hidden>
+ 
+       * fns.c (Fstring_make_unibyte): Doc fix.
+ 
+       * xselect.c (lisp_data_to_selection_data): If the requested type
+        is STRING, call string_make_unibyte to encode the selected text
+        as a string.
+ 
+       * window.c (Fset_window_hscroll): Doc fix.
+ 
+ 2002-06-05  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * fileio.c (choose_write_coding_system):
+       Call select-safe-coding-system properly.
+ 
+ 2002-06-03  Richard M. Stallman  <address@hidden>
+ 
+       * xdisp.c (message_with_string): Error if STRING is not a string.
+ 
+       * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
+ 
+       * fileio.c (choose_write_coding_system): Pass FILE arg to
+       Vselect_safe_coding_system_function.
+ 
+ 2002-06-03  Ken Raeburn  <address@hidden>
+ 
+       * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
+ 
+ 2002-06-02  Thien-Thi Nguyen  <address@hidden>
+ 
+       * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
+       * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
+       * keymap.c (describe_command): Likewise.
+       * minibuf.c (read_minibuf): Likewise.
+ 
+       * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
+       Cast `current_column' return value to int.
+       (back_to_previous_visible_line_start)
+       (reseat_at_next_visible_line_start, next_element_from_buffer):
+       Cast `indented_beyond_p' 3rd arg to float.
+ 
+       * indent.c (last_known_column): Now a float.
+       (current_column_1, position_indentation, current_column)
+       (string_display_width): Return float.
+       (Fcurrent_column): Cast `current_column' return value to int.
+       (Fcurrent_indentation): Cast `position_indentation' retval to int.
+       (indented_beyond_p): Third arg now a float.
+       (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
+ 
+       * lisp.h (current_column): Now returns float.
+       (indented_beyond_p): 3rd arg now a float.
+ 
+ 2002-05-31  Eli Zaretskii  <address@hidden>
+ 
+       * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
+       is Qcompound_text_with_extensions.
+ 
+       * xselect.c (lisp_data_to_selection_data): Always set selection
+       type as string if x_encode_text returns streingp non-NULL.
+ 
+       * s/netbsd.h: Include /usr/pkg in the run time shared library path.
+ 
+ 2002-05-30  Richard M. Stallman  <address@hidden>
+ 
+       * window.c (Fset_window_configuration): Correct the handling
+       of point in current buffer, to work with multiple windows.
+ 
+ 2002-05-29  Colin Walters  <address@hidden>
+ 
+       * lread.c (Fread_from_string): Don't depend on order of evaluation
+       for C function parameters.
+ 
+ 2002-05-28  Richard M. Stallman  <address@hidden>
+ 
+       * xterm.c (x_display_and_set_cursor): Change the cursor in the same
+       way for blinked-off state and for a nonselected window.
+ 
+       * window.c (window_scroll_pixel_based): Don't call Fbolp;
+       instead, see if the new start pos is at beginning of line.
+ 
+       * fileio.c (Fwrite_region): If START is a string, don't
+       make any annotations.
+ 
+       * eval.c (syms_of_eval): Doc fix.
+ 
+ 2002-05-28  Colin Walters  <address@hidden>
+ 
+       * emacs.c (USAGE1): Add --no-splash.
+       (standard_args): Ditto.
+ 
+ 2002-05-28  Colin Walters  <address@hidden>
+ 
+       * lread.c (readchar_count): New variable.
+       (readchar): Increment it.
+       (unreadchar): Decrement it.
+       (read_multibyte): Decrement it.
+       (Vread_with_symbol_positions): New variable.
+       (Vread_symbol_positions_list): New variable.
+       (read_internal_start): New function, created from Fread and
+       Fread_from_string.  Handle Vread_symbol_positions_list and
+       Vread_with_symbol_positions.
+       (readevalloop, Fread, Fread_from_string): Use it.
+       (read1): Use readchar_count to add symbol positions to
+       Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
+       (syms_of_lread): DEFVAR_LISP and initialize them.
+ 
+       * lread.c (read0, read1, read_list, read_vector, read_multibyte)
+       (substitute_object_recurse, substitute_object_in_subtree)
+       (substitute_in_interval): Prototype.
+       (read_multibyte): Return c if it's less than zero.
+ 
+ 2002-05-28  Kim F. Storm  <address@hidden>
+ 
+       * fileio.c (Fread_file_name_internal): Added brute-force
+       speed up for using predicate file-directory-p.
+ 
+ 2002-05-28  Kim F. Storm  <address@hidden>
+ 
+       * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
+       New variables.
+       (syms_of_fileio): DEFVAR_LISP them.
+       (read_file_name_cleanup): New unwind function.
+       (Fread_file_name_internal): Only return completions satifying
+       Vread_file_name_predicate.  Temporarily unwind protect and rebind
+       default-directory while checking completions against the predicate.
+       (Fread_file_name): Added PREDICATE argument.  Specbind it to
+       Vread_file_name_predicate during completion.
+       Call Vread_file_name_function to read the file name if non-nil.
+ 
+       * lisp.h (Fread_file_name): Now has 6 args.
+ 
+       * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
+       predicate for Fread_file_name when reading directory name.
+       Supply Qnil for predicate in other calls to Fread_file_name.
+ 
+ 2002-05-26  Miles Bader  <address@hidden>
+ 
+       * term.c (tty_capable_p): New function.
+       * dispextern.h (tty_capable_p): New function declaration.
+       (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
+       (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
+ 
+ 2002-05-23  Stefan Monnier  <address@hidden>
+ 
+       * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
+       (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
+       (Vwrite_region_annotate_functions): Docstring fix.
+ 
+ 2002-05-23  Kim F. Storm  <address@hidden>
+ 
+       * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
+       phys_cursor's hpos is overwritten.  This is still not completely
+       correct, as it doesn't really make sense to use hpos at all to
+       get the cursor glyph (as that is relative to the width of the
+       characters on the line, which may have changed during the update).
+ 
+ 2002-05-22  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (enumfont_t): Remove tail, make pattern a normal
+       Lisp_Object.
+       (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
+       Use modified enumfont_t struct.
+ 
+       * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
+ 
+       * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
+       Handle the `hbar' cursor type.
+       (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
+ 
+       * w32fns.c (Qhbar): New variable.
+       (x_specified_cursor_type): Use it.
+ 
+ 2002-05-21  Ken Raeburn  <address@hidden>
+ 
+       * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
+       now, when the address is needed.
+ 
+ 2002-05-21  Colin Walters  <address@hidden>
+ 
+       * Makefile.in (shortlisp): Add font-core.el.
+ 
+ 2002-05-20  Richard M. Stallman  <address@hidden>
+ 
+       * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
+ 
+       * keyboard.c (read_char_minibuf_menu_prompt): Don't list
+       equivalent key bindings here.
+ 
+ 2002-05-20  Ken Raeburn  <address@hidden>
+ 
+       Change symbol structure to contain a lisp object for the symbol
+       name:
+       * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
+       object field named "xname".
+       (SYMBOL_NAME): New macro.
+       * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
+       name field.
+       * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
+       (mark_object, gc_sweep): Use symbol xname field and XSTRING
+       instead of name field.
+       * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
+       SYMBOL_NAME instead of XSYMBOL and name field.
+       * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
+       instead of XSYMBOL and name field.
+       * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
+       and SYMBOL_NAME instead of XSYMBOL and name field.
+       * coding.c (Fread_coding_system, code_convert_region1)
+       (code_convert_string1, code_convert_string_norecord)
+       (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
+       XSYMBOL and name field.
+       * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
+       (Fmake_variable_buffer_local, Fmake_local_variable)
+       (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
+       of XSYMBOL and name field.
+       * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
+       XSYMBOL and name field.
+       * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
+       instead of XSYMBOL and name field.
+       * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
+       XSYMBOL and name field.
+       * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
+       Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
+       * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
+       instead of XSYMBOL and name field.
+       * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
+       (parse_modifiers, apply_modifiers, Fevent_convert_list)
+       (parse_solitary_modifier, Fexecute_extended_command):
+       Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
+       * keymap.c (silly_event_symbol_error, Fsingle_key_description)
+       (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
+       of XSYMBOL and name field.
+       (describe_command, describe_translation): Use SYMBOL_NAME and
+       assignment instead of XSYMBOL and name field and XSETSTRING.
+       * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
+       instead of XSYMBOL and name field.
+       (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
+       name field and XSETSTRING.
+       * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
+       of XSYMBOL and name field.
+       * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
+       assignment instead of XSYMBOL and name field and XSETSTRING.
+       * print.c (print_error_message, print_object): Use SYMBOL_NAME and
+       XSTRING instead of XSYMBOL and name field.
+       * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
+       and XSTRING instead of XSYMBOL and name field.
+       * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
+       and XSTRING instead of XSYMBOL and name field.
+       * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
+       XSTRING instead of XSYMBOL and name field.
+       * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
+       of XSYMBOL and name field.
+       * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
+       Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
+ 
+ 2002-05-19  Ken Raeburn  <address@hidden>
+ 
+       * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
+       and XCDR real rvalues in most configurations.
+ 
+       * buffer.c (fix_overlays_in_range, fix_overlays_before):
+       Don't take the address of the cdr part of a cons cell; instead, track
+       the parent cell and call XSETCDR, or set the variable for the head
+       of the list if we haven't started down the list yet.
+ 
+ 2002-05-19  Richard M. Stallman  <address@hidden>
+ 
+       * doc.c (reread_doc_file): Don't ask for confirmation.
+ 
+ 2002-05-18  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
+       (xbm_load_image): Use it.
+       (xbm_load): Ditto.
+       (xbm_read_bitmap_data): Reverted to xfns.c version.
+       From David Ponce <address@hidden>.
+ 
+ 2002-05-17  Eli Zaretskii  <address@hidden>
+ 
+       * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
+       2.02 and later.
+ 
+ 2002-05-16  Juanma Barranquero  <address@hidden>
+ 
+       * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
+ 
+ 2002-05-15  Stefan Monnier  <address@hidden>
+ 
+       * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
+       meaningful test.
+       (read_char_minibuf_menu_prompt): Fix typo.
+ 
+ 2002-05-15  Eli Zaretskii  <address@hidden>
+ 
+       * eval.c (Fcommandp): Doc fix.
+ 
+ 2002-05-13  Stefan Monnier  <address@hidden>
+ 
+       * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
+       (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
+       (Fset_keymap_parent): Gcpro a bit more.
+       (access_keymap): Gcpro around meta_map call and around the main loop.
+       (get_keyelt): Gcpro when following indirect references.
+       (copy_keymap_item): New fun, extracted from Fcopy_keymap.
+       (copy_keymap_1, Fcopy_keymap): Use it.  Don't copy the parent map.
+       (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
+       Remove useless ad-hoc remap code.
+ 
+ 2002-05-13  Richard M. Stallman  <address@hidden>
+ 
+       * search.c (search_buffer): Give up boyer moore search if inverse
+       translation change charset_base.
+ 
+ 2002-05-12  Eli Zaretskii  <address@hidden>
+ 
+       * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
+       characters is carried over from the previous block of text, adjust
+       coding->produced to account for the extra character.
+ 
+ 2002-05-11  Andreas Schwab  <address@hidden>
+ 
+       * coding.c (intersection): Keep the elements of the returned list
+       in the same order as in the first list.
+ 
+ 2002-05-11  Kim F. Storm  <address@hidden>
+ 
+       * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
+       only update cmm_size if realloc actually succeeds.
+       Testing with initial size of 2 elements revealed that using
+       realloc on GNU/Linux would cause a random trap in xmalloc
+       later on, so I rewrote the code to use malloc/bcopy/free instead
+       of realloc.
+ 
+ 2002-05-10  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
+ 
+ 2002-05-10  Eli Zaretskii  <address@hidden>
+ 
+       * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
+       parens, to ensure correct evaluation order.
+ 
+ 2002-05-10  Kim F. Storm  <address@hidden>
+ 
+       * keymap.c (Vemulation_mode_map_alists): New variable.
+       (syms_of_keymap): DEFVAR_LISP it.
+       (current_minor_maps): Process keymap alists in that list before
+       minor-mode-overriding-map-alist and minor-mode-map-alist.
+ 
+ 2002-05-09  Richard M. Stallman  <address@hidden>
+ 
+       * search.c (Freplace_match): Doc fix.
+ 
+ 2002-05-09  Kim F. Storm  <address@hidden>
+ 
+       * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
+       Enlarge cursor rectangle drawn around image with non-zero relief.
+ 
+       * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
+       Enlarge cursor rectangle drawn around image with non-zero relief.
+ 
+       * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
+       Enlarge cursor rectangle drawn around image with non-zero relief.
+ 
+ 2002-05-07  Eli Zaretskii  <address@hidden>
+ 
+       * xselect.c (lisp_data_to_selection_data): Don't set selection
+       type if comes from the Lisp object's car.  If the selection
+       contains a pure ASCII text, always return QSTRING as its type.
+ 
+ 2002-05-06  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * mac.c (mac-cut-function): Doc fix.
+ 
+ 2002-05-05  Richard M. Stallman  <address@hidden>
+ 
+       * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
+ 
+ 2002-05-04  Jason Rumney  <address@hidden>
+ 
+       * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
+       for event-click-count.
+ 
+       * process.c (init_process): Only add server subfeature if we can
+       use non-blocking I/O.
+ 
+ 2002-05-04  Andrew Choi  <address@hidden>
+ 
+       * macterm.c (XTread_socket): Call WaitNextEvent once instead of
+       repeatedly.
+ 
+ 2002-05-03  Jason Rumney  <address@hidden>
+ 
+       * process.c (Fmake_network_process): Only support server sockets
+       when we can make them non-blocking.
+ 
+       * s/ms-w32.h (HAVE_SELECT): Define.
+ 
+       * w32.h (FILE_NDELAY): New flag.
+ 
+       * w32.c (sys_getpeername, fcntl): New functions.
+       (_sys_read_ahead): Temporarily block on non-blocking sockets.
+ 
+       * w32proc.c: include sys/file.h.
+ 
+ 2002-05-03  Colin Walters  <address@hidden>
+ 
+       * callproc.c (Vgame_score_directory): Renamed to
+       Vshared_game_score_directory.
+ 
+ 2002-04-30  Richard M. Stallman  <address@hidden>
+ 
+       * s/gnu.h [emacs]: Include stdio.h.
+       (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
+ 
+       * eval.c (do_autoload): Error if called while preparing to dump.
+ 
+       * fns.c (Frequire): Error if need to load while preparing to dump.
+ 
+ 2002-04-28  Colin Walters  <address@hidden>
+ 
+       * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
+       Default to "~/.emacs.d/games".
+ 
+ 2002-04-29  Stefan Monnier  <address@hidden>
+ 
+       * lread.c (openp): Change arg exec_only to predicate.
+       (build_load_history): Use XCAR/XCDR.
+       (Flocate_file_internal): New fun.
+       (syms_of_lread): Defsubr it.
+       (Fload): Update call to openp.
+ 
+       * lisp.h (openp): Update prototype.
+ 
+       * xfns.c (x_create_bitmap_from_file, x_find_image_file):
+       * w32proc.c (sys_spawnve):
+       * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
+       * w32.c (check_windows_init_file):
+       * sound.c (Fplay_sound_internal):
+       * process.c (Fstart_process):
+       * macfns.c (x_create_bitmap_from_file, x_find_image_file):
+       * mac.c (run_mac_command):
+       * emacs.c (init_cmdargs):
+       * callproc.c (Fcall_process): Update call to openp.
+ 
+       * textprop.c (remove_properties): Don't use XCAR without CONSP.
+ 
+       * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
+ 
+ 2002-04-29  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
+       (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
+ 
+ 2002-04-28  Richard M. Stallman  <address@hidden>
+ 
+       * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
+ 
+       * eval.c (Fcommandp): New arg for_call_interactively.
+       * lisp.h (Fcommandp): Declare new arg.
+ 
+ 2002-04-28  Jason Rumney  <address@hidden>
+ 
+       * w32proc.c (syms_of_w32proc): Get true file attributes by default.
+ 
+       * w32.c (stat, fstat): Use file index information to generate
+       inodes for directories where available.
+ 
+ 2002-04-26  Andrew Choi  <address@hidden>
+ 
+       * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
+       [HAVE_CARBON]: Include Mac object files.
+ 
+       * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
+       fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
+       termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
+       MAC_OSX, and MAC_OS instead of macintosh.
+ 
+       * editfns.c [MAC_OS8]: Include stdio.h.
+ 
+       * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
+ 
+       * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
+       Apple Monaco.
+ 
+       * process.c: Declare QCfamily and QCfilter as extern.
+       (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
+       calling select.
+ 
+       * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
+ 
+       * tparam.c [MAC_OSX]: Don't define BC and UP.
+ 
+       * config.in [HAVE_CARBON]: Add.
+ 
+       * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
+       Move here from mac/src and mac/inc.
+ 
+       * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
+ 
+ 2002-04-26  Gerd Moellmann  <address@hidden>
+ 
+       * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
+       Compute phys_cursor_width from the x position returned
+       by x_draw_glyhs, which is cheaper.
+       (x_display_and_set_cursor): Compute the buffer-local value
+       of `cursor-in-non-selected-windows' only when needed.
+ 
+ 2002-04-25  Gerd Moellmann  <address@hidden>
+ 
+       * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
+       cursor on a stretch glyph has a width that depends on
+       x_stretch_cursor_p.
+ 
+ 2002-04-25  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * abbrev.c (abbrev-start-location): Doc fix.
+ 
+       * indent.c (Fvertical_motion): Fix last change.
+ 
+ 2002-04-25  Gerd Moellmann  <address@hidden>
+ 
+       * indent.c (Fvertical_motion): Move to the start of the line
+       containing PT before moving up or down.
+ 
+ 2002-04-24  Gerd Moellmann  <address@hidden>
+ 
+       * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
+       case of writing a whole row, more or less analogous to the case of
+       writing only parts of a row.
+ 
+       * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
+       0 for NO_CURSOR.
+ 
+       * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
+ 
+ 2002-04-23  Colin Walters  <address@hidden>
+ 
+       * buffer.c (syms_of_buffer): Doc fix.
+ 
+ 2002-04-23  Gerd Moellmann  <address@hidden>
+ 
+       * xterm.c (notice_overwritten_cursor): Handle the special case
+       of the cursor being in the first blank non-text line at the
+       end of a window.
+ 
+       * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
+       (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
+       (x_display_and_set_cursor): Don't set phys_cursor_width here, for
+       bar cursors only, to make phys_cursor_width contain what its name
+       suggests.
+       (notice_overwritten_cursor): Consider the cursor image erased if
+       the output area intersects the cursor image in y-direction.
+ 
+ 2002-04-23  Simon Marshall  <address@hidden>
+ 
+       * xfns.c (x_set_mouse_color): Change default for cross_cursor
+       to XC_hand2.
+ 
+ 2002-04-23  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
+ 
+ 2002-04-22  Kim F. Storm  <address@hidden>
+ 
+       * textprop.c (remove_properties): Fixed trap for malformed plist.
+ 
+ 2002-04-22  Richard M. Stallman  <address@hidden>
+ 
+       * cmds.c (Fend_of_line): Handle intangible text in mid line.
+ 
+       * window.c (make_window): Initialize height_fixed_p,
+       last_cursor_off_p, and p->cursor_off_p slots.
+ 
+ 2002-04-20  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * fns.c (use-dialog-box): Doc fix.
+ 
+ 2002-04-19  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * xterm.c (note_mode_line_or_margin_highlight): Remove unused
+       variables `row', `i' and `area'.
+       (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
+       toolkit library.
+ 
+ 2002-04-19  Stefan Monnier  <address@hidden>
+ 
+       * xfaces.c (clear_font_table): Don't free the default font of
+       a frame even if it's on another display.
+       (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
+       that could be Qt.
+ 
+ 2002-04-19  Juanma Barranquero  <address@hidden>
+ 
+       * indent.c (Fmove_to_column): Remove unused local variable
+       `next_boundary_byte'.
+       (current_column_1): Likewise.
+ 
+ 2002-04-19  Eli Zaretskii  <address@hidden>
+ 
+       * msdos.c (Qhbar): New variable.
+       (syms_of_msdos): Intern and staticpro it.
+       (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
+       cursor type.
+ 
+ 2002-04-19  Dave Lambert  <address@hidden>
+ 
+       Theses change implement an underscore-like (`hbar') cursor.
+ 
+       * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
+ 
+       * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
+       Handle the `hbar' cursor type.
+       (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
+ 
+       * xfns.c (Qhbar): New variable.
+       (syms_of_xfns): Intern and staticpro it.
+       (x_specified_cursor_type): Handle `hbar' cursor.
+ 
+       * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
+       not defined.
+ 
+ 2002-04-18  Richard M. Stallman  <address@hidden>
+ 
+       * textprop.c (remove_properties): New arg LIST allows scanning
+       either a list or a plist.
+       (interval_has_some_properties_list): New function, like
+       interval_has_some_properties using list instead of plist.
+       All callers changed.
+       (Fremove_list_of_text_properties): New function.
+       (syms_of_textprop): Defsubr it.
+ 
+ 2002-04-17  Eli Zaretskii  <address@hidden>
+ 
+       * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
+ 
+ 2002-04-17  Juanma Barranquero  <address@hidden>
+ 
+       * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
+ 
+ 2002-04-17  Eli Zaretskii  <address@hidden>
+ 
+       * window.c (coordinates_in_window): Don't report on margin area
+       if its width is zero.
+ 
+ 2002-04-16  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (Fx_file_dialog): Decode file name before using.
+ 
+       * w32term.c (construct_drag_n_drop): Likewise.
+ 
+ 2002-04-16  Eli Zaretskii  <address@hidden>
+ 
+       * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
+       store load-history in pure space.
+ 
+       * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
+ 
+ 2002-04-16  Stefan Monnier  <address@hidden>
+ 
+       * xterm.c (Qlatin_1, Qutf_8): New vars.
+       (syms_of_xterm): Initialize them.
+       (XTread_socket): Eliminate incorrect optimization that tried to avoid
+       decoding the output of X*LookupString.
+       Always use latin-1 to decode the output of XLookupString.
+       Try Xutf8LookupString if XmbLookupString failed.
+ 
+       * region-cache.c (new_region_cache): Use BEG.
+ 
+ 2002-04-16  Gerd Moellmann  <address@hidden>
+ 
+       * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
+       configuration files.
+       (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
+       returns 0.
+ 
+ 2002-04-15  Andreas Schwab  <address@hidden>
+ 
+       * config.in: Regenerated using autoheader.
+ 
+       * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
+       m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
+       m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
+       m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
+       m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
+       m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
+       m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
+       m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
+       m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
+       m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
+       m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
+       m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
+       m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
+       m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
+       m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
+       s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
+       STACK_DIRECTION, now set by autoconf.
+ 
+ 2002-04-14  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * dispnew.c (marginal_area_string): Sort arguments.
+ 
+       * dispextern.h (marginal_area_string): Add prototype.
+ 
+ 2002-04-13  Richard M. Stallman  <address@hidden>
+ 
+       * fileio.c (Finsert_file_contents):
+       Don't call temp_output_buffer_setup--do just part, by hand.
+ 
+       * coding.c (run_pre_post_conversion_on_str):
+       Don't call temp_output_buffer_setup--do just part, by hand.
+ 
+       * keyboard.c (command_loop_1): Don't call start_hourglass
+       or cancel_hourglass when executing a macro.
+ 
+       * marker.c (count_markers): New function.
+ 
+       * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
+       grow without limit.  Move recently used elements to the front.
+ 
+ 2002-04-13  Eli Zaretskii  <address@hidden>
+ 
+       * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
+ 
+ 2002-04-12  Gerd Moellmann  <address@hidden>
+ 
+       * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
+       rows marginal areas.
+       (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
+       (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
+ 
+       * dispnew.c (marginal_area_string): Check that glyph row is enabled.
+ 
+ 2002-04-12  Dave Love  <address@hidden>
+ 
+       * dispnew.c (marginal_area_string): New.
+ 
+       * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
+       (Qleft_margin, Qright_margin): Declare.
+       (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
+ 
+       * xterm.c (note_mode_line_or_margin_highlight): Renamed from
+       note_mode_line_highlight and extended.
+ 
+       * keyboard.c (Qleft_margin, Qright_margin): Declare.
+       (make_lispy_event): Deal with mouse events in margins.
+ 
+ 2002-04-12  Stefan Monnier  <address@hidden>
+ 
+       * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
+ 
+       * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
+       than deactivating the mark if tmm is set to `lambda'.
+       (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
+       Use a single event for HELP_EVENT.
+       (Fexecute_extended_command): Save last_point_position.
+ 
+ 2002-04-12  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * lisp.h (Fpropertize): Add prototype.
+ 
+       * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
+ 
+ 2002-04-10  Colin Walters  <address@hidden>
+ 
+       * config.in: Add HAVE_SHARED_GAME_DIR.
+ 
+       * callproc.c: (Vgame_score_directory): New variable.
+       (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
+ 
+ 2002-04-10  Richard M. Stallman  <address@hidden>
+ 
+       * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
+ 
+ 2002-04-09  Stefan Monnier  <address@hidden>
+ 
+       * minibuf.c (read_minibuf): Use empty_string.
+       (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
+       Short-circuit the search as soon as it "failed".
+       (Fall_completions): Allow lambda forms and lists of strings for alist.
+       (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
+       when require_match is nil.
+       (Ftest_completion): Rename from `test_completion' and export to elisp.
+       Call the predicate also when alist is a list.
+       Obey Vcompletion_regexp_list.
+       (do_completion, Fminibuffer_complete_and_exit): Use it.
+       (Fassoc_string): Rename from `assoc_for_completion'.
+       Allow list of strings as well and export to elisp.
+ 
+ 2002-04-08  Stefan Monnier  <address@hidden>
+ 
+       * puresize.h (BASE_PURESIZE): Increase to 900KB.
+ 
+ 2002-04-08  Juanma Barranquero  <address@hidden>
+ 
+       * w32.c (sys_accept): Don't hide variable `s'.
+ 
+ 2002-04-05  Gerd Moellmann  <address@hidden>
+ 
+       * callint.c (Fcall_interactively): Use INTEGERP instead of
+       NUMBERP for checking Vhistory_length.
+ 
+ 2002-04-05  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
+       Doc fix to reflect it.
+ 
+ 2002-04-04  Richard M. Stallman  <address@hidden>
+ 
+       * xdisp.c (display_mode_element): New arg RISKY.
+       Disregard text props found or specified within a variable
+       that isn't marked risky-local-variable.
+       (Qrisky_local_variable): New variable.
+       (syms_of_xdisp): Init and staticpro it.
+ 
+ 2002-04-04  Stefan Monnier  <address@hidden>
+ 
+       * undo.c (record_point): New fun.
+       (record_delete, record_insert): Use it.
+ 
+ 2002-04-03  Juanma Barranquero  <address@hidden>
+ 
+       * doc.c (Fdocumentation): Add missing parentheses.
+       (Fdocumentation_property): Likewise.
+ 
+ 2002-04-03  Stefan Monnier  <address@hidden>
+ 
+       * doc.c (Fdocumentation, Fdocumentation_property): When the doc
+       data is 0, just return nil.
+ 
+ 2002-04-03  Eli Zaretskii  <address@hidden>
+ 
+       * msdos.c (syms_of_msdos): Fix last change with
+       mouse_autoselect_window.
+ 
+ 2002-04-03  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
+       mouse_autoselect_window.
+ 
+ 2002-04-02  Stefan Monnier  <address@hidden>
+ 
+       * keyboard.c (make_lispy_event): Handle unknown keysyms together
+       with system-specific keysyms.  Use it also for unknown function keys.
+ 
+       * doc.c (reread_doc_file): Return whether reload was attempted.
+       (Fdocumentation, Fdocumentation_property): Don't try to reload
+       if the doc is 0 and only ask once.
+ 
+       * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
+ 
+ 2002-04-02  Eli Zaretskii  <address@hidden>
+ 
+       * keyboard.c (read_char): If the event was Qselect_window,
+       restore timer_idleness_start_time to its previous value.
+ 
+       * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
+ 
+ 2002-04-01  Stefan Monnier  <address@hidden>
+ 
+       * region-cache.c (new_region_cache): Use BEG.
+ 
+       * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
+       Use BEG and BEG_BYTE.
+ 
+       * doc.c (get_doc_string): Return nil if the location is wrong.
+       (reread_doc_file): New fun.
+       (Fdocumentation, Fdocumentation_property):
+       Call it if get_doc_string fails.
+       (Fsnarf_documentation): Make it work for a dumped Emacs.
+ 
+       * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
+       Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
+ 
+       * charset.c (Fstring): Allow 0 arguments.
+ 
+       * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
+ 
+       * process.c (DATAGRAM_CONN_P, list_processes_1)
+       (Fprocess_datagram_address, Fset_process_datagram_address)
+       (Fset_network_process_options, server_accept_connection):
+       Fix some int/Lisp_Object confusions (thank you union types).
+ 
+ 2002-04-01  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
+ 
+       * w32term.c: Likewise.
+       (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
+ 
+       * keyboard.c (Qselect_window): New symbol.
+       (head_table): Use it.
+       (keys_of_keyboard): Bound select-window event to handle-select-window.
+       (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
+ 
+       * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
+       (last_window): New variable.
+       (XTread_socket): Generate SELECT_WINDOW_EVENTs.
+       (note_mouse_movement): Remove reimplemented code in #if 0.
+       (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
+       Emacs windows.
+ 
+       * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
+ 
+ 2002-03-31  Gerd Moellmann  <address@hidden>
+ 
+       * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
+       Callers changed.
+ 
+ 2002-03-30  Richard M. Stallman  <address@hidden>
+ 
+       * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
+       loop whenever it stops making progress.
+ 
+       * widget.c (set_frame_size): Don't call change_frame_size.
+ 
+ 2002-03-30  Gerd Moellmann  <address@hidden>
+ 
+       * dispnew.c (direct_output_for_insert):
+       Call mark_window_display_accurate.
+ 
+ 2002-03-29  Jason Rumney  <address@hidden>
+ 
+       * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
+ 
+ 2002-03-29  Eli Zaretskii  <address@hidden>
+ 
+       * Makefile.in (lread.o): Depend on coding.h.
+ 
+       * lread.c (openp, Fload): Encode the file name before passing it
+       to `stat', `access', and `emacs_open'.
+       (openp): GCPRO the encoded file name.  Don't recompute Lisp
+       strings unnecessarily.
+ 
+ 2002-03-29  Kim F. Storm  <address@hidden>
+ 
+       * fns.c (Flax_plist_put): Doc fix.
+ 
+ 2002-03-28  Miles Bader  <address@hidden>
+ 
+       * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
+ 
+ 2002-03-27  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * process.c (set-network-process-options): Add usage.
+       (make-network-process): Doc fix.
+ 
+ 2002-03-26  Eli Zaretskii  <address@hidden>
+ 
+       * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
+ 
+ 2002-03-26  Richard M. Stallman  <address@hidden>
+ 
+       * fns.c (Fsubstring_no_properties): New function.
+       (Flax_plist_get, Flax_plist_put): New functions.
+       (syms_of_fns): defsubr them.
+ 
+       * xdisp.c (update_menu_bar): Test only update_mode_lines;
+       don't test or alter w->update_mode_line.
+ 
+       * window.c (Fdisplay_buffer): Doc fix.
+ 
+ 2002-03-24  Richard M. Stallman  <address@hidden>
+ 
+       * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
+ 
+ 2002-03-24  Gerd Moellmann  <address@hidden>
+ 
+       * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
+       (Fdefmacro): Handle `(declare ...)'.
+       (syms_of_eval) <Qdeclare>: Initialize and staticpro.
+       (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
+ 
+ 2002-03-24  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
+       (xbm_file_p): Add prototypes.
+       (xbm_format, xbm_image_p): Sync with xfns.c.
+       (reflect_byte): New function.
+       (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
+       (xbm_load_image): Create bitmaps with a depth of 1.
+       (init_xfns): Enable XBM images.
+ 
+ 2002-03-23  Jason Rumney  <address@hidden>
+ 
+       * w32term.c (w32_handle_tool_bar_click): Detect up and down events
+       correctly.  Do not pass up_modifier to keyboard buffer.
+ 
+       * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
+ 
+ 2002-03-22  Stefan Monnier  <address@hidden>
+ 
+       * Makefile.in (bootstrapclean): New target.
+       (bootstrap-temacs, bootstrap-doc): Remove.
+       (bootstrap-emacs): Use a bog-standard `temacs'.
+       Don't bother to build a DOC file.
+ 
+       * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
+ 
+       * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
+       in temacs even if !CANNOT_DUMP.
+       (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
+ 
+       * alloc.c (check_pure_size): Only output a warning.
+ 
+ 2002-03-22  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (Fx_create_frame): Enable tool-bar when images are
+       supported.
+ 
+       * w32term.c (zv_bits): Declare as short, for word alignment.
+       (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
+       (syms_of_w32term): Define x-use-underline-position-properties.
+ 
+       * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
+       (clear_image_cache): Block input, fix logic, clear matrices in
+       all frames that share this cache.
+ 
+ 2002-03-22  Eli Zaretskii  <address@hidden>
+ 
+       * emacs.c (main): Update the Copyright year in the blurb printed
+       by "emacs --version".
+ 
+       * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
+ 
+       * xterm.c (XTread_socket): If XK_ISO_Lock and
+       XK_ISO_Last_Group_Lock are defined, handle keysyms between
+       XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
+ 
+ 2002-03-21  Kim F. Storm  <address@hidden>
+ 
+       * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
+       menu-bar bindings in keymap and local-map properties _are_ used.
+       But try keymap property first in accordance with 2002-01-03 patch.
+       Added comment describing why this is not always reliable.
+       (tool_bar_items): Ditto for tool-bar.
+ 
+ 2002-03-21  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (x_clear_image_1): Disable color table code.
+ 
+ 2002-03-21  Kim F. Storm  <address@hidden>
+ 
+       * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
+       removed the wrong version of the DEFUN macro; fixed it.
+ 
+       * fns.c (Ffeaturep): Allow subfeature to be a list (test using
+       Fmember rather than Fmemq).
+       (Fprovide): Check that subfeatures is a list.
+ 
+       * process.c (QCfeature, QCdatagram): Removed variables.
+       (QCtype, Qdatagram): New variables.
+       (network_process_featurep): Removed function.
+       (Fmake_network_process): Removed :feature check.
+       Use :type 'datagram instead of :datagram t to create a datagram
+       socket.  This allows us to add other connection types (e.g. raw
+       sockets) later in a consistent manner.
+       (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
+       supported subfeatures for feature make-network-process.
+       (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
+       Intern and staticpro QCtype and Qdatagram.
+       (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
+ 
+       * xfns.c: (QCtype): Remove duplicate declaration and
+       initialization (is now declared in process.c).
+ 
+       * w32fns.c: (QCtype): Remove duplicate declaration and
+       initialization (is now declared in process.c).
+ 
+ 2002-03-21  Richard M. Stallman  <address@hidden>
+ 
+       * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
+       (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
+       when jumping to `fail' to avoid undoing reg changes in the
+       last iteration of the loop.
+       (GET_UNSIGNED_NUMBER): Skip spaces around the number.
+ 
+       * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
+       Depend on process.h.
+ 
+ 2002-03-20  Jason Rumney  <address@hidden>
+ 
+       Most of the following changes are still conditional on HAVE_IMAGES
+       which is not set by default on Windows.
+ 
+       * emacs.c (main) [WINDOWSNT]: Call init_xfns.
+ 
+       * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
+       (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
+       (four_corners_best, x_clear_image_1, x_clear_image)
+       (x_alloc_image_color, postprocess_image)
+       (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
+       (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
+       (init_xfns, syms_of_w32fns): Initialize image functions and constants.
+ 
+       * w32gui.h (struct XImage): Define.
+ 
+       * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
+       extract mouse co-ordinates.
+ 
+ 2002-03-20  Jason Rumney  <address@hidden>
+ 
+       * w32.c (init_winsock): Dynamically load new server and UDP
+       socket functions.
+       (socket_to_fd): New function.
+       (sys_socket): Use it.
+       (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
+       (sys_recvfrom, sys_sendto): New wrapper functions.
+ 
+       * process.c (QCfamily, QCfilter): Remove duplicate declaration
+       and initialization.
+ 
+       * makefile.w32-in (LIBS): Remove $(WSOCK32).
+ 
+ 2002-03-20  Eli Zaretskii  <address@hidden>
+ 
+       * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
+       Don't use "sun" as a variable, it's a predefined constant on Sun
+       machines.
+ 
+ 2002-03-20  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * bytecode.c (Fbyte_code): Revert last change.
+ 
+ 2002-03-19  Kim F. Storm  <address@hidden>
+ 
+       * makefile.w32-in (LIBS): Add $(WSOCK32).
+       From David Ponce <address@hidden>.
+ 
+ 2002-03-18  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * process.c (wait_reading_process_input): Move variables `pname'
+       and `pnamelen' down where they are used.
+ 
+       * bytecode.c (Fbyte_code): Discard unused computed value to
+       prevent gcc warning.
+ 
+       * lisp.h (Fplist_member): Add prototype.
+ 
+ 2002-03-18  Kim F. Storm  <address@hidden>
+ 
+       * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
+       HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
+ 
+       * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
+       Remove explicit GNU_LINUX settings for datagram support.
+ 
+ 2002-03-18  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * process.c (Fmake_network_process): Remove unused variable `sa'.
+       Doc fix.  Add usage:.
+       (set_socket_options): Remove unused variables `optnum' and `opttype'.
+ 
+ 2002-03-17  Richard M. Stallman  <address@hidden>
+ 
+       * xdisp.c (cursor_type_changed): New variable.
+       (redisplay_internal): Redisplay all windows if cursor_type_changed.
+       Clear it when clearing windows_or_buffers_changed.
+       (try_cursor_movement, redisplay_window, try_window_id)
+       (try_window_reusing_current_matrix): Test cursor_type_changed
+       along with windows_or_buffers_changed.
+ 
+       * window.h (cursor_type_changed): New variable.
+ 
+       * xfns.c (x_set_cursor_type): Set cursor_type_changed,
+       not update_mode_lines, and always set it to 1.
+ 
+       * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
+       if no frames needed redrawing.
+ 
+ 2002-03-17  Kim F. Storm  <address@hidden>
+ 
+       The following changes add support for network server processes,
+       datagram connections, and local (unix) sockets.
+ 
+       * process.h (struct Lisp_Process): New member log.
+       Doc fix: Member command used to indicate stopped network process.
+       Doc fix: Member childp contains plist for network process.
+       Doc fix: Member kill_without_query is inverse of query-on-exit flag.
+ 
+       * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
+       (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
+       (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
+       New variables.
+       (NETCONN1_P): New macro.
+       (DATAGRAM_SOCKETS): New conditional symbol.
+       (datagram_address): New array.
+       (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
+       (status_message): Use concat3.
+       (Fprocess_status): Add `listen' status to doc string.  Return `stop'
+       for a stopped network process.
+       (Fset_process_buffer): Update contact plist for network process.
+       (Fset_process_filter): Ditto.  Don't enable input for stopped
+       network processes.  Server must listen, even if filter is t.
+       (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
+       New functions.
+       (Fprocess_kill_without_query): Removed.  Now defined in simple.el.
+       (Fprocess_contact): Added KEY argument.  Handle datagrams.
+       (list_processes_1): Optionally show only processes with the query
+       on exit flag set.  Dynamically adjust column widths.  Omit tty
+       column if not needed.  Report stopped network processes.
+       Identify server and datagram network processes.
+       (Flist_processes): New optional arg `query-only'.
+       (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
+       (conv_lisp_to_sockaddr, set_socket_options)
+       (network_process_featurep, unwind_request_sigio): New helper functions.
+       (Fprocess_datagram_address, Fset_process_datagram_address):
+       (Fset_network_process_options): New lisp functions.
+       (Fopen_network_stream): Removed.  Now defined in simple.el.
+       (Fmake_network_process): New lisp function.  Code is based on previous
+       Fopen_network_stream, but heavily reworked with new property list based
+       argument list, support for datagrams, server processes, and local
+       sockets in addition to old client-only functionality.
+       (server_accept_connection): New function.
+       (wait_reading_process_input): Use it to handle incoming connects.
+       Do not enable input on a new connection if process is stopped.
+       (read_process_output): Handle datagram sockets. Use 2k buffer for them.
+       (send_process): Handle datagram sockets.
+       (Fstop_process, Fcontinue_process): Apply to network processes.  A 
stopped
+       network process is indicated by setting command field to t .
+       (Fprocess_send_eof): No-op if datagram connection.
+       (Fstatus_notify): Don't read input for a stream server socket or a
+       stopped network process.
+       (init_process): Initialize datagram_address array.
+       (syms_of_process): Intern and staticpro new variables, defsubr new
+       functions.
+ 
+ 2002-03-16  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (w32_to_all_x_charsets): Return correct type in
+       startup case.
+ 
+ 2002-03-16  Richard M. Stallman  <address@hidden>
+ 
+       * xdisp.c (redisplay_internal, redisplay_windows):
+       Use list_of_error to call internal_condition_case_1.
+       (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
+       so as to catch all errors with no possibility of debugger redisplay.
+       (list_of_error): New variable.
+       (syms_of_xdisp): Init and staticpro it.
+ 
+       * print.c (print_object): Delete `\ ' from printed rep of frame.
+ 
+ 2002-03-15  Eli Zaretskii  <address@hidden>
+ 
+       * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
+       until its implementation is fixed.
+ 
+ 2002-03-14  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * xfns.c (png_load): Remove unused variable `gamma_str'.
+ 
+ 2002-03-14  Richard M. Stallman  <address@hidden>
+ 
+       * xfns.c (x_real_positions): Handle failure in XQueryTree.
+ 
+ 2002-03-14  Miles Bader  <address@hidden>
+ 
+       * intervals.c (adjust_for_invis_intang): New function.
+       (set_point_both): Use `adjust_for_invis_intang' to do most of the
+       work for dealing with invisible+intangible regions.  Do so before
+       and after both forward and backward movements, to handle both
+       front-sticky and rear-sticky cases.
+       * textprop.c (text_property_stickiness): Function moved here from
+       `editfns.c'.
+       * intervals.h (text_property_stickiness): New declaration.
+       * editfns.c (char_property_eq): Function removed.
+       (text_property_stickiness): Function moved to `textprop.c'.
+ 
+ 2002-03-13  Jason Rumney  <address@hidden>
+ 
+       * config.in: Add STRFTIME_NO_POSIX2.
+ 
+       * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
+       and %OX when underlying strftime does not.
+ 
+ 2002-03-13  Stefan Monnier  <address@hidden>
+ 
+       * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
+       Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
+       line) to avoid annoying flicker.
+       (xm_scroll_callback): Get rid of the now unnecessary kludge.
+       (XTread_socket): Mark it static.
+ 
+       * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
+ 
+ 2002-03-13  Kim F. Storm  <address@hidden>
+ 
+       * puresize.h (BASE_PURESIZE): Increase to 775000.
+ 
+ 2002-03-12  Juanma Barranquero  <address@hidden>
+ 
+       * editfns.c (syms_of_editfns): Fix typo.
+ 
+ 2002-03-12  Gerd Moellmann  <address@hidden>
+ 
+       * xsmfns.c: Include stdio.h because termhooks.h needs it.
+       Include termopt.h for interrupt_input.
+ 
+ 2002-03-11  Andreas Schwab  <address@hidden>
+ 
+       * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
+ 
+ 2002-03-11  Gerd Moellmann  <address@hidden>
+ 
+       * xterm.c (note_mouse_movement): Put code for
+       x_autoselect_window_p in #if 0.
+ 
+       * lread.c (Fload): Don't assume that message_with_string uses the
+       string it is given like a C string.
+ 
+ 2002-03-10  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xterm.h (x_session_check_input, x_session_initialize): Declared.
+ 
+       * xterm.c: (XTread_socket): Add call to x_session_check_input and
+       x_session_have_connection.
+       (x_initialize): Add call to x_session_initialize.
+ 
+       * termhooks.h (enum event_kind): Add save_session_event.
+ 
+       * keyboard.c: Add Emacs event save_session_event.
+ 
+       * emacs.c (main): Add call to syms_of_xsmfns.
+ 
+       * lisp.h: Declare syms_of_xsmfns as extern.
+ 
+       * config.in: Add HAVE_X_SM.
+ 
+       * Makefile.in (LIBXT): Add -lSM -lICE
+       if HAVE_X_SM and not USE_X_TOOLKIT.
+       (XOBJ): New file xsmfns.c added.
+ 
+       * xsmfns.c: New file for X session management.
+ 
+ 2002-03-09  Jason Rumney  <address@hidden>
+ 
+       * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
+       read-only when setting modified time.
+ 
+ 2002-03-08  Gerd Moellmann  <address@hidden>
+ 
+       * xdisp.c (move_it_vertically_backward): At the end of the function,
+       when moving forward by lines, treat terminal frames specially.
+ 
+       * keyboard.c (echo_char): Make sure to add a separator between
+       keys even if echo_dash hasn't been called.
+ 
+       * xdisp.c: Use new string macros.
+       (update_echo_area): Pass number of bytes to message3 instead of
+       number of chars.
+       (set_message_1): Don't access a string's size_byte directly.
+       (decode_mode_spec_coding): Use number of bytes of eoltype string
+       instead number of chars.
+ 
+       * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
+ 
+ 2002-03-08  Juanma Barranquero  <address@hidden>
+ 
+       * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
+       24-bit.
+ 
+ 2002-03-06  Jason Rumney  <address@hidden>
+ 
+       * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
+ 
+ 2002-03-06  Gerd Moellmann  <address@hidden>
+ 
+       * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
+       (cancel_echoing, echo_length, echo_truncate): Changed to
+       work with new kboard definition.
+       (echo_now): Use message3_nolog instead of message2_nolog.
+ 
+       * alloc.c (mark_kboards): Mark echo_string.
+ 
+       * keyboard.h (ECHOBUFSIZE): Removed.
+       (struct kboard): Member echoptr removed, member echobuf renamed
+       to echo_string.
+ 
+       * xdisp.c (message_with_string): Use Fformat instead of doprnt and
+       message3 instead of message2 to display the message using STRING's
+       text properties.
+ 
+ 2002-03-05  Andreas Schwab  <address@hidden>
+ 
+       * xdisp.c (hscroll_margin): Change to EMACS_INT.
+ 
+ 2002-03-05  Per Abrahamsen  <address@hidden>
+ 
+       * frame.c (default-frame-alist): Explain that setting it doesn't
+       affect existing frames.
+ 
+ 2002-03-05  Stefan Monnier  <address@hidden>
+ 
+       * indent.c (skip_invisible): Fix my brain fart.
+ 
+       * dispnew.c (sit_for): Don't wait if executing a kbd macro.
+ 
+ 2002-03-04  Stefan Monnier  <address@hidden>
+ 
+       * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
+       * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
+       * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
+       * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
+       and variables to use EMACS_INT instead of just int.
+ 
+       * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
+ 
+ 2002-03-04  Eli Zaretskii  <address@hidden>
+ 
+       * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
+       environment, pass it down with corrected value.
+ 
+ 2002-03-04  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * lread.c (read_filtered_event): Do not call start_hourglass
+       before returning.
+ 
+ 2002-03-04  Juanma Barranquero  <address@hidden>
+ 
+       * w32term.c (x_display_and_set_cursor): Fix typo.
+ 
+ 2002-03-03  Richard M. Stallman  <address@hidden>
+ 
+       * fileio.c (Fmake_temp_name): Doc fix.
+ 
+ 2002-03-03  Gary Wong  <address@hidden>
+ 
+       * termcap.c [!emacs]: Replace ospeed for building standalone
+       libtermcap, for binary compatibility.
+ 
+       * tparam.c [!emacs]: Move #define of bcopy to after string.h.
+ 
+ 2002-03-03  Richard M. Stallman  <address@hidden>
+ 
+       * xrdb.c (file_p): Rename arg `path' to `filename'.
+ 
+       * abbrev.c (Fexpand_abbrev): Increment plist as use count
+       only if it is an integer.
+ 
+       * xfns.c (png_load): Set screen_gamma based on f->gamma.
+       If png_get_sRGB gives an answer, call png_set_gamma
+       using the default image gamma value.
+ 
+       * lread.c (read1): When reading from a file, default string to
+       multibyte only if it has some multibyte characters.
+ 
+       * print.c (print_object): Output multibyte chars 128...255
+       using \x even if ! print_escape_multibyte.
+ 
+       * xdisp.c (display_mode_element): Move the places where
+       bytepos, charpos, this, and lisp_string are set.
+       Use lisp_string to set bytepos.
+ 
+       * xdisp.c (redisplay_internal):
+       Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
+ 
+       * xdisp.c (display_mode_element): Merge properties specified with
+       :propertize onto those that come with the string.
+ 
+ 2002-03-03  Eli Zaretskii  <address@hidden>
+ 
+       * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
+       automatic-hscrolling.  Users changed.
+       <hscroll-margin>: Renamed from automatic-hscroll-margin.
+       Users changed.
+       <hscroll-step>: Renamed from automatic-hscroll-step.  Users changed.
+ 
+ 2002-03-02  Eli Zaretskii  <address@hidden>
+ 
+       * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
+ 
+ 2002-03-02  Kim F. Storm  <address@hidden>
+ 
+       * window.c (Fminibuffer_selected_window): New function.
+       (syms_of_window): Defsubr it.
+ 
+ 2002-03-01  Kim F. Storm  <address@hidden>
+ 
+       * window.h (struct window): New member phys_cursor_width.
+ 
+       * window.c (make_window, replace_window): Init phys_cursor_width.
+ 
+       * xterm.c (x_display_and_set_cursor): Blink box cursor using
+       hollow box cursor.  Blink bar cursor using 1 pixel wide bar.
+ 
+       * w32term.c (x_display_and_set_cursor): Blink box cursor using
+       hollow box cursor.  Blink bar cursor using 1 pixel wide bar.
+ 
+       * lisp.h (GCPRO6): New macro.
+ 
+       * process.c (Fopen_network_stream): Use GCPRO6.
+ 
+ 2002-03-01  Kim F. Storm  <address@hidden>
+ 
+       * process.c (Qconnect, Qfailed): New variables.
+       (syms_of_process): Intern and staticpro them.
+       (Fprocess_status): Document connect and failed return values.
+       [NON_BLOCKING_CONNECT]: New conditional.
+       (connect_wait_mask, num_pending_connects): New variables.
+       (status_message): Convert Qfailed status.
+       (Fopen_network_stream): Added support for non-blocking connect.
+       New optional args: filter, sentinel, non_blocking.  Doc updated.
+       [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
+       (deactivate_process): Handle pending non-blocking connect.
+       (wait_reading_process_input): Poll for status of non-blocking
+       connects.  Exec sentinel directly when connect succeeds.
+       (status_notify): Don't read process output if not yet connected.
+ 
+ 2002-02-28  Kim F. Storm  <address@hidden>
+ 
+       * window.c: (minibuf_selected_window): Renamed from
+       Vminibuf_selected_window.  Users changed.
+       (syms_of_window): Staticpro it.
+ 
+ 2002-02-26  Kim F. Storm  <address@hidden>
+ 
+       The following changes add a new Vminibuf_selected_window variable
+       which is similar to Vminibuf_scroll_window, but which is only set
+       on entry to the minibuffer (from a non-minibuffer window):
+ 
+       * window.c: (Vminibuf_selected_window): New variable.
+       (struct save_window_data): New member minibuf_selected_window.
+       (Fset_window_configuration): Restore Vminibuf_selected_window.
+       (Fcurrent_window_configuration): Save Vminibuf_selected_window.
+       Set minibuf_scroll_window member to nil if minibuf_level is 0.
+       (compare_window_configurations): Compare minibuf_selected_window.
+ 
+       * window.h: (Vminibuf_selected_window): Declare extern.
+ 
+       * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
+       entry to minibuffer or on entry from a non-minibuffer window.
+ 
+       * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
+       Vminibuf_selected_window instead of Vminibuf_scroll_window.
+ 
+       * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
+       instead of Vminibuf_scroll_window when deciding in which window
+       the region should be highlighted.  Consequently, the region remains
+       highlighteded even when a completion buffer is also displayed.
+ 
+ 2002-02-26  Eli Zaretskii  <address@hidden>
+ 
+       * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
+ 
+       * xselect.c (Qcompound_text_with_extensions): Renamed from
+       Qcompound_text_no_extensions.
+       (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
+ 
+ 2002-02-26  Juanma Barranquero  <address@hidden>
+ 
+       * w32proc.c (syms_of_ntproc): Doc fix.
+ 
+ 2002-02-24  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * intervals.h: Include "dispextern.h" unconditionally.
+ 
+ 2002-02-24  Jason Rumney  <address@hidden>
+ 
+       * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
+       and disp-table.elc.
+       (lisp): Add emacs-lisp/backquote.elc.
+ 
+ 2002-02-24  Kim F. Storm  <address@hidden>
+ 
+       * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
+       The validation of the event type was too strict as it didn't
+       allow string events; buffer names are used in bindings for
+       menu-bar-select-buffer (see `menu-bar-update-buffers').
+ 
+ 2002-02-23  Kim F. Storm  <address@hidden>
+ 
+       The following changes rework my patch of 2002-02-06 which
+       added command remapping by entering the commands directly into
+       the keymaps.  Now, command remapping uses an explicit `remap'
+       prefix in the keymaps, i.e. [remap COMMAND].
+ 
+       * keymap.c (Qremap, remap_command_vector): New variables.
+       (is_command_symbol): Removed function.
+       (Fdefine_key): No longer accept a symbol for KEY.
+       Added validation of [remap COMMAND] argument for KEY.
+       The DEF is no longer required to be a symbol when remapping a command.
+       (Fremap_command): New function to remap command through keymaps.
+       (Flookup_key): Perform command remapping initiated by
+       Fremap_command directly for speed.
+       (Fkey_binding): Use Fremap_command for command remapping.
+       (where_is_internal): Handle new command remapping representation.
+       (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
+       staticpro them.  Defsubr Fremap_command.
+ 
+       * keymap.h (Fremap_command): Declare extern.
+       (is_command_symbol): Remove extern.
+ 
+       * keyboard.c (command_loop_1): Use Fremap_command for command
+       remapping; now try command remapping for all symbols.
+ 
+ 2002-02-23  Eli Zaretskii  <address@hidden>
+ 
+       * coding.h (run_pre_post_conversion_on_str): Add prototype.
+ 
+ 2002-02-23  Jason Rumney  <address@hidden>
+ 
+       * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
+       on the string before encoding it.
+       (Fw32_get_clipboard_data): Run post-read-conversion on the string
+       after decoding it.
+ 
+       * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
+ 
+ 2002-02-23  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * w32term.c (enter_timestamp): Remove unused static variable to
+       prevent warning.
+ 
+       * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
+ 
+ 2002-02-23  Eli Zaretskii  <address@hidden>
+ 
+       * w16select.c (Fw16_get_clipboard_data): Fix last change.
+ 
+       * xselect.c (selection_data_to_lisp_data): Fix last change.
+ 
+ 2002-02-22  Jason Rumney  <address@hidden>
+ 
+       * w32term.h (struct w32_output): New member menu_command_in_progress.
+ 
+       * w32menu.c (menubar_selection_callback): Free the menu and
+       clear the menu_command_in_progress flag.
+ 
+       * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
+       (menu_free_timer): New variable.
+       (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
+       (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
+       <WM_EXITMENULOOP>: Delay before freeing menu.  Do nothing if a
+       menu command is in progress.
+       <WM_COMMAND>: Set the menu_command_in_progress flag.
+       Kill any menu_free_timer that is running.
+ 
+       * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
+       Call ExtTextOutA rather than ExtTextOut.
+ 
+ 2002-02-22  Eli Zaretskii  <address@hidden>
+ 
+       * puresize.h (BASE_PURESIZE): Increase to 755000.
+ 
+ 2002-02-22  Eli Zaretskii  <address@hidden>
+ 
+       * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
+       on the string before encoding it.
+       (Fw16_get_clipboard_data): Run post-read-conversion on the string
+       after decoding it.
+ 
+ 2002-02-22  Eli Zaretskii  <address@hidden>
+ 
+       Support for ICCCM  Extended Segments in X selections:
+ 
+       * xselect.c <Qcompound_text_no_extensions>: New variable.
+       (syms_of_xselect): Intern and staticpro it.
+       (selection_data_to_lisp_data): Run post-read-conversion on decoded
+       selection text.
+       (lisp_data_to_selection_data): If next-selection-coding-system is
+       compound-text-no-extensions, set the type of selection to be
+       compound-text.
+ 
+       * xterm.h (x_encode_text): Update prototype.
+ 
+       * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
+       callers changed.  If SELECTIONP is non-zero, run the
+       pre-write-conversion function before encoding the selection text.
+ 
+ 2002-02-21  Kim F. Storm  <address@hidden>
+ 
+       * frame.c (syms_of_frame): Change mouse-highlight default to t.
+ 
+       * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
+       Correct composing of language-change event.
+ 
+ 2002-02-20  Kim F. Storm  <address@hidden>
+ 
+       * keyboard.c (menu_bar_items): Don't include keymap or local-map
+       bindings at PT when building menu (the menu is not updated often
+       enough for this to work reliable).
+       (tool_bar_items): Likewise.
+       (current_active_maps): Removed unused (and buggy) function.
+ 
+ 2002-02-20  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * xfns.c (gif_load): Use correct width and height for GIF images.
+ 
+ 2002-02-19  Eli Zaretskii  <address@hidden>
+ 
+       * floatfns.c (Fatan): Accept an optional second arg and call
+       atan2 if passed 2 args.
+ 
+ 2002-02-18  Jason Rumney  <address@hidden>
+ 
+       * w32term.c (glyph_rect): Determine the row and glyph more precisely.
+ 
+ 2002-02-17  Jason Rumney  <address@hidden>
+ 
+       * w32term.c (x_autoselect_window_p): New variable.
+       (syms_of_w32term): DEFVAR_BOOL and initialize it.
+       (note_mouse_movement): Use it.
+ 
+       * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
+ 
+       * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
+ 
+       * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
+       New variables.
+       (syms_of_w32fns): Intern and staticpro them.
+       (x_frame_parms) <"fullscreen">: New parameter.
+       (x_fullscreen_move, x_set_fullscreen): New functions.
+       (x_set_frame_parameters): Support Qfullscreen.
+       (x_real_positions): Save x/y_pixels_diff frame params.
+       (x_figure_window_size): Support full-screen frames.
+       (Fx_create_frame): Default the fullscreen parameter.
+ 
+       * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
+       (x_fullscreen_adjust): New functions.
+       (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't  resize to
+       fullscreen.  Call x_check_fullscreen_move, and set the
+       want_fullscreen member of output_data.w32
+       <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
+ 
+       * w32term.h: New enum for FULLSCREEN_* constants.
+       (struct w32_output): New members want_fullscreen, x_pixels_diff,
+       y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
+       (x-fullscreen-adjust): New prototype.
+ 
+ 2002-02-17  Kim F. Storm  <address@hidden>
+ 
+       * frame.c: (Vmouse_highlight): New variable.
+       (syms_of_frame): DEFVAR_LISP it.
+ 
+       * frame.h: (Vmouse_highlight): Declare extern.
+ 
+       * xterm.h (struct x_display_info): Add mouse_face_hidden.
+ 
+       * xterm.c (disable_mouse_highlight): Removed variable.
+       (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
+       (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
+       (XTread_socket): Turn mouse_face_hidden off after mouse movement,
+       and on after keyboard input.
+       (x_term_init): Initialize mouse_face_hidden.
+ 
+       * msdos.h (struct display_info): Add mouse_face_hidden.
+ 
+       * msdos.c (disable_mouse_highlight): Removed variable.
+       (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
+       (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
+       (internal_terminal_init): Initialize mouse_face_hidden.
+       (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
+       and on after keyboard input.
+ 
+       * w32term.h (struct w32_display_info): Add mouse_face_hidden.
+ 
+       * w32term.c (disable_mouse_highlight): Removed variable.
+       (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
+       (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
+       (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
+       and on after keyboard input.
+       (w32_initialize_display_info): Initialize mouse_face_hidden.
+ 
+ 2002-02-16  Eli Zaretskii  <address@hidden>
+ 
+       * msdos.c (last_mouse_window): New variable.
+       (dos_rawgetc): Fix last change--if the mouse is in the same window
+       as recorded in last_mouse_window, don't select this window.
+ 
+       * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
+ 
+       * msdos.c (x_autoselect_window_p): New variable.
+       (syms_of_msdos): Defvar it.
+       (dos_rawgetc): If x_autoselect_window_p is set, select the window in
+       which the last mouse movement occured, unless it is already selected.
+ 
+       * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
+       New variables.
+       (syms_of_xdisp): DEVFAR them.
+       (hscroll_window_tree): Use automatic_hscroll_margin and
+       Vautomatic_hscroll_step to compute the amount of window scrolling.
+ 
+ 2002-02-16  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * xterm.c (x-autoselect-window): New variable.
+       (note_mouse_movement): Use it.
+ 
+       * keyboard.c: Do not include "systime.h" twice.
+ 
+ 2002-02-15  Andreas Schwab  <address@hidden>
+ 
+       * puresize.h (BASE_PURESIZE): Increase to 9/5.
+ 
+       * alloc.c (NSTATICS): Increase to 1280.
+ 
+ 2002-02-15  Kai Gro,A_(Bjohann  <address@hidden>
+ 
+       * alloc.c (NSTATICS): Bump to 1026.
+ 
+       * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
+       (Vx_super_keysym): New variables.
+       (syms_of_xterm): DEFVAR_LISP them.
+       (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
+       variables to determine which keys to use for the various modifiers.
+ 
+ 2002-02-13  Kim F. Storm  <address@hidden>
+ 
+       * window.c: (Vmode_line_in_non_selected_windows): Removed.
+       (mode_line_in_non_selected_windows): New variable.
+       (syms_of_window): DEFVAR_BOOL it.
+ 
+       * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
+       Use mode_line_in_non_selected_windows.
+       (mode_line_in_non_selected_windows): Declare extern.
+       (Vmode_line_in_non_selected_windows): Removed extern.
+ 
+ 2002-02-13  Richard M. Stallman  <address@hidden>
+ 
+       * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
+       (Fthis_single_command_keys, Fthis_single_command_raw_keys)
+       (Fclear_this_command_keys): Doc fixes.
+ 
+       * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
+       (update_face_from_frame_parameter): Increment face_change_count
+       and windows_or_buffers_changed to force redisplay using changed faces.
+ 
+       * xdisp.c (QCpropertize): New variable.
+       (mode_line_proptrans_alist): New variable.
+       (display_mode_element): New arg PROPS; all calls changed.
+       Implement this, for strings.
+       Handle literal output of strings by sharing the
+       main-line code for strings, using local var `literal'.
+       Handle :propertize feature.
+       (syms_of_xdisp): Initialze and staticpro QCpropertize and
+       mode_line_proptrans_alist.
+ 
+ 2002-02-11  Kim F. Storm  <address@hidden>
+ 
+       * window.c: (Vmode_line_in_non_selected_windows): New variable.
+       (syms_of_window): DEFVAR_LISP it.
+ 
+       * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
+       (CURRENT_MODE_LINE_FACE_ID): Use it.
+       (Vmode_line_in_non_selected_windows): Declare extern.
+ 
+       * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
+       to get mode line face.
+ 
+ 2002-02-11  Eli Zaretskii  <address@hidden>
+ 
+       * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
+       variables; cus-start.el doesn't need them anymore.
+ 
+ 2002-02-09  Kim F. Storm  <address@hidden>
+ 
+       * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
+       reduction.  This fixes a display problem where stray newlines were
+       inserted in the window (corrected by C-l).  Clarified code (IMHO).
+ 
+ 2002-02-09  Eli Zaretskii  <address@hidden>
+ 
+       * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
+ 
+       * xdisp.c (display_mode_lines): Fix last change.
+ 
+ 2002-02-09  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
+       match each other.
+       (w32_load_system_font): Prevent Cleartype fonts from loading.
+       (Fx_show_tip): Ensure tip frames are above other topmost windows.
+ 
+ 2002-02-09  Kim F. Storm  <address@hidden>
+ 
+       * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
+       (CURRENT_MODE_LINE_HEIGHT): Use it.
+       (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
+ 
+       * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
+       (pos_visible_p, handle_face_prop): Likewise.
+       (display_mode_lines): Likewise, but for the real selected window.
+       (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
+ 
+       * xfaces.c (Qmode_line_inactive): New face variable for mode-line
+       in non-selected windows.
+       (realize_basic_faces): Realize it.
+       (syms_of_term): Intern and staticpro it.
+ 
+ 2002-02-08  Kim F. Storm  <address@hidden>
+ 
+       * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
+       Changed mail addresses to address@hidden
+ 
+ 2002-02-08  Eli Zaretskii  <address@hidden>
+ 
+       * fileio.c (Fsubstitute_in_file_name): If the file name includes
+       ~user, and there's no such user, don't discard everything before ~user.
+ 
+       * floatfns.c (Fround): Doc fix.
+ 
+ 2002-02-08  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
+ 
+ 2002-02-07  Stefan Monnier  <address@hidden>
+ 
+       * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
+ 
+ 2002-02-07  Kim F. Storm  <address@hidden>
+ 
+       * keymap.c (where_is_internal): Only check whether definition is
+       remapped if it fulfills is_command_symbol.
+ 
+ 2002-02-07  Andreas Schwab  <address@hidden>
+ 
+       * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
+ 
+       * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
+ 
+ 2002-02-06  Kim F. Storm  <address@hidden>
+ 
+       * keymap.c (Fdefine_key): Allow symbol as KEY argument for
+       defining command remapping.  Doc updated.
+       (Flookup_key): Remap command through keymap if KEY is a symbol.
+       (is_command_symbol): New function.
+       (Fkey_binding): Use it.  New optional argument NO-REMAP.
+       Doc updated.  Callers changed.  Perform command remapping via
+       recursive call unless that arg is non-nil.
+       (where_is_internal): New argument no_remap.  Callers changed.
+       Call recursively to find original key bindings for a remapped
+       comand unless that arg is non-nil.
+       (Fwhere_is_internal): New optional argument NO-REMAP.
+       Doc updated.  Callers changed.  Pass arg to where_is_internal.
+ 
+       * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
+       (is_command_symbol): Added prototype.
+ 
+       * keyboard.c (Vthis_original_command): New variable.
+       (syms_of_keyboard): DEFVAR_LISP it.
+       (command_loop_1): Set it, and perform command remapping.
+ 
+ 2002-02-06  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
+ 
+ 2002-02-06  Jason Rumney  <address@hidden>
+ 
+       * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
+ 
+ 2002-02-06  Eli Zaretskii  <address@hidden>
+ 
+       * charset.c (get_charset_id): Use if-else instead of ?:.
+ 
+ 2002-02-06  Richard M. Stallman  <address@hidden>
+ 
+       * filelock.c (S_ISLNK): Define if not defined.
+ 
+ 2002-02-03  Richard M. Stallman  <address@hidden>
+ 
+       * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
+ 
+       * lread.c (read1): Redesign strategy for force_multibyte and
+       force_singlebyte.  Now is_multibyte records whether read_buffer
+       is multibyte.  Encountering any multibyte character makes it so.
+ 
+ 2002-02-02  Stefan Monnier  <address@hidden>
+ 
+       * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
+       with the same sequence, map that sequence to f10 rather than f0.
+ 
+ 2002-02-03  Andreas Schwab  <address@hidden>
+ 
+       * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
+       latter never being defined on GNU/Linux.
+ 
+ 2002-02-02  Eli Zaretskii  <address@hidden>
+ 
+       * xfaces.c (realize_default_face): Don't set the weight and slant of
+       the default face to Qnormal, unless these attributes are unspecified.
+ 
+ 2002-02-02  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
+       Call cancel_hourglass unconditionally.
+ 
+       * eval.c (Fsignal): Remove duplicated declaration of
+       the variable `display_hourglass_p'.
+ 
+ 2002-01-31  Richard M. Stallman  <address@hidden>
+ 
+       * editfns.c (region_limit): Nicer error message.
+ 
+       * coding.c (decode_composition_emacs_mule):
+       Give up if NCOMPONENT gets too large to index `component'.
+ 
+       * callint.c (check_mark): New arg to specify clearer error message.
+       Callers changed.
+ 
+ 2002-01-27  Richard M. Stallman  <address@hidden>
+ 
+       * minibuf.c (Fcompleting_read): Doc fix.
+ 
+ 2002-01-27  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
+       (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
+       Fix doc-strings.
+ 
+ 2002-01-26  Richard M. Stallman  <address@hidden>
+ 
+       * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
+ 
+       * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
+       and scroll_up_aggressively.
+ 
+ 2002-01-26  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
+ 
+ 2002-01-25  Stefan Monnier  <address@hidden>
+ 
+       * textprop.c (Fnext_property_change, Fnext_single_property_change)
+       (Fprevious_property_change, Fprevious_single_property_change):
+       Stay within the narrowed-buffer boundaries.
+ 
+ 2002-01-25  Eli Zaretskii  <address@hidden>
+ 
+       * term.c (Ftty_display_color_cells): New function.
+       (syms_of_term): Defsubr it.
+       (Ftty_display_color_cells, Ftty_display_color_p): Change the
+       argument name to DISPLAY.  Doc fix.
+ 
+       * dispextern.h: Add prototype for set_tty_color_mode and
+       tty_setup_colors.
+ 
+ 2002-01-24  Jason Rumney  <address@hidden>
+ 
+       * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
+       If region left to draw is not what was expected, mark the frame as
+       garbaged.
+ 
+       * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
+       Combine the regions returned by BeginPaint and GetUpdateRect.
+ 
+ 2002-01-23  Jason Rumney  <address@hidden>
+ 
+       * w32term.c (x_update_window_begin): Only hide caret if
+       w32_use_visible_system_caret is set.
+       (x_update_window_end): Only show caret if
+       w32_use_visible_system_caret is set.
+       (syms_of_w32term): Handle SystemParametersInfo call failing.
+ 
+       * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
+ 
+ 2002-01-22  Richard M. Stallman  <address@hidden>
+ 
+       * unexelf.c (unexec): Define n so as to cause compilation error
+       for the code where people have often written n instead of nn.
+ 
+       * .gdbinit (hookpost-run): Defined.
+ 
+ 2002-01-22  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
+ 
+ 2002-01-21  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
+       if fullscreen is being set.
+ 
+ 2002-01-21  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * minibuf.c (Fminibuffer_contents)
+       (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
+       (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
+ 
+ 2002-01-21  Richard M. Stallman  <address@hidden>
+ 
+       * window.c (check_frame_size): Fix minimum height calculation.
+ 
+ 2002-01-20  Ken Raeburn  <address@hidden>
+ 
+       * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
+       height before comparison.
+       (WINDOW_WANTS_HEADER_LINE_P): Likewise.
+ 
+ 2002-01-20  Jason Rumney  <address@hidden>
+ 
+       * w32term.c (w32_system_caret_width): Remove.
+       (w32_use_visible_system_caret): New user flag.
+       (syms_of_w32term): DEFVAR_BOOL it.  Initialize based on whether
+       Windows reports a screen reader running.
+       (x_update_window_begin): Hide the system caret.
+       (x_update_window_end): Show the system caret.
+       (x_display_and_set_cursor): Don't draw a cursor when
+       w32_use_visible_system_caret is set.  Do not adjust width.
+ 
+       * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
+       (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
+       <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
+       the user requests it.  Use system default width when creating.
+       <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
+ 
+       * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
+       New window messages.
+ 
+ 2002-01-20  Richard M. Stallman  <address@hidden>
+ 
+       * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
+ 
+ 2002-01-20  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * doprnt.c (doprnt1): Fix typos in error call.
+ 
+ 2002-01-20  Eli Zaretskii  <address@hidden>
+ 
+       * unexelf.c (unexec) [__sgi]: Support the .got sections.
+ 
+ 2002-01-20  Jason Rumney  <address@hidden>
+ 
+       * w32term.c (w32_native_per_char_metric): Don't trust the metrics
+       that Windows returns.  If a double check fails, try to guess how
+       ExtTextOut is going to act.
+ 
+       * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
+       in place of stricmp.
+       (w32_list_synthesized_fonts): Removed.
+       (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
+       (struct enumfont_t): New element; list.
+       (enum_font_cb2): List all style and charset variations of a font.
+       (Fw32_select_font): New optional argument; include_proportional.
+       Exclude vertical fonts.  Exclude proportional fonts unless
+       include_proportional is non-nil.
+       (w32_enable_synthesized_fonts): Change to a boolean.
+       (Fw32_send_sys_command): Doc fix.
+ 
+ 2002-01-19  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * dispnew.c (update_frame): Move the variable `tem' to the block
+       where it is used.
+ 
+ 2002-01-19  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
+       call to face-set-after-frame-default.
+ 
+ 2002-01-18  Richard M. Stallman  <address@hidden>
+ 
+       * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
+       (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
+ 
+ 2002-01-17  Richard M. Stallman  <address@hidden>
+ 
+       * window.c (enlarge_window): When exceeding size of parent,
+       directly delete all the siblings instead of trying to resize it.
+ 
+ 2002-01-17  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * term.c (set_tty_color_mode): Remove unused variable `tem'.
+ 
+ 2002-01-16  Henrik Enberg  <address@hidden>
+ 
+       * lread.c (init_lread): Move the installed-lisp dirs later in the path.
+ 
+ 2002-01-16  Kim F. Storm  <address@hidden>
+ 
+       * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
+       is invisible.  This can happen if cursor is on top line of a
+       window, and we switch to a buffer with a header line.
+ 
+       * w32term.c (x_erase_phys_cursor): Ditto.
+ 
+ 2002-01-16  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
+       `dont_resize' only when used.
+ 
+       * xdisp.c: Remove forgotten extern declaration of `Qimage'.
+ 
+ 2002-01-15  Eli Zaretskii  <address@hidden>
+ 
+       * xdisp.c (display_mode_element): When computing charpos, depend
+       on multibyteness of elt, not the text in field.
+ 
+ 2002-01-15  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * buffer.c (Fkill_all_local_variables):
+       Increment `update_mode_lines' only once.
+ 
+ 2002-01-14  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * lisp.h (adjust_after_replace_noundo)
+       (Fupdate_coding_systems_internal): Add prototypes.
+ 
+       * sound.c (Fplay_sound): Initialize header_size also for :data case.
+ 
+ 2002-01-14  Eli Zaretskii  <address@hidden>
+ 
+       Support for the --color command-line argument and tty-color-mode
+       frame parameter:
+ 
+       * term.c (tty_default_color_capabilities, tty_setup_colors)
+       (set_tty_color_mode): New functions.
+       (term_init): Call tty_default_color_capabilities.
+       (Qtty_color_mode_alist): New variable.
+       (syms_of_term): Intern and staticpro it.
+ 
+       * frame.c (store_frame_param): Call set_tty_color_mode for termcap
+       frames.
+       (do_switch_frame): For termcap frames, switch the tty
+       color mode as specified by the frame's parameters.
+       (Qtty_color_mode): New variable.
+       (syms_of_frame): Intern and staticpro it.
+ 
+       * emacs.c (USAGE2): Add the --color option.
+       (standard_args): Ditto.
+ 
+ 2002-01-13  Jan Dj,Ad(Brv  <address@hidden>
+ 
+       * xterm.h (struct x_output): New members want_fullscreen,
+       x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
+       y_pixels_outer_diff.
+       New enum for FULLSCREEN_* constants.
+       (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
+       is NULL.
+       (x_fullscreen_adjust): Add prototype.
+ 
+       * emacs.c (USAGE2): Add the new full-screen arguments.
+       (standard_args): Ditto.
+ 
+       * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
+       New variables.
+       (syms_of_xfns): Intern and staticpro them.
+       (x_frame_parms) <"fullscreen">: New parameter.
+       (x_fullscreen_move, x_set_fullscreen): New functions.
+       (x_set_frame_parameters): Support for Qfullscreen.
+       (x_real_positions): More accurate computation of the frame position.
+       (x_figure_window_size): Support full-screen frames.
+       (Fx_create_frame): Default the fullscreen parameter.
+ 
+       * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
+       (XTread_socket) <Expose>: Call x_check_fullscreen.
+       <ConfigureNotify>: Don't resize to fullscreen.
+       Call x_check_fullscreen_move, and set the want_fullscreen member of
+       output_data.x.
+ 
+ 2002-01-13  Jason Rumney  <address@hidden>
+ 
+       * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
+       for mice with more than 3 buttons.
+ 
+       * w32term.c (parse_button): New parameter xbutton.  Callers changed.
+       (w32_read_socket): Handle new "XBUTTON" messages.
+ 
+       * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
+       (syms_of_w32fns): DEFVAR_BOOL it.
+       (w32_wnd_proc): Handle new "XBUTTON" messages.
+ 
+ 2002-01-13  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
+ 
+ 2002-01-13  Andreas Schwab  <address@hidden>
+ 
+       * xterm.c (x_load_font): Never set fonts_changed_p to zero.
+ 
+ 2002-01-12  Andreas Schwab  <address@hidden>
+ 
+       * .gdbinit (xbuffer): Remove address operator since data is now a
+       pointer.
+ 
+ 2002-01-11  Richard M. Stallman  <address@hidden>
+ 
+       * insdel.c (adjust_after_replace_noundo): New function.
+ 
+       * coding.c (code_convert_region): Don't copy old text if undo disabled.
+ 
+ 2002-01-09  Jason Rumney  <address@hidden>
+ 
+       * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
+       when checking for multiple frames.
+ 
+ 2002-01-08  Richard M. Stallman  <address@hidden>
+ 
+       * window.c (delete_window): Rewrite the code for changing the
+       selected window to handle the case where WINDOW is not a leaf.
+ 
+ 2002-01-07  Eli Zaretskii  <address@hidden>
+ 
+       * process.c (send_process): Set src_multibyte to 1 after the call
+       top setup_coding_system, not before the call.
+ 
+ 2002-01-07  Jason Rumney  <address@hidden>
+ 
+       * xmenu.c (set_frame_menubar, xmenu_show):
+       (xdialog_show): Initialize wv->help to Qnil.
+ 
+       * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
+       (w32_dialog_show): Initialize wv->help to Qnil.
+ 
+ 2002-01-06  Jason Rumney  <address@hidden>
+ 
+       * xmenu.c (single_submenu): Initialize wv->help to Qnil.
+ 
+       * w32menu.c (w32_menu_display_help): Revert last change.
+ 
+       * xmenu.c (menu_highlight_callback): Revert last change.
+ 
+ 2002-01-06  Andreas Schwab  <address@hidden>
+ 
+       * insdel.c (make_gap_larger): Make sure buffer size does not
+       overflow range of int.
+ 
+ 2002-01-05  Jason Rumney  <address@hidden>
+ 
+       * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
+       OVERLAPS_P.
+ 
+       * w32menu.c (w32_menu_display_help): Hide any tooltip window.
+ 
+       * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
+       to the left or to the right of the pointer, put it against
+       the left screen edge.
+       (x_frame_parms): Add missing braces around initializer.
+ 
+       * w32term.c (x_setup_relief_colors): Don't compute an image's
+       background color if it doesn't have a Pixmap.
+       (notice_overwritten_cursor): Don't depend on
+       output_cursor and updated_area.  Compare pixel coordinates with
+       window's cursor pixel coordinates.
+       (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
+       Call notice_overwritten_cursor with new arg list.
+       (show_mouse_face): Fix bug setting a row's mouse_face_p flag
+       unconditionally.
+       (x_draw_image_relief): Use predefined macro instead of
+       constant when the value of `tool_bar_button_relief' is negative.
+ 
+       * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
+ 
+ 2002-01-04  Richard M. Stallman  <address@hidden>
+ 
+       * xmenu.c (menu_highlight_callback): Hide any tooltip window.
+ 
+ 2002-01-03  Richard M. Stallman  <address@hidden>
+ 
+       * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
+       (Fkey_binding): Try the `keymap' property map first.
+       (Fdescribe_buffer_bindings): Show `keymap' property bindings before
+       minor mode bindings.
+ 
+ 2002-01-03  Kim F. Storm  <address@hidden>
+ 
+       * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
+ 
+ 2002-01-02  Richard M. Stallman  <address@hidden>
+ 
+       * keyboard.c (read_key_sequence): Handle the keymap property
+       before minor mode maps.
+ 
+       * editfns.c (Fformat): Update thissize from field_width
+       based on the actual width, in the string case.
+ 
+ 2002-01-01  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
+       when used as truth value to prevent gcc warnings.
+ 
+       * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
+       * w32proc.c: Include <config.h>.
+ 
+ 2002-01-01  Andreas Schwab  <address@hidden>
+ 
+       * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
+       not EMACS_INT, to make them compatible with DEFVAR_INT.
+       * lisp.h (max_specpdl_size): Adjust declaration.
+ 
+ 2002-01-01  Richard M. Stallman  <address@hidden>
+ 
+       * print.c (print_object): Test print_escape_nonascii only for
+       unibyte strings.
+       (PRINTPREPARE): Once again bind Qprint_escape_nonascii
+       when outputting to a multibyte buffer.
+ 
+ 2001-12-29  Richard M. Stallman  <address@hidden>
+ 
+       * print.c (print_object): In multibyte string, use hex escapes.
+       Use octal only for unibyte strings.
+       (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
+ 
+       * lread.c (read_escape): New arg BYTEREP for reporting whether
+       escape forces unibyte or multibyte.
+       (read1): When reading a string, take note of that info.
+ 
+ 2001-12-29  Ken Raeburn  <address@hidden>
+ 
+       * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
+       comparison to test lisp value returned by Fget.
+ 
+ 2001-12-29  Richard M. Stallman  <address@hidden>
+ 
+       * lisp.h (max_specpdl_size): Add declaration.
+ 
+       * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
+ 
+       * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
+       Handle modifier bits.  Correct typo in error message.
+ 
+ 2001-12-28  Richard M. Stallman  <address@hidden>
+ 
+       * abbrev.c: Use the plist of an abbrev for multiple params if nec.
+       (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
+       (Fdefine_global_abbrev, Fdefine_mode_abbrev):
+       Update calls to Fdefine_abbrev.
+       (write_abbrev): Update for changed data format.
+       Don't list "system" abbrevs.
+       (Fexpand_abbrev): Update use count with new data format.
+       (describe_abbrev): Update for changed data format.
+       (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
+ 
+       * config.in (HAVE_MBSINIT): Add #undef.
+ 
+       * strftime.c (mbsinit): Define as no-op if not available.
+ 
+       * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
+       (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
+ 
+       * keymap.c (Flookup_key): Error message if key has wrong data type.
+       (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
+       (exclude_key): New variable.
+ 
+ 2001-12-28  Gerd Moellmann  <address@hidden>
+ 
+       * xterm.c (x_setup_relief_colors): Don't compute an image's
+       background color if it doesn't have a Pixmap.
+ 
+       * xterm.c (notice_overwritten_cursor): Don't depend on
+       output_cursor and updated_area.  Compare pixel coordinates with
+       window's cursor pixel coordinates.
+       (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
+       Call notice_overwritten_cursor with new arg list.
+       (show_mouse_face): Fix bug setting a row's mouse_face_p flag
+       unconditionally.
+ 
+       * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
+       height of the cursor line to the amount to scroll.
+ 
+ 2001-12-27  Richard M. Stallman  <address@hidden>
+ 
+       * intervals.c (set_point_both): The position after an invisible,
+       intangible character is not an acceptable stopping point.
+ 
+ 2001-12-27  Ken Raeburn  <address@hidden>
+ 
+       * window.c (enlarge_window): In new preserve_before code, convert
+       CURBEG from lisp object to integer before doing arithmetic.
+ 
+ 2001-12-27  Richard M. Stallman  <address@hidden>
+ 
+       * bytecode.c (Fbyte_code): Undo previous change.
+ 
+ 2001-12-26  Kim F. Storm  <address@hidden>
+ 
+       * keyboard.c (record_char): Ignore duplicate help-echo events only
+       separated by mouse-movement.  When tracking mouse, only record
+       first and last mouse-movement event in same window.
+       Don't record mouse-movement events in keyboard macros.
+ 
+ 2001-12-25  Richard M. Stallman  <address@hidden>
+ 
+       * window.c (enlarge_window): New arg PRESERVE_BEFORE.  Callers changed.
+       (Fenlarge_window): New arg PRESERVE_BEFORE.
+ 
+       * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
+       instead of Fstring_as_unibyte.
+ 
+ 2001-12-22  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       The following changes remove mocklisp support:
+ 
+       * mocklisp.h, mocklisp.c: Files removed.
+ 
+       * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
+       `Qmocklisp' and `Qmocklisp_arguments'.
+       Remove prototype of syms_of_mocklisp.
+ 
+       * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
+ 
+       * callint.c: Do not include mocklisp.h.
+       (Fcall_interactively): Do not test for mocklisp case.
+ 
+       * eval.c: Remove variables `Qmocklisp_arguments',
+       `Vmocklisp_arguments' and `Qmocklisp'.  Remove prototype of ml_apply.
+       (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
+       Do not test for mocklisp case.
+       (Fwhile): Remove unused variable `tem'.
+       (syms_of_eval): Remove variable `moclisp-arguments'.
+ 
+       * data.c (wrong_type_argument): Remove mocklisp case.
+ 
+       * doc.c (Fdocumentation): Remove mocklisp case.
+ 
+       * emacs.c (main): Do not call syms_of_mocklisp.
+ 
+ 2001-12-21  Richard M. Stallman  <address@hidden>
+ 
+       * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
+       to the left or to the right of the pointer, put it against
+       the left screen edge.
+ 
+ 2001-12-21  Eli Zaretskii  <address@hidden>
+ 
+       * Makefile.in (distclean): Remove .gdbinit if we are building
+       outside the source tree.
+ 
+ 2001-12-19  Eli Zaretskii  <address@hidden>
+ 
+       * w32.c (emacs_root_dir): New function.
+ 
+       * msdos.c (emacs_root_dir): New function.
+ 
+       * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
+       of the current drive as the fallback for default_directory.
+ 
+       * dired.c (file_name_completion): Run the elements of
+       completion-ignored-extensions through ENCODE_FILE.
+ 
+       * lisp.h (scmp): Remove prototype, since it's now a static
+       function private to dired.c.
+ 
+ 2001-12-18  Richard M. Stallman  <address@hidden>
+ 
+       * dired.c (scmp): Function moved from minibuf.c.
+       Delete multibyte handling--used only on encoded strings.
+ 
+       * minibuf.c (scmp): Function moved to dired.c.
+ 
+       * fns.c (merge): Add QUIT call.
+ 
+ 2001-12-18  Dave Love  <address@hidden>
+ 
+       * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
+       language/georgian.el.
+ 
+ 2001-12-18  Eli Zaretskii  <address@hidden>
+ 
+       * Makefile.in (lisp, shortlisp): Synchronize with changes to
+       lisp/Makefile.in:DONTCOMPILE.
+ 
+ 2001-12-18  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * xdisp.c (window_box_height): Do not return negative values.
+       From Gerd Moellmann <address@hidden>.
+ 
+       * keyboard.c (head_table): Add missing braces around initializer.
+ 
+       * term.c (keys): Likewise.
+ 
+       * xfns.c (x_frame_parms, visual_classes): Likewise.
+ 
+ 2001-12-17  Sam Steingold  <address@hidden>
+ 
+       * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
+       patch (COMPOSING_P, not COMPOSING).
+ 
+ 2001-12-17  Richard M. Stallman  <address@hidden>
+ 
+       * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
+ 
+       * coding.c (code_convert_region): Update coding->cmp_data->char_offset
+       before calling decode_coding.
+ 
+       * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
+ 
+       * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
+       instead of only for COMPOSITION_DISABLED.
+ 
+ 2001-12-16  Richard M. Stallman  <address@hidden>
+ 
+       * alloc.c (pure_alloc): After overflow, allocate just a small block.
+ 
+       * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
+ 
+       * buffer.h (struct buffer): New field `display_error_modiff'.
+       * buffer.c (reset_buffer): Initialize `display_error_modiff'.
+ 
+       * window.c (Frecenter): Clear display_error_modiff field.
+ 
+       * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
+       Call redisplay_window, but not if display_error_modiff field says no.
+       (redisplay_window_error): New function.
+       (displayed_buffer): New variable.
+       (redisplay_internal, redisplay_windows): Call the new functions
+       instead of redisplay_window directly.
+ 
+ 2001-12-15  Richard M. Stallman  <address@hidden>
+ 
+       * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
+ 
+ 2001-12-14  Andrew Innes  <address@hidden>
+ 
+       * makefile.w32-in (EMACSLOADPATH): Define.
+       ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
+       (bootstrap-temacs): Remove dependency on bootstrap-clean.
+ 
+ 2001-12-13  Eli Zaretskii  <address@hidden>
+ 
+       * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
+       parameter have a numeric value all the time.
+ 
+       * w32fns.c (x_report_frame_params): Likewise.
+ 
+ 2001-12-12  Richard M. Stallman  <address@hidden>
+ 
+       * fileio.c (Fwrite_region): Doc fix.
+ 
+       * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
+       (redisplay_internal): Call clear_image_cache only for window terminals.
+ 
+ 2001-12-12  Gerd Moellmann  <address@hidden>
+ 
+       * xdisp.c (move_it_vertically_backward): Change heuristic
+       for the case that we didn't move far enough initially.
+ 
+       * window.c (Frecenter): Simplify computation in the case of window
+       system frames and ARG < 0; use window_box_height.
+ 
+ 2001-12-11  Richard M. Stallman  <address@hidden>
+ 
+       * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
+       * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
+ 
+ 2001-12-11  Andrew Innes  <address@hidden>
+ 
+       * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
+       arg is negative.
+ 
+ 2001-12-11  Richard M. Stallman  <address@hidden>
+ 
+       * m/hp800.h: Split the __hpux conditional into the parts
+       that are right for GNU/Linux too and the parts that are not.
+       Use the former if GNU_LINUX.
+       (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
+ 
+       * s/gnu-linux.h (GNU_LINUX): Defined.
+ 
+ 2001-12-11  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * macros.c, msdos.c, w16select.c: Change doc-string comments to
+       `new style' [w/`doc:' keyword].
+ 
+ 2001-12-10  Jason Rumney  <address@hidden>
+ 
+       * w32menu.c (w32_free_submenu_strings): Clear menu item struct
+       before using.
+ 
+ 2001-12-09  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
+       keyword].
+ 
+ 2001-12-09  Eli Zaretskii  <address@hidden>
+ 
+       * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
+ 
+       * s/hpux10.h (srand48): Don't undefine.
+ 
+ 2001-12-09  Jason Rumney  <address@hidden>
+ 
+       * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
+       Add     comment to explain where the struct came from.
+       (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
+       (add_menu_item): Process pop-up menus first to avoid memory leak.
+       (add_menu_item, w32_menu_display_help): Use `help' field as
+       Lisp_Object.
+       (w32_free_submenu_strings): Only free owner-drawn strings.
+ 
+ 2001-12-09  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * COPYING: Moved back.
+ 
+       * charset.c (char_to_string_1, translate_char, Fdefine_charset):
+       Add parentheses around && within ||.
+ 
+       * indent.c (compute_motion): Likewise.
+ 
+       * intervals.c (merge_properties_sticky): Likewise.
+ 
+       * coding.c (setup_coding_system, shrink_encoding_region)
+       (Fdecode_sjis_char): Likewise.
+ 
+ 2001-12-07  Andreas Schwab  <address@hidden>
+ 
+       * xdisp.c (display_mode_element): Don't read past end of string if
+       it ends with '%'.
+ 
+       * alloc.c (inhibit_garbage_collection): Don't exceed value an int
+       can hold.
+ 
+       * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
+       Rename from most_positive_fixnum and most_negative_fixnum, resp., and
+       type changed to Lisp_Object.
+       (syms_of_data): DEFVAR_LISP them.
+ 
+ 2001-12-07  Richard M. Stallman  <address@hidden>
+ 
+       * callproc.c (init_callproc): Set Vdata_directory based on the source
+       location whenever Emacs was run uninstalled.
+ 
+ 2001-12-06  Paul Eggert  <address@hidden>
+ 
+       * config.in (HAVE_WORKING_VFORK): New #undefs.
+       * process.c (create_process):
+       Use HAVE_WORKING_VFORK, not HAVE_VFORK.
+       * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
+       * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
+       * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
+       * m/intel386.h (HAVE_VFORK): Likewise.
+       * m/mips-siemens.h (HAVE_VFORK): Likewise.
+       * m/mips.h (HAVE_VFORK): Likewise.
+       * s/freebsd.h (vfork): Remove #define.
+       * s/lynxos.h (HAVE_VFORK): Remove #undef.
+       * s/usg5-4-2.h: Fix comment about vfork.
+ 
+ 2001-12-06  Richard M. Stallman  <address@hidden>
+ 
+       * s/hpux10.h (random): Add undef.
+       (HAVE_RANDOM): Define it just once.
+ 
+ 2001-12-06  Stefan Monnier  <address@hidden>
+ 
+       * eval.c: Undo last change: the standard syntax is not wanted.
+ 
+ 2001-12-06  Eli Zaretskii  <address@hidden>
+ 
+       * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
+       scroll bars of the frame before deleting the frame itself.  If the
+       frame has a widget, delete the frame with XtDestroyWidget, and do
+       not call XDestroyWindow before that.
+ 
+ 2001-12-06  Kim F. Storm  <address@hidden>
+ 
+       * xfns.c (x_report_frame_params): Return actual fringe widths.
+ 
+       * w32fns.c (x_report_frame_params): Return actual fringe widths.
+ 
+ 2001-12-05  Andrew Innes  <address@hidden>
+ 
+       * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
+       excessively large.
+ 
+       * insdel.c (make_gap_larger): New function.
+       (make_gap_smaller): New function.
+       (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
+       Call make_gap_smaller if arg is negative.
+ 
+ 2001-12-04  Stefan Monnier  <address@hidden>
+ 
+       * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
+       Pass a dummy argument when calling interrupt_signal.
+       (parse_menu_item): Mark disabled items before checking for empty def.
+       (read_char_minibuf_menu_prompt): Make safety more visible.
+       (read_key_sequence): Add a `first_unbound' variable.
+       Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
+       unbound prefix as soon as we can detect it.
+ 
+       * doc.c (Fsnarf_documentation): Add prototype.
+       (get_doc_string): Handle negative arguments.
+       (Fdocumentation): Use AREF and ASIZE.
+       Move the calls to get_doc_string to a single place.
+       Don't confuse an interactive-spec for a docstring reference.
+       (Fdocumentation_property): Take advantage of the fact that
+       get_doc_string now ignores the sign of the docstring position.
+ 
+       * eval.c: Use standard syntax for usage in docstrings.
+ 
+ 2001-12-03  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief` an option.
+ 
+ 2001-12-02  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * xterm.c (x_draw_image_relief): Use predefined macro instead of
+       constant when the value of `tool_bar_button_relief' is negative.
+ 
+ 2001-12-02  Richard M. Stallman  <address@hidden>
+ 
+       * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
+       (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
+ 
+       * fileio.c (read_non_regular): Delete Fsignal call.
+ 
+ 2001-12-01  Stefan Monnier  <address@hidden>
+ 
+       * lisp.h (run_hook_list_with_args): Undo last change.
+ 
+ 2001-12-01  Gerd Moellmann  <address@hidden>
+ 
+       * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
+ 
+ 2001-12-01  Jason Rumney  <address@hidden>
+ 
+       * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
+ 
+       * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
+       [!WM_MOUSELEAVE]: Define.
+ 
+       * w32menu.c (current_popup_menu, get_menu_item_info):
+       (set_menu_item_info): New vars.
+       (set_frame_menubar): Doc fix clarifying GC interaction with menus.
+       (w32_menu_show): Set current_popup_menu.
+       (add_menu_item): Allocate new strings for owner-drawn menu items
+       and help strings.
+       Use owner-draw for disabled menu items again.
+       (w32_menu_display_help): Ignore owner-drawn items and popup menus.
+       (w32_free_submenu_strings, w32_free_menu_strings): New functions.
+ 
+       * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
+       (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
+       <WM_EXITMENULOOP>: Free menu strings.
+       <WM_MOUSELEAVE>: Stop tracking mouse.
+       (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
+ 
+       * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
+       and mouse face.
+ 
+ 2001-12-01  Kim F. Storm  <address@hidden>
+ 
+       The following changes add left-fringe and right-fringe
+       frame parameters to adjust fringe widths, or remove one or
+       both fringes.
+ 
+       * frame.h (struct frame): Remove trunc_area_pixel_width and
+       trunc_area_cols fields.
+       (Qleft_fringe, Qright_fringe): Declare.
+       (FRAME_RIGHT_FRINGE_WIDTH): New macro.
+ 
+       * frame.c (Qleft_fringe, Qright_fringe): New vars.
+       (syms_of_frame): Initialize them.
+ 
+       * window.c (coordinates_in_window): Handle separate left and right
+       fringe widths.
+ 
+       * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
+       and fringe_cols fields.
+       (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
+       (FRAME_X_FRINGE_COLS): Use fringe_cols field.
+       (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
+       (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
+       (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
+       (x_compute_fringe_widths): Add prototype.
+ 
+       * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
+       fill fringe evenly with small dashes.
+       (x_draw_fringe_bitmap): Clear background if necessary. Align and
+       clip the new ZV bitmap to avoid jitter between rows.
+       (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
+       background.  Don't draw fringe bitmaps if fringe width is zero.
+       (x_compute_fringe_widths): New function.
+       (x_new_font, x_set_window_size_1): Use it.
+ 
+       * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
+       (x_set_frame_parameters): Process `font' parameter before other
+       parameters as fringe widths depend on it.
+       (x_set_fringe_width): New function.
+       (x_figure_window_size): Use x_compute_fringe_widths.
+       (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
+       parameters.
+ 
+       * widget.c (set_frame_size): Use x_compute_fringe_widths.
+       (EmacsFrameSetCharSize): Ditto.
+ 
+       * w32term.h: Merged changes from xterm.h.
+       * w32term.c: Merged changes from xterm.c.
+       * w32fns.c: Merged changes from xfns.c.
+ 
+ 2001-11-29  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * COPYING: Removed.
+ 
+ 2001-11-29  Dave Love  <address@hidden>
+ 
+       * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
+       extra extra slot.
+       (detect_coding_mask): Fix call of detect_coding_iso2022.
+ 
+ 2001-11-29  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * fileio.c (file-name-coding-system)
+       (default-file-name-coding-system): Doc fix (links to referenced
+       variables added).
+ 
+ 2001-11-28  Stefan Monnier  <address@hidden>
+ 
+       * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
+       Add dummy uses of gcproN variables.
+ 
+       * category.c (describe_category, describe_category_1)
+       (Fdescribe_categories): Remove.  (Moved to lisp/help-fns.el.)
+       (syms_of_category): Don't defsubr Sdescribe_categories.
+ 
+ 2001-11-28  Richard M. Stallman  <address@hidden>
+ 
+       * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
+ 
+       * Makefile.in (lispdir): New variable, referring to build dir.
+       (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
+ 
+ 2001-11-28  Andrew Innes  <address@hidden>
+ 
+       * w32menu.c (w32_menu_display_help): Actually add the new argument
+       OWNER.
+ 
+ 2001-11-28  Jason Rumney  <address@hidden>
+ 
+       * w32menu.c (add_menu_item): Do not use owner-draw for disabled
+       menu items.  From David Ponce <address@hidden>.
+       (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
+       conditionally.
+       (w32_menu_display_help): New argument OWNER. Rewritten to store a
+       help event in the owner frame's keyboard buffer.
+ 
+       * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
+       (Fx_show_tip): Don't subtract last width from row width.
+ 
+       * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
+       (w32_read_socket): Use EQ to compare frames.
+ 
+ 2001-11-28  Gerd Moellmann  <address@hidden>
+ 
+       * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
+       OVERLAPS_P.
+ 
+ 2001-11-28  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * xdisp.c (message_dolog): Remove unused variables `gcpro2',
+       `gcpro3' and `gcpro4'.
+ 
+       * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
+ 
+ 2001-11-28  Stefan Monnier  <address@hidden>
+ 
+       * ccl.c: Use AREF and ASIZE.
+ 
+ 2001-11-27  Stefan Monnier  <address@hidden>
+ 
+       * lisp.h (run_hook_list_with_args): Remove.
+       (LIST_END_P): Fix call to wrong_type_argument.
+       (make_fixnum_or_float): Use EMACS_INT rather than int.
+ 
+ 2001-11-26  Stefan Monnier  <address@hidden>
+ 
+       * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
+       (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
+ 
+       * eval.c: Use AREF and ASIZE.
+       (Ffetch_bytecode): Add the file name to the error message.
+ 
+       * fileio.c (Ffind_file_name_handler): Give precedence to handlers
+       which match the end of the file-name.
+       (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
+       is not a valid env var, but leave it as is instead.
+ 
+       * keymap.c (access_keymap): Handle t bindings like nil bindings.
+       Make nil bindings in char-tables transparent.
+       (store_in_keymap): Turn a nil binding into a t binding for char-tables.
+ 
+ 2001-11-26  Richard M. Stallman  <address@hidden>
+ 
+       * textprop.c (set_text_properties_1): Allow START, END in either order.
+       Do nothing if range is empty.
+ 
+       * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
+ 
+       * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
+       (clean): Not here.
+ 
+ 2001-11-25  Stefan Monnier  <address@hidden>
+ 
+       * textprop.c (set_text_properties_1): Clearly mark that the
+       interval should not be empty.
+ 
+       * intervals.c (graft_intervals_into_buffer):
+       Don't call set_text_properties_1 on an empty interval.
+ 
+ 2001-11-25  Richard M. Stallman  <address@hidden>
+ 
+       * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
+ 
+       * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
+       don't lose the data in it.
+ 
+ 2001-11-25  Juanma Barranquero  <address@hidden>
+ 
+       * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
+ 
+       * buffer.c (Fkill_buffer): Use Frun_hooks, not Vrun_hooks.
+ 
+       * print.c (temp_output_buffer_setup): Use Frun_hooks, not Vrun_hooks.
+ 
+ 2001-11-25  Stefan Monnier  <address@hidden>
+ 
+       * xfaces.c (merge_face_heights): Coerce back to int explicitly.
+ 
+ 2001-11-25  Eli Zaretskii  <address@hidden>
+ 
+       * window.c (Fset_window_vscroll): Doc fix.  From Kalle Olavi
+       Niemitalo <address@hidden>.
+ 
+ 2001-11-25  Jason Rumney  <address@hidden>
+ 
+       * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
+ 
+       * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
+       (Fx_show_tip): Block input during frame creation.
+       (Fx_show_tip, Fx_hide_tip): Enable.
+ 
+ 2001-11-24  Richard M. Stallman  <address@hidden>
+ 
+       * lread.c (Fload): Detect recursive load error for more than 3
+       nestings of the same file.
+       (Vrecursive_load_depth_limit): Variable deleted.
+       (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
+ 
+ 2001-11-24  Jason Rumney  <address@hidden>
+ 
+       * xfns.c (compute_tip_xy): Initialize root_x and root_y from
+       mouse position if either left or top is not specified.
+ 
+       * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
+       <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
+       (my_create_tip_window, Fx_show_tip): Adjust size for external border.
+       (my_create_tip_window): Assign tip_window.
+       (x_create_tip_frame): Use same defaults as X.
+       (compute_tip_xy): Remove unused variable.  Use full screen width.
+       (Fx_show_tip): Do not double height. Call ShowWindow directly.
+ 
+       * w32term.c (x_after_update_window_line): Doc fix.
+       (w32_read_socket): Doc fix.  Avoid SET_FRAME_GARBAGED for tip
+       frames.
+       <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
+ 
+       * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
+       for all Windowed systems.
+ 
+ 2001-11-23  Eli Zaretskii  <address@hidden>
+ 
+       * msdos.c (IT_clear_screen): If the frame's faces are not yet
+       realized, use the initial screen colors to clear the screen.
+ 
+ 2001-11-23  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * textprop.c (Fset_text_properties): Remove unused variables
+       `unchanged', `prev_changed', `s' and `len'.
+ 
+       * search.c (Freplace_match): Remove unused variable `inslen'.
+ 
+       * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
+ 
+ 2001-11-22  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
+       (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
+       (my_create_tip_window): New function.
+       (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
+       (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
+ 
+ 2001-11-20  Jason Rumney  <address@hidden>
+ 
+       * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
+       (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
+ 
+       * w32fns.c (Vw32_system_coding_system): Remove.
+       (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
+ 
+ 2001-11-19  Stefan Monnier  <address@hidden>
+ 
+       * fileio.c (Fwrite_region): Move choose_write_coding_system to
+       after build_annotations.
+ 
+       * syntax.c (describe_syntax): Add dummy arg.
+       (describe_syntax_1): Update call to describe_vector.
+ 
+       * category.c (describe_category): Add dummy arg.
+       (describe_category_1): Update call to describe_vector.
+ 
+       * keymap.c (Fdescribe_vector): Add `describer' parameter.
+       (describe_command, describe_translation): Add dummy second param.
+       (describe_map): Call elt_describer with two arguments.
+       (describe_vector_princ): Add `fun' parameter.
+       Call it instead of the hardcoded `princ'.
+       (describe_vector): Add arg `args'.
+       Pass it as a new second argument to elt_describer.
+ 
+       * keymap.h (describe_vector): Update prototype.
+ 
+       * frame.c: Don't include keymap.h any more.
+       (keys_of_frame): Remove.
+ 
+       * lisp.h (keys_of_frame): Remove declaration.
+ 
+       * emacs.c (main): Don't call `keys_of_frame' any more.
+ 
+ 2001-11-14  Andreas Schwab  <address@hidden>
+ 
+       * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
+       if defined, 0 otherwise.
+       (MAP_FAILED): Define if not defined and use it to test mmap failure.
+       (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
+ 
+ 2001-11-19  Richard M. Stallman  <address@hidden>
+ 
+       * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
+ 
+ 2001-11-18  Jason Rumney  <address@hidden>
+ 
+       * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
+       (x_draw_bar_cursor): If the background color of the glyph under
+       the cursor equals the frame's cursor color, use the glyph's
+       foreground color for drawing the bar cursor.
+       (x_after_update_window_line): Clear internal border in different
+       circumstances.
+       (w32_set_vertical_scroll_bar): Check for width and height > 0.
+       (w32_draw_relief_rect): Correct relief by 1 pixel.
+       (x_set_glyph_string_background_width):
+       Set extends_to_end_of_line_p if the row's fill_line_p is set and
+       drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
+       (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
+       if cursor_in_non_selected_windows is false.
+       (show_mouse_face): Clean up.  Recognize overwritten cursor differently.
+       (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
+       Notice if cursor gets overwritten.
+       (notice_overwritten_cursor): Renamed from
+       note_overwritten_text_cursor.  Rewritten to take glyph widths
+       into account, and to take X positions as parameters.
+       (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
+       around call to x_draw_glyphs.
+       (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
+       `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
+       color to use for image glyph reliefs.
+       (x_draw_image_relief): Accept zero tool_bar_button_relief.
+       (glyph_rect): Remove unused variable `area'.
+ 
+       * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
+       some items.
+       (x_set_internal_border_width): Set frame garbaged when window
+       doesn't exist yet.
+       (Fx_create_frame): Accept zero tool_bar_button_relief.
+       (x_clear_image_1, four_corners_best, image_background)
+       (image_background_transparent): New functions.
+       (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
+       (gs_format): Add `:background' entry.
+       (lookup_image): Set IMG's background color if specified.
+       (pbm_load, xbm_load_image, png_load): Set IMG's background field
+       when appropriate.
+       (x_clear_image_1): Reset `background_valid' and
+       `background_transparent_valid' fields.
+       (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
+       calculating it here.  Set IMG's background_transparent field.
+       (enum xpm_keyword_index): Add XPM_BACKGROUND.
+       (enum png_keyword_index): Add PNG_BACKGROUND.
+       (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
+       (enum tiff_keyword_index): Add TIFF_BACKGROUND.
+       (enum gif_keyword_index): Add GIF_BACKGROUND.
+       (enum gs_keyword_index): Add GS_BACKGROUND.
+       (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
+       Pre-calculate image background color where necessary.
+       (x_create_x_image_and_pixmap, xbm_load, gs_load):
+       Use display info's n_cbits entry for screen depth.
+       (Fx_show_tip): Remove unused variables `buffer', `top',
+       `left', `max_width' and `max_height'.
+ 
+       * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
+ 
+ 2001-11-18  Gerd Moellmann  <address@hidden>
+ 
+       * puresize.h (BASE_PURESIZE): Increase to 750000.
+ 
+ 2001-11-18  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * frame.c (Fframe_live_p): Doc fix.
+ 
+ 2001-11-18  Richard M. Stallman  <address@hidden>
+ 
+       * xdisp.c (message_dolog_marker1, message_dolog_marker2)
+       (message_dolog_marker3): New static variables hold three markers.
+       (syms_of_xdisp): Initialize and staticpro them.
+       (message_dolog): Use message_dolog_marker1..3 instead of
+       allocating markers each time.  Unchain them when done.
+ 
+ 2001-11-17  Richard M. Stallman  <address@hidden>
+ 
+       * doc.c (Fsnarf_documentation): Doc fix.
+ 
+ 2001-11-17  Andreas Schwab  <address@hidden>
+ 
+       * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
+ 
+ 2001-11-17  Richard M. Stallman  <address@hidden>
+ 
+       * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
+ 
+ 2001-11-17  Jason Rumney  <address@hidden>
+ 
+       * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
+ 
+ 2001-11-17  Gerd Moellmann  <address@hidden>
+ 
+       * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
+       with invalid position.
+ 
+ 2001-11-16  Richard M. Stallman  <address@hidden>
+ 
+       * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
+ 
+       * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
+       * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
+       * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
+ 
+       * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
+ 
+ 2001-11-16  Stefan Monnier  <address@hidden>
+ 
+       * fileio.c (build_annotations): Split off the tail.
+       (build_annotations_2): New fun.  Extracted from build_annotations.
+       (Fwrite_region): Split the call to build_annotations into two
+       calls to build_annotations and build_annotations_2.
+ 
+ 2001-11-16  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
+       clear_waiting_for_input with argument.
+ 
+       * xterm.h (x_update_cursor): Remove duplicated prototype.
+ 
+       * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
+ 
+       * xterm.c (waiting_for_input): Remove unnecessary declaration.
+ 
+       * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
+ 
+ 2001-11-16  Stefan Monnier  <address@hidden>
+ 
+       * fileio.c (choose_write_coding_system): New fun, extracted
+       from Fwrite_region.
+       (Fwrite_region): Use it.
+ 
+       * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
+       (funcall_lambda, run_hook_with_args): Make static and add prototype.
+       (ml_apply, find_handler_clause): Add prototype.
+ 
+ 2001-11-16  Eli Zaretskii  <address@hidden>
+ 
+       * config.in: Add #undef HAVE_COFF_H.
+ 
+       * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
+       Required for ISC 4.1.
+ 
+ 2001-11-16  Eli Zaretskii  <address@hidden>
+ 
+       * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1.  Reported by
+       Andrew Wiseman <address@hidden>.
+ 
+ 2001-11-16  Kim F. Storm  <address@hidden>
+ 
+       The following changes are made to clean up the various internal
+       references to the fringes to actually use the term `fringe' for
+       them.  Previously, they were called `flags areas', `bitmap areas',
+       `left/right side of windows', or implicitly as `flags' or
+       `bitmaps':
+ 
+       * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
+       Comments fixed. Use renamed symbols.
+ 
+       * dispnew.c: Comment fix. Use renamed symbols.
+ 
+       * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
+       (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
+       (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
+ 
+       * msdos.c: Comment fix.
+ 
+       * w32fns.c: Use renamed symbols.
+ 
+       * w32term.c: Comment fixes. Use renamed symbols.
+       (fringe_bitmap_type): Renamed from bitmap_type.
+       (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
+       (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
+       (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
+ 
+       * w32term.h: Comment fixes. Use renamed symbols.
+       (fringes_extra): Renamed from flags_areas_extra.
+       (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
+       (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
+       (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
+       (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
+       (FRAME_X_LEFT_FRINGE_WIDTH):
+       Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
+       (FRAME_X_RIGHT_FRINGE_WIDTH):
+       Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
+ 
+       * widget.c: Use renamed symbols.
+ 
+       * window.c: Comment fixes. Use renamed symbols.
+       (coordinates-in-window-p): Doc fix.
+ 
+       * xdisp.c: Comment fixes. Use renamed symbols.
+ 
+       * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
+ 
+       * xfns.c: Use renamed symbols.
+ 
+       * xterm.c: Comment fixes. Use renamed symbols.
+       (fringe_bitmap_type): Renamed from bitmap_type.
+       (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
+       (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
+       (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
+ 
+       * xterm.h: Comment fixes. Use renamed symbols.
+       (fringes_extra): Renamed from flags_areas_extra.
+       (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
+       (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
+       (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
+       (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
+       (FRAME_X_LEFT_FRINGE_WIDTH):
+       Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
+       (FRAME_X_RIGHT_FRINGE_WIDTH):
+       Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
+ 
+ 2001-11-15  Jason Rumney  <address@hidden>
+ 
+       * w32menu.c (add-menu-item): Make help_echo and radio buttons
+       work for most menu items.  From David Ponce
+       <address@hidden>.
+ 
+ 2001-11-15  Gerd Moellmann  <address@hidden>
+ 
+       * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
+       Some x_set_* function expect to be called even if old and new
+       value are equal.
+ 
+       * xdisp.c (build_desired_tool_bar_string): Accept zero
+       tool_bar_button_relief.
+ 
+       * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
+ 
+       * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
+ 
+       * xterm.c (x_draw_bar_cursor): If the background color of the
+       glyph under the cursor equals the frame's cursor color, use
+       the glyph's foreground color for drawing the bar cursor.
+ 
+       * dispnew.c (direct_output_forward_char): Fix character/byte
+       position comparison.
+ 
+ 2001-11-15  Miles Bader  <address@hidden>
+ 
+       * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
+       (Fdelete_field, Ffield_string, Ffield_string_no_properties):
+       Update arguments to find_field.
+       (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
+       (Fconstrain_to_field): Use LIMIT arg to shorten search time.
+       * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
+       * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
+ 
+ 2001-11-14  Richard M. Stallman  <address@hidden>
+ 
+       * editfns.c (Fpropertize): Allow call with 1 arg.
+ 
+       * dispextern.h (image_background, image_background_transparent):
+       Conditionalize on HAVE_X_WINDOWS.
+ 
+ 2001-11-13  Richard M. Stallman  <address@hidden>
+ 
+       * print.c (Fprin1_to_string): Doc fix.
+ 
+       * sunfns.c (Fsun_change_cursor_icon): Doc fix.
+ 
+       * floatfns.c (Fceiling, Ffloor): Doc fixes.
+ 
+       * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
+ 
+       * fileio.c (Ffile_accessible_directory_p): Doc fix.
+ 
+       * eval.c (syms_of_eval): Doc fix.
+ 
+       * coding.c (syms_of_coding): Doc fix.
+ 
+       * doc.c (Fsnarf_documentation): Doc fix.
+ 
+       * dispnew.c (syms_of_display): Doc fix.
+ 
+       * category.c (Fget_unused_category): Doc fix.
+ 
+       * buffer.c (syms_of_buffer): Doc fixes.
+ 
+ 2001-11-14  Eli Zaretskii  <address@hidden>
+ 
+       * print.c (prin1, print): Doc fix.
+ 
+ 2001-11-14  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * fontset.h: Remove declarations of variables
+       `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
+ 
+       * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
+       `Vclip_large_size_font'.
+ 
+ 2001-11-13  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c: Doc fix.
+ 
+ 2001-11-13  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * xfaces.c (Fface_attributes_as_vector): Doc fix.
+ 
+       * fns.c: Doc fix.
+ 
+       * emacs.c: Doc fix.
+ 
+       * coding.c: Doc fix.
+ 
+       * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
+       * fontset.c, insdel.c, keymap.c: Change doc-string comments to
+       `new style' [w/`doc:' keyword].
+ 
+ 2001-11-12  Richard M. Stallman  <address@hidden>
+ 
+       * xterm.c (XTread_socket): Don't update focus for EnterNotify or
+       LeaveNotify events.  Only FocusIn and FocusOut do that now.
+       (x_display_and_set_cursor): Do display hollow cursors in active
+       minibuffer windows when they are not selected.
+ 
+ 2001-11-12  Jason Rumney  <address@hidden>
+ 
+       * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
+       * w32term.c: Change doc-string comments to `new style'.
+       [w/`doc:' keyword]. Doc fixes.
+ 
+       * w32fns.c: Don't define max.
+       (Fx_open_connection): Only execute once.
+ 
+ 2001-11-12  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * ccl.c: Change macros to use do-while block instead of if-else.
+       Use braces to follow GNU Coding Standards.
+ 
+ 2001-11-11  Richard M. Stallman  <address@hidden>
+ 
+       * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
+ 
+       * lread.c (read_escape): Use end_of_file_error for reporting eof.
+ 
+       * insdel.c (replace_range): Use adjust_markers_for_replace
+       instead of adjust_markers_for_delete and adjust_markers_for_insert.
+ 
+       * intervals.h: Declare set_text_properties and set_text_properties_1.
+ 
+       * textprop.c (set_text_properties_1): New subroutine
+       broken out of set_text_properties.
+       (set_text_properties): Use set_text_properties_1.
+ 
+       * intervals.c (graft_intervals_into_buffer):
+       Use set_text_properties_1 to clear out properties.
+ 
+       * search.c (Freplace_match): Use replace_range to insert
+       and delete.  Don't request property inheritance from
+       surrounding text.
+ 
+ 2001-11-10  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
+       vertical fonts. Allow them if face name is explicitly specified.
+       Do not give up if we find a font that cannot be converted to an xlfd.
+ 
+ 2001-11-10  Gerd Moellmann  <address@hidden>
+ 
+       * unexelf.c (unexec): Use mmap/munmap to allocate buffers
+       instead of malloc/free.
+ 
+ 2001-11-09  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * xfaces.c (merge_face_vectors): Use braces to follow GNU
+       Coding Standards.
+       (Finternal_set_lisp_face_attribute): Likewise.
+ 
+       * buffer.c (Fbury_buffer): Likewise.
+ 
+       * indent.c (current_column_1): Remove unused variable `prev_col'.
+ 
+       * coding.c (encode_coding): Use precomputed value of `src'.
+       (encode_coding): Remove unused variable `src_end'.
+       (code_convert_region): Remove unused variables `count'.
+ 
+ 2001-11-07  Jason Rumney  <address@hidden>
+ 
+       * w32term.c (x_display_and_set_cursor): Do not move system caret
+       if cursor_glyph is NULL.
+ 
+ 2001-11-07  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * keymap.c (access_keymap): Fix compilation error.
+ 
+ 2001-11-07  Miles Bader  <address@hidden>
+ 
+       * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
+ 
+ 2001-11-07  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * intervals.c (graft_intervals_into_buffer):
+       Remove #ifdef'd-out code.
+       (graft_intervals_into_buffer): Remove unused variable `middle'.
+ 
+       * lread.c (Feval_region): Remove obsolete #ifdef'd-out
+       code (eval-current-buffer).
+       Change doc-string comments to `new style' [w/`doc:' keyword].
+ 
+ 2001-11-06  Richard M. Stallman  <address@hidden>
+ 
+       * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
+ 
+ 2001-11-06  Stefan Monnier  <address@hidden>
+ 
+       * lread.c (read1): Fix behavior with nested backquoting.
+ 
+       * keyboard.c (make_lispy_event): Check integerness and fix
+       Lisp_Object/int mixup.
+ 
+ 2001-11-06  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * fns.c (copy_hash_table): Remove unused variable `v'.
+ 
+       * fontset.c (fontset_font_pattern): Remove unused variable
+       `family_registry'.
+ 
+       * indent.c (current_column_1): Remove unused variable `prev_col'.
+ 
+ 2001-11-05  Richard M. Stallman  <address@hidden>
+ 
+       * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
+ 
+       * buffer.c (Fkill_buffer): Don't delete auto save file
+       if buffer is modified.
+ 
+ 2001-11-05  Andrew Innes  <address@hidden>
+ 
+       * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
+       CHECK_NUMBER_CDR.
+ 
+ 2001-11-05  Richard M. Stallman  <address@hidden>
+ 
+       * unexelf.c (unexec): Minor changes; clean up comments.
+ 
+ 2001-11-05  Sam Steingold  <address@hidden>
+ 
+       * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
+ 
+ 2001-11-05  Andreas Schwab  <address@hidden>
+ 
+       * sound.c (sound_perror): Save errno from being clobbered.
+ 
+ 2001-11-05  Dale Hagglund  <address@hidden>
+ 
+       * unexelf.c (unexec): Don't use `mmap'.  Instead, read and write
+       the program image directly.
+ 
+ 2001-11-05  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * buffer.h (Fbuffer_local_value): Add prototype.
+ 
+ 2001-11-04  Richard M. Stallman  <address@hidden>
+ 
+       * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
+       and CHECK_BUFFER.
+ 
+       * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
+       (record_char): Likewise.
+ 
+       * keyboard.c (make_lispy_event): Don't insist a drag event must
+       move to a different buffer position.  Instead, check for moving at
+       least double_click_fuzz.
+ 
+       * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
+ 
+       * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
+ 
+       * indent.c (current_column_1, Fmove_to_column): Separate the code
+       for display-table glyphs from the code for buffer text, to fix
+       bugs in the former.
+ 
+ 2001-11-04  Michael Welsh Duggan  <address@hidden>
+ 
+       * buffer.c (Fbuffer_local_value): New function.
+       (syms_of_buffer): Defsubr it.
+ 
+       * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
+       value of `cursor-in-non-selected-windows'.
+ 
+       * lisp.h (Qcursor_in_non_selected_windows): New declaration.
+       * xdisp.c (Qcursor_in_non_selected_windows): New variable.
+       (syms_of_xdisp): Initialize it.
+ 
+ 2001-11-04  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * xfns.c (Fx_create_frame): Doc fix.
+ 
+       * coding.c: Change doc-string comments to `new style' [w/`doc:'
+       keyword].
+ 
+       * eval.c (top_level_value, top_level_set): Remove commented and
+       #ifdef'd-out code.
+       (Fdefvar): Fix usage in doc-string.
+ 
+ 2001-11-03  Richard M. Stallman  <address@hidden>
+ 
+       * xfns.c: Include unistd.h, if it exists.
+ 
+       * editfns.c: Move the include of ctype.h after unistd.h.
+ 
+       * gmalloc.c: Test BROKEN_PROTOTYPES.
+ 
+ 2001-11-03  Ken Raeburn  <address@hidden>
+ 
+       * lisp.h (CHECK_STRING_CAR): New macro.
+       * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
+       treating XCAR and XCDR as lvalues.
+       (openp): Use CHECK_STRING_CAR.
+       (read_list): Use XSETCDR instead of treating XCDR as lvalue.
+ 
+ 2001-11-03  Eli Zaretskii  <address@hidden>
+ 
+       * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
+       (SIGMASKTYPE): Define.
+ 
+       * syssignal.h (sigunblock): Don't define if already defined.
+ 
+ 2001-11-02  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * eval.c (debugger_may_continue, Vdebug_ignored_errors)
+       (call_debugger, Fcondition_case, skip_debugger, unbind_to):
+       Fix typos in comments.
+ 
+       * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
+       and #ifdef'd-out code.
+       Fix and reindent comments.
+ 
+       * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
+ 
+       * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
+       argument `i' in macros.
+ 
+       * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
+       `i' in macros.
+ 
+       * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
+       (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
+       (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
+       (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
+       (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
+       (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
+       (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
+       (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
+       in macros.
+ 
+       * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
+       * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
+       * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
+       * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
+       * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
+       * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
+       * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
+       * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
+       * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
+       (remove unused second argument).
+ 
+ 2001-11-02  Stefan Monnier  <address@hidden>
+ 
+       * syntax.c (describe_syntax): New wrapper.
+       (Finternal_describe_syntax_value): Rename from describe_syntax.
+       Don't insert space at front and \n at the end.
+       (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
+ 
+       * regex.c (re_wctype): Try to fix some warnings.
+       (regcomp, regexec): Don't forget the __restrict.
+ 
+ 2001-11-02  Richard M. Stallman  <address@hidden>
+ 
+       * textprop.c (Fget_char_property): Doc fix.
+ 
+ 2001-11-02  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * process.c (Fstart_process): Add usage to doc-string.
+ 
+       * data.c (Fsetq_default): Ditto.
+ 
+       * callint.c (Finteractive): Ditto.
+ 
+ 2001-11-01  Stefan Monnier  <address@hidden>
+ 
+       * macros.c: Don't include keymap.h any more.
+ 
+ 2001-11-01  Richard M. Stallman  <address@hidden>
+ 
+       * data.c (Fmake_local_variable): Doc fix.
+ 
+       * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
+       (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
+ 
+       * keymap.c (Fdescribe_buffer_bindings): Print character property
+       bindings along with or instead of the buffer local map.
+       Make the overriding maps override what they should.
+ 
+ 2001-11-01  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * window.c (grow_mini_window): Fix typo in comment.
+ 
+ 2001-11-01  Gerd Moellmann  <address@hidden>
+ 
+       * xterm.c (x_scroll_bar_create): Check for width and height > 0.
+       (XTset_vertical_scroll_bar): Likewise.
+ 
+       * xfns.c (x_build_heuristic_mask): Use four_corners_best
+       instead of IMAGE_BACKGROUND.
+ 
+       * xfns.c (four_corners_best): Reindent.
+ 
+       * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
+       Handle :box so that it is possible to specify sexprs.
+ 
+ 2001-10-31  Eli Zaretskii  <address@hidden>
+ 
+       * s/hpux11.h: New file.
+ 
+ 2001-10-31  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * emacs.c (USAGE1): Show command line option --no-window-system
+       instead of --no-windows in usage.
+       (standard_args): Rename --no-windows to --no-window-system.
+       (bug_reporting_address): Follow Emacs coding conventions.
+ 
+       * eval.c (Fcommandp): Doc fix.
+       Change doc-string comments to `new style' [w/`doc:' keyword].
+ 
+       * frame.c (Fframe_live_p): Doc fix.
+ 
+       * buffer.c (selective-display-ellipses): Doc fix.
+ 
+ 2001-10-31  Gerd Moellmann  <address@hidden>
+ 
+       * lread.c (to_multibyte): Fix computation of new read_buffer_size.
+ 
+       * xfaces.c (realize_x_face): If C is not a single-byte character,
+       set the face's colors_copied_bitwise_p instead of the defaulted_p
+       members which have a different meaning.
+       (free_face_colors): Do nothing for a face whose colors have been
+       copied bitwise.
+ 
+       * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
+ 
+ 2001-10-31  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * marker.c, mocklisp.c: Change doc-string comments to `new style'
+       [w/`doc:' keyword].
+ 
+ 2001-10-31  Gerd Moellmann  <address@hidden>
+ 
+       * fns.c (require_unwind): Return Lisp_Object.
+ 
+ 2001-10-31  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
+       (last-input-char): Revert doc-string to be the same as the
+       doc-string of `last-input-event'.
+ 
+       * xdisp.c: Fix typos in comments.
+ 
+ 2001-10-31  Gerd Moellmann  <address@hidden>
+ 
+       * window.c (grow_mini_window): Handle case that the root
+       window is already smaller than the nominal mininum height.
+ 
+ 2001-10-30  Stefan Monnier  <address@hidden>
+ 
+       * emacs.c (main): Don't call keys_of_macros any more.
+ 
+       * lisp.h (keys_of_macros): Remove.
+ 
+       * macros.c (keys_of_macros): Remove.
+ 
+       * xfaces.c (Fface_attribute_relative_p): Declare args.
+ 
+ 2001-10-30  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
+       (enum_font_cb2): Ignore fonts with vertical orientation.
+ 
+ 2001-10-30  Richard M. Stallman  <address@hidden>
+ 
+       * keyboard.c (Finput_pending_p): Doc fix.
+ 
+ 2001-10-30  Gerd Moellmann  <address@hidden>
+ 
+       * xterm.c (x_after_update_window_line): Don't run the code
+       clearing in borders for rows whose visible height is 0.
+ 
+       * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
+       resized_p flag is set.  If not set, use the much less flickering
+       method previously used.
+ 
+       * dispnew.c (change_frame_size_1): Set frame's resized_p.
+ 
+       * frame.h (struct frame) <resized_p>: New member.
+ 
+       * lread.c (to_multibyte): Ensure read_buffer is at least twice
+       as large as the number of bytes to convert.
+ 
+       * lread.c (to_multibyte): New function.
+       (read1): Use it.
+ 
+ 2001-10-30  Eli Zaretskii  <address@hidden>
+ 
+       * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
+ 
+ 2001-10-30  Gerd Moellmann  <address@hidden>
+ 
+       * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
+       (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
+       if the row's fill_line_p is set and drawing the last glyph with
+       DRAW_IMAGE_{RAISED,SUNKEN}.
+ 
+       * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
+ 
+ 2001-10-29  Stefan Monnier  <address@hidden>
+ 
+       * xmenu.c: Include coding.h and charset.h.
+       (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
+       (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
+       (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
+       Explicitly set wv->help.  Use `TRUE' rather than `True'.
+       (menu_help_callback): Use empty_string.
+ 
+       * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
+       (Fx_popup_dialog): Explicitly init f.
+       (w32_menu_display_help): Use empty_string.
+ 
+ 2001-10-29  Richard M. Stallman  <address@hidden>
+ 
+       * fns.c (Frequire): Detect recursive try to require the same
+       feature 3 or more levels deep, and get error.
+       (require_unwind): New subroutine.
+       (require_nesting_list): New variable.
+       (syms_of_fns): Init and staticpro it.
+ 
+       * print.c (print_object): Clarify indication of insertion type.
+ 
+ 2001-10-29  Eli Zaretskii  <address@hidden>
+ 
+       * coding.c (syms_of_coding): Document that locale-coding-system is
+       used for decoding input on X.
+ 
+       * window.c (Fscroll_left, Fscroll_right): Doc fix.
+ 
+ 2001-10-29  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * keyboard.c (Finput_pending_p): Fix typo in doc-string.
+       (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
+ 
+ 2001-10-29  Gerd Moellmann  <address@hidden>
+ 
+       * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
+       use NO_CURSOR if cursor_in_non_selected_windows is false.
+ 
+       * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
+       the slant attribute if FRAME is t.
+ 
+       * xfns.c (x_set_internal_border_width): Set frame garbaged
+       when X window doesn't exist yet.
+ 
+       * xterm.c (x_after_update_window_line): Clear internal border
+       in different circumstances.
+ 
+       * xterm.c (XTread_socket) <KeyPress>: Don't use
+       STRING_CHAR_AND_LENGTH if nchars == nbytes.  From Kenichi Handa
+       <address@hidden>.
+ 
+ 2001-10-28  Eli Zaretskii  <address@hidden>
+ 
+       * m/ibms390.h: New file.  From Adam Thornton
+       <address@hidden>.
+ 
+ 2001-10-28  Gerd Moellmann  <address@hidden>
+ 
+       * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
+ 
+       * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
+       a loop counter.
+ 
+ 2001-10-28  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * emacs.c: Use argv[0] instead of emacs when -t was specified.
+ 
+       * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
+       keyword].
+       Fix typos in comments.
+ 
+       * emacs.c (bug_reporting_address): New function.
+       Use it when displaying usage message.
+ 
+       * minibuf.c (read_minibuf): Remove unused external declaration of
+       variable `Qread_only'.
+ 
+       * keymap.c (access_keymap): Remove unused variable `charset'.
+ 
+ 2001-10-28  Miles Bader  <address@hidden>
+ 
+       * xfaces.c (merge_face_heights): Handle TO being relative as well.
+       Remove #ifdef'd-out code.
+       (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
+       (syms_of_xfaces): Initialize them.
+ 
+ 2001-10-27  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
+       <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
+       position using the system caret.
+ 
+       * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
+       (w32_system_caret_height, w32_system_caret_x)
+       (w32_system_caret_y): New variables for tracking system caret.
+       (w32_initialize): Initialize them.
+       (x_display_and_set_cursor): Make system caret follow the active cursor.
+ 
+       * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
+       New messages types.
+ 
+       * w32term.c (note_mouse_highlight): Clear old help_echo.
+ 
+ 2001-10-27  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * xterm.c: Fix typo in a comment.
+ 
+       * emacs.c: Fix typos in comments.
+       Remove unnecessary spaces.
+       Change doc-string comments to `new style' [w/`doc:' keyword].
+       (USAGE2): Fix typos in usage string.
+ 
+       * xterm.c: Fix typo in a comment.
+ 
+       * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
+       emacs.c.
+ 
+ 2001-10-27  Gerd Moellmann  <address@hidden>
+ 
+       * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
+       instead of 1/2 line_height in the heuristic for skipping
+       farther backward when target_y was not reached.
+ 
+       * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
+       Display errno only if non-zero.
+       (sound_warning): New function.
+       (vox_configure): Don't treat failing to set sample rate as error.
+       (various places): Improve error messages.
+ 
+ 2001-10-26  Eli Zaretskii  <address@hidden>
+ 
+       * fileio.c (Faccess_file): Run the argument filename through
+       Fexpand_file_name, before using it.
+ 
+       * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
+       ring-bell-function.  Suggested by Alf-Ivar Holm <address@hidden>
+ 
+ 2001-10-26  Gerd Moellmann  <address@hidden>
+ 
+       * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
+ 
+       * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
+       Fix clearing in the case of scroll bars on the right.
+ 
+ 2001-10-26  Juanma Barranquero  <address@hidden>
+ 
+       * w32gui.h (XImage): Add a dummy typedef.
+ 
+ 2001-10-26  Gerd Moellmann  <address@hidden>
+ 
+       * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
+ 
+ 2001-10-25  Eli Zaretskii  <address@hidden>
+ 
+       * frame.c (Fframe_parameter): Fix last change.
+ 
+       * fileio.c: Revert last change (which removed old commented-out
+       version of expand-file-name).  Add a comment that explains why
+       this old version should not be removed.
+ 
+ 2001-10-25  Gerd Moellmann  <address@hidden>
+ 
+       * frame.c (Fframe_parameter): Fix a bug whereby some
+       ``artificial'' frame parameters, like `minibuffer' were not
+       obtained by calling Fframe_parameters.
+ 
+       * xterm.c (show_mouse_face): Clean up.  Recognize overwritten
+       cursor differently.
+ 
+       * xdisp.c (move_it_vertically_backward): Compute line height
+       differently.  Add heuristic to try to be more compatible to 20.x.
+ 
+ 2001-10-25  Stefan Monnier  <address@hidden>
+ 
+       * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
+ 
+       * editfns.c (text_property_stickiness): Fix Lisp_Object used as
+       boolean.
+ 
+ 2001-10-25  Miles Bader  <address@hidden>
+ 
+       * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
+       BG is a pointer to a structure, not a structure.
+       (gif_format, png_format): Add missing commas.
+ 
+ 2001-10-24  Richard M. Stallman  <address@hidden>
+ 
+       * xfaces.c (Fface_attributes_as_vector): New function.
+       (syms_of_xfaces): Defsubr it.
+ 
+ 2001-10-24  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
+       variable `area'.
+ 
+ 2001-10-25  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * search.c (scan_newline): Remove unused variable `selective_display'.
+ 
+ 2001-10-25  Miles Bader  <address@hidden>
+ 
+       * dispextern.h (struct image): Add `background',
+       `background_valid', and `background_transparent' fields.
+       (image_background, image_background_transparent): New declarations.
+       (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
+       * xfns.c (image_background, image_background_transparent)
+       (four_corners_best): New functions.
+       (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
+       (gs_format): Add `:background' entry.
+       (lookup_image): Set IMG's background color if specified.
+       (pbm_load, xbm_load_image, png_load): Set IMG's background field
+       when appropriate.
+       (x_clear_image_1): Reset `background_valid' and
+       `background_transparent_valid' fields.
+       (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
+       calculating it here.  Set IMG's background_transparent field.
+       (enum xpm_keyword_index): Add XPM_BACKGROUND.
+       (enum png_keyword_index): Add PNG_BACKGROUND.
+       (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
+       (enum tiff_keyword_index): Add TIFF_BACKGROUND.
+       (enum gif_keyword_index): Add GIF_BACKGROUND.
+       (enum gs_keyword_index): Add GS_BACKGROUND.
+       (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
+       Pre-calculate image background color where necessary.
+       * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
+       `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
+       color to use for image glyph reliefs.
+ 
+ 2001-10-24  Gerd Moellmann  <address@hidden>
+ 
+       * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
+       in full-width rows.
+ 
+       * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
+       Fix clearing of area not covered by scroll bar.
+ 
+ 2001-10-24  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
+       and `real_start'.
+       (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
+       (glyph_rect): Remove unused variable `area'.
+ 
+ 2001-10-24  Gerd Moellmann  <address@hidden>
+ 
+       * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
+ 
+       * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
+       (row_containing_pos): Take additional argument DY.
+       Treat rows ending in middle of char differently.
+       (display_line): Handle tabs on window systems differently.
+ 
+       * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
+       with additional argument.
+ 
+       * dispextern.h (row_containing_pos): Adjust prototype.
+ 
+       * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
+       (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
+       (try_window_id, try_window_reusing_current_matrix)
+       (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
+       (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
+ 
+ 2001-10-24  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
+       gnuemacs).
+       (HAVE_BOXES): Fix typo in comment.
+       (push_menu_pane): Fix typo in comment.
+ 
+       * xdisp.c: (display_prop_string_p): Remove unused local declaration
+       of `Qwhen'.
+       (single_display_prop_string_p): Remove unused local declarations
+       of `Qwhen' and `Qmargin'.
+       (string_buffer_position): Remove unused variable `around'.
+       (store_frame_title): Remove unused variable `width'.
+ 
+       * window.c: Don't define max.
+       (coordinates_in_window): Remove unused variable `uy'.
+ 
+       * widget.c: Don't define max.
+ 
+       * process.c: Don't define max.
+       (create_process): Remove unused variable `buffer'.
+ 
+ 2001-10-23  Gerd Moellmann  <address@hidden>
+ 
+       * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
+ 
+ 2001-10-23  Eli Zaretskii  <address@hidden>
+ 
+       * xfaces.c (Finternal_set_lisp_face_attribute)
+       [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
+       frame is on a windowed display.
+ 
+ 2001-10-23  Gerd Moellmann  <address@hidden>
+ 
+       * dispnew.c (sync_window_with_frame_matrix_rows):
+       Fix handling of windows which aren't full-width, fix handling
+       of marginal areas.
+ 
+       * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
+ 
+ 2001-10-23  Andreas Schwab  <address@hidden>
+ 
+       * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
+       LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
+ 
+ 2001-10-23  Gerd Moellmann  <address@hidden>
+ 
+       * xterm.c (x_draw_glyphs): Remove parameters READ_START and
+       REAL_END.  Notice if cursor gets overwritten.
+       (notice_overwritten_cursor): Take X positions as parameters.
+       (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
+       around call to x_draw_glyphs.
+ 
+ 2001-10-23  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
+       instead of C) and usage.
+ 
+       * editfns.c (char-to-string): Fix argument names (use CHAR instead
+       of C) and usage.
+ 
+       * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
+       `left', `max_width' and `max_height'.
+ 
+ 2001-10-23  Gerd Moellmann  <address@hidden>
+ 
+       * xdisp.c (display_line): For a tab continued to the next line,
+       set row's ends_in_middle_of_char_p.
+ 
+ 2001-10-22  Gerd Moellmann  <address@hidden>
+ 
+       * xdisp.c (display_line): Fix computation of continuation lines
+       width for TABs.
+ 
+ 2001-10-22  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * xdisp.c (build_desired_tool_bar_string): Remove unused variable
+       `Qlaplace'.
+ 
+       * fileio.c: Remove unused code.
+ 
+ 2001-10-22  Miles Bader  <address@hidden>
+ 
+       * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
+       (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
+       Remove `DOC_STRINGS_IN_COMMENTS' cases.
+ 
+ 2001-10-21  Jason Rumney  <address@hidden>
+ 
+       * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
+ 
+ 2001-10-21  Eli Zaretskii  <address@hidden>
+ 
+       * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
+       (Finsert_string): Avoid the multi-line string literals warning.
+ 
+ 2001-10-22  Miles Bader  <address@hidden>
+ 
+       * doc.c (Vhelp_manyarg_func_alist): Variable removed.
+       (Fdocumentation): Don't use it.
+       (syms_of_doc): Don't initialize it.
+ 
+       * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
+       * print.c (Fwith_output_to_temp_buffer): Likewise.
+       * window.c (Fsave_window_excursion): Likewise.
+       * editfns.c (Fsave_excursion, Fsave_current_buffer)
+       (Fsave_restriction): Likewise.
+       * eval.c (Frun_hooks, Frun_hook_with_args)
+       (Frun_hook_with_args_until_failure)
+       (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
+       (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
+       (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
+       (Funwind_protect, Fcondition_case): Likewise.
+       * coding.c (Ffind_operation_coding_system): Likewise.
+       * keyboard.c (Ftrack_mouse): Likewise.
+ 
+ 2001-10-21  Miles Bader  <address@hidden>
+ 
+       * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
+       (Fmake_hash_table): Add usage: string to doc string.
+       * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
+       (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
+       (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
+       * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
+       (Fml_prefix_argument_loop): Likewise.
+ 
+ 2001-10-21  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
+ 
+       * sysdep.c (init_sys_modes): Change doc-string comments to `new
+       style' [w/`doc:' keyword].
+ 
+       * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
+       * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
+       comments to `new style' [w/`doc:' keyword].
+ 
+ 2001-10-21  Jason Rumney  <address@hidden>
+ 
+       * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
+ 
+       * w32term.c (remember_mouse_glyph): New function.
+       (w32_mouse_position): Use it.
+       (note_mouse_movement): If the mouse moved off the glyph, remember
+       its new position.
+ 
+       * w32term.h (struct w32_output): Correct spelling of x_compatible.
+       (w32_display_info): Add mouse_face_overlay.
+ 
+       * w32term.c (notice_overwritten_cursor): Renamed from
+       note_overwritten_text_cursor.  Rewritten to take glyph widths into
+       account.
+       (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
+       (fast_find_string_pos): New function.
+       (fast_find_position): Return the correct vpos.  Add parameter
+       STOP.  In the final row, stop before glyphs having STOP as object.
+       Don't consider glyphs that are not from a buffer.
+       (fast_find_position) [0]: Add a presumably more correct version
+       for after 21.1.
+       (expose_window_tree, expose_frame): Don't compute intersections here.
+       (expose_window): Do it here instead.
+       (expose_window_tree, expose_window, expose_line): Return 1 when
+       overwriting mouse-face.
+       (expose_window): If W is the window currently being updated, mark
+       the frame garbaged.
+       (expose_frame): If mouse-face was overwritten, redo it.
+       (x_use_underline_position_properties): New variable.
+       (syms_of_xterm): DEFVAR_BOOL it.
+       (x_draw_glyph_string): Add comment to use it in future.
+       (x_draw_glyph_string): Restore clipping after drawing box.
+       Fix a computation of the underline position.
+       (w32_get_glyph_string_clip_rect): Minor cleanup.
+       (x_fill_stretch_glyph_string): Remove an assertion.
+       (x_produce_glyphs): Don't convert multibyte characters
+       to unibyte characters in unibyte buffers.
+       (cursor_in_mouse_face_p): New function.
+       (x_draw_stretch_glyph_string): Use it to choose a different GC
+       when drawing a cursor within highlighted text.  Don't draw
+       background again if it has already been drawn.
+       (x_draw_glyph_string_box): Don't draw a full-width
+       box just because the glyph row's full_width_p flag is set.
+       (x_draw_glyphs): Fix computation of rightmost x for
+       full-width rows.
+       (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
+       (w32_draw_relief_rect): Extend left shadow to the bottom and left;
+       change bottom shadow accordingly. Some cleanup.
+       (x_update_window_end): Handle overwritten mouse face
+       also for tool bar windows.
+       (show_mouse_face): Set the glyph row's mouse_face_p flag also when
+       DRAW is DRAW_IMAGE_RAISED.
+       (clear_mouse_face): Return 1 if text with mouse face was
+       actually redrawn.  Make the function static.
+       Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
+       optimize away highlighting if we pass over that same overlay again.
+       (note_mouse_highlight): Call mouse_face_overlay_overlaps
+       to detect a case where we have to highlight a different region
+       despite not having left the currently highlighted region.
+       Set mouse_face_overlay in the x_display_info.  Avoid changing the
+       mouse pointer shape when show_mouse_face has already done it, or
+       there is no need.  Handle mouse-face and help-echo in strings.
+       (glyph_rect): New function.
+       (w32_mouse_position): Use it to raise the threshold for mouse
+       movement event generation.
+       (w32_initialize_display_info): Initialize the x_display_info's
+       mouse_face_overlay.
+       (w32_set_vertical_scroll_bar): Don't clear a zero height
+       or width area.
+       (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
+       a widget to zero height.
+ 
+       * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
+       Protect unibyte strings created by replacing their multibyte
+       equivalents in menu_items.
+       (w32_menu_show): Don't overwrite an item's name with its key
+       description in case the description is a multibyte string.
+       (single_submenu): Some cleanup.
+ 
+       * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
+       (postprocess_image): New function.
+       (lookup_image): Call it for all image types except PostScript.
+       (x_kill_gs_process): Call postprocess_image.
+       (tiff_error_handler, tiff_warning_handler): New functions.
+       (tiff_load): Install them as handlers.
+       (x_kill_gs_process): Recognize if someone has cleared the image
+       cache under us.
+       (valid_image_p): Protect better against invalid image
+       specifications.  Previous code could signal an error.
+       (Fx_hide_tip, Fshow_tip): Doc fix.
+       (Fv_max_tooltip_size): New variable.
+       (syns_of_xfns): DEFVAR_LISP it.
+       (Fx_show_tip): Add parameter TEXT.  Set the tip frame's root
+       window buffer to *tip* right after creating the frame. Set frame's
+       window_width.  Use a maximum tooltip size specified by
+       Vx_max_tooltip_size, if that has valid contents.
+       (compute_tip_xy): Add parameters WIDTH and HEIGHT.
+       Make sure the tooltip is completely visible.
+       (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
+       (Fx_create_frame): Adjust the frame's height for presence
+       of the tool bar before calling x_figure_window_size.
+       (x_set_tool_bar_lines): Clear the tool bar window's current matrix
+       when the window gets smaller.
+       (x_set_foreground_color): Set frame's cursor_pixel.
+       (x_set_foreground_color, x_set_background_color): Cleaned up.
+       (x_set_font): Handle case of x_new_fontset returning the same name
+       as before, although there was a change in fontsets.
+ 
+ 2001-10-21  Miles Bader  <address@hidden>
+ 
+       * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
+       (Flogxor): Add usage: string to doc string.
+       * charset.c (Fstring): Likewise.
+       * callproc.c (Fcall_process_region, Fcall_process): Likewise.
+       * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
+ 
+ 2001-10-21  Pavel Jan,Am(Bk  <address@hidden>
+ 
+       * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
+ 
+       * alloc.c: Reindent DEFUNs with doc: keywords.
+ 
+       * abbrev.c (Finsert_abbrev_table_description): Reindent.
+ 
+       * frame.c: Change doc-string comments to `new style' [w/`doc:'
+       keyword].
+ 
+ See ChangeLog.9 for earlier changes.
+ 
+ ;; Local Variables:
+ ;; coding: iso-2022-7bit
+ ;; End:
+ 
+     Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+   Copying and distribution of this file, with or without modification,
+   are permitted provided the copyright notice and this notice are preserved.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]