X-Git-Url: http://git.chise.org/gitweb/?p=chise%2Fxemacs-chise.git.1;a=blobdiff_plain;f=src%2FChangeLog;h=03c25d82a27fa2a2d5f24c804fb1dce09e091c19;hp=1bc0d94edcf6e26f7f5aa622af00efd8c76dd76b;hb=1bbdeb3a4ec887b8a6bcacb0384a978cc3b1f6f5;hpb=716cfba952c1dc0d2cf5c968971f3780ba728a89 diff --git a/src/ChangeLog b/src/ChangeLog index 1bc0d94..03c25d8 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9866 @@ +2003-01-15 Stephen J. Turnbull + + * XEmacs 21.4.12 "Portable Code" is released. + +2003-01-14 Sergey Okhapkin + + * Makefile.in.in (ldflags): re-order sections for gcc 3.2. + * s/cygwin.sc: new linker file. + +2003-01-14 Stephen J. Turnbull + + Build fixes courtesy Martin Buchholz : + + * redisplay-x.c (x_output_string): Use X11-specified types. + * syntax.c, syntax.h (SYNTAX_CODE): Use enum syntaxcode, not int. + * emacs.c (__free_hook): Use typeof with Intel compiler. + * config.h.in (alloca.h): Quick safe hack to please Intel compiler. + +2003-01-08 Andy Piper + + * unexcw.c (copy_executable_and_dump_data_section): Set the stack + reserve size during unexec(). + +2003-01-07 Daiki Ueno + + * process-unix.c (unix_create_process): Don't let outchannel block. + +2003-01-05 Rick Rankin + + * emacs.c: Include "syswindows.h" when compiling under Cygwin. + Needed for IsBadReadPtr(). + +2003-01-03 Stephen J. Turnbull + + * XEmacs 21.4.11 "Native Windows TTY Support" is released. + +2002-12-14 Ben Wing + + * callint.c: Declaration error. + * dumper.c (pdump): + * dumper.c (pdump_load): Warning fix. + * process.c: GCPRO error. + * glyphs.c (unmap_subwindow): + * glyphs.c (map_subwindow): Parenthesizing errors with ! and &&. + * event-stream.c (maybe_kbd_translate): Wrong argument to + character_to_event(). + + * alloc.c (garbage_collect_1): + * emacs.c: + * emacs.c (debug_can_access_memory): + * emacs.c (fatal_error_signal): + * emacs.c (mswindows_handle_hardware_exceptions): + * emacs.c (main_1): + * emacs.c (main): + * emacs.c (assert_failed): + * emacs.c (syms_of_emacs): + * lisp.h: + * print.c: + * print.c (std_handle_out_va): + * print.c (write_string_to_stdio_stream): + * print.c (write_fmt_string): + * print.c (printing_badness): + * print.c (printing_major_badness): + * print.c (print_internal): + * print.c (debug_print_no_newline): + * print.c (debug_backtrace): + Be more defensive in handling bad values when printing. Add code + from trunk involving inhibit_non_essential_printing_operations. + When going down or in debug_print(), don't do external conversion + and such and try really, really hard when printing to avoid core + dumping. Add force-debugging-signal, debug_break(). + +2002-12-12 Stephen J. Turnbull + + * dumper.c (pdump_load): Include sysdep.h; retry with truename. + Analysis and original patch by Vin Shelton . + +2002-12-02 Greg Allen + + * database.c: Fix open_database. Berkeley DB API has changed in + 4.1. see: http://www.sleepycat.com/docs/ref/upgrade.4.1/fop.html + +2002-11-26 Stephen J. Turnbull + + * specifier.c (Fvalid_specifier_type_p): Typo in comment. + +2002-11-13 Stephen J. Turnbull + + * event-Xt.c (Xt_timeout): + (Xt_timeout_callback): + (emacs_Xt_add_timeout): + (emacs_Xt_remove_timeout): + (Xt_timeout_to_emacs_event): + Turn completed_timeouts from a stack into a queue. Fixes + deadlocks <15829.21626.171573.994716@sinisa.nasamreza.org>. + +2002-11-07 Wolfram Gloger + + * alloc.c (reinit_alloc_once_early): Disable mmap in Doug Lea malloc. + * emacs.c (main): Assert that mmap'd allocation is disabled. + +2002-10-14 Andy Piper + + * glyphs-widget.c (layout_query_geometry): add in fiddle + factor. Include border text in width layout calculation. + (layout_layout): use BORDER_FIDDLE_FACTOR instead of 10. + +2002-11-02 Stephen J. Turnbull + + * XEmacs 21.4.10 "Military Intelligence" is released. + +2002-10-17 Raymond Toy + + * nas.c: Update for NAS 1.6 and later, from Jon Trulson. Was + using the NAS private array SoundFileInfo that no longer exists in + NAS 1.6 and later. Preserve backward compatibility with NAS 1.5a + and earlier. This is broken for some versions between 1.5a and + 1.5f. + +2002-10-10 Stephen J. Turnbull + + * realpath.c (win32_readlink): Try to fix truename of wildcard bug. + + * emacs.c (shut_down_emacs): Improve crash message. + +2002-10-09 Stephen J. Turnbull + + * file-coding.c (determine_real_coding_system): Check for coding + cookie in first LINES_TO_CHECK lines (currently 2). Cater to + shebangs and Python PEP 263. + +2002-10-08 Andy Piper + + * glyphs-widget.c (layout_query_geometry): only resize dynamically + if static sizes haven't been set. + +2002-08-30 Mike Alexander + + * event-msw.c (winsock_closer): Use closesocket, not CloseHandle + to close a socket. + +2002-10-03 Stephen J. Turnbull + + * callproc.c (child_setup): 21.4 doesn't have retry_close. + +2002-09-20 Mike Sperber + + (This partially gets back my patch from 2002-07-20 without the + bug.) + * callproc.c (child_setup): Remove Ben's comment noting confusion + over the file descriptors >= 3: close_process_descs() doesn't + close those. Fix fd range to go up to MAXDESC-1 instead of 64. + * process-unix.c (unix_create_process): Call + begin_dont_check_for_quit to inhibit unwanted interaction (and + thus breaking of X event synchronicity) in the child. + +2002-09-26 Golubev I. N. + + * frame-x.c (x_delete_frame): do not call XtDisplay on a destroyed + widget. + +2002-08-20 Ben Sigelman + + * event-Xt.c (drain_X_queue): loop over while(XEventsQueued()) + instead of while(XtAppPending()&XtIMXEvent). Upon a gdm logout, + the xemacs process did not exit, but looped infinitely here. This + fixes that problem. + +2002-09-28 Stephen J. Turnbull + + * font-lock.c (SYNTAX_START_STYLE, SYNTAX_END_STYLE): Quiet GCC. + (find_context): Improve comments. + + * regex.c (re_compile_fastmap): Gratuitous #ifdef comment fixes. + (re_match_2): An XCHAR_TABLE operation was missing. + + Many of the following changes were inspired by Andy Piper's (now + obsolete) patch to make syntax-table text property lookup optional. + + [Documentation] + + * syntax.h (top level): Document semantics of syntax flags. + * syntax.c (comstr_start, Fforward_comment): Improve comments. + * syntax.c, syntax.h (top level): Document syntax cache better in + comments. + + [Instrument syntax caching (temporary change)] + + * syntax.h (enum syntax_cache_statistics_functions, struct + syntax_cache_statistics, SCS_STATISTICS_SET_FUNCTION, + SYNTAX_CACHE_STATISTICS_COUNT_INIT): New types and macros. + * syntax.c (scan_words, Fforward_comment, scan_lists, + Fbackward_prefix_characters): + * font-lock.c (find_context): + Use them to instrument syntax caching. + * syntax.c (struct syntax_cache_statistics, scs_statistics, + syntax_cache_statistics_function_names): New type and variables. + * syntax.c (update_syntax_cache): Update and report statistics. + + [Major syntax cache optimizations] + + syntax.c (lookup_syntax_properties): Default off. + + * syntax.h (UPDATE_SYNTAX_INTERNAL): New, implements UPDATE_SYNTAX*. + * syntax.c (update_syntax_cache): + Move init test from update_syntax_cache to UPDATE_SYNTAX_INTERNAL. + + [Minor syntax cache optimizations and code clarifications] + + * syntax.h (SYNTAX_COMMENT_BITS, SYNTAX_START_P, SYNTAX_END_P, + SYNTAX_STYLES_MATCH_START_P, SYNTAX_STYLES_MATCH_1CHAR_P, + SYNTAX_STYLES_MATCH_END_P, STYLE_FOUND_1CHAR_P, STYLE_FOUND_P, + SYNTAX_COMMENT_MASK_END, SYNTAX_COMMENT_MASK_START, + SYNTAX_COMMENT_1CHAR_MASK): Remove redundant argument `table'. + (Code clarification.) + + * syntax.c (scan_words, find_end_of_comment, scan_sexps_forward, + scan_lists): Compute code from syncode, use Boolean macros instead + of redundant masking operations. (Code clarification; any decent + compiler can do this optimization.) + + * syntax.c (scan_lists): Rearrange switches (case Sstring_fence) + for clarity. + + * syntax.h, syntax.c (NEXT_SINGLE_PROPERTY_CHANGE, + PREVIOUS_SINGLE_PROPERTY_CHANGE, update_syntax_cache): Conditionally + use F*_single_property_change instead of F*_extent_change. + Currently F*_single_property_change is _much_ less efficient. + + * dired.c (Fdirectory_files): Qt not valid in syntax_cache.object. + * syntax.h (SETUP_SYNTAX_CACHE_FOR_OBJECT): Initialize + syntax_cache.object properly, don't leave Qt or Qnil. + (SYNTAX_CACHE_BYTE_TO_CHAR): Use SETUP_SYNTAX_CACHE_FOR_OBJECT. + * syntax.c (update_syntax_cache): Use BUFFERP and STRINGP, not + tests for Qt or Qnil. + +2002-09-21 Stephen J. Turnbull + + * redisplay.c (point_in_line_start_cache): + * extents.c (print_extent_1): + Fix warnings. + + * extents.c (Fset_extent_property): Document `syntax-table' property. + + * extents.h (Fnext_single_property_change): EXFUN it. + +2002-09-09 Stephen J. Turnbull + + * search.c (clear_unused_search_regs): New static function. + (search_buffer): + (simple_search): + (boyer_moore): + Use it. Fixes "stale match data" bug reported by Martin Stjernholm. + Minor clarifications in comments. + + * regex.c (re_match_2_internal): Ensure no stale submatches. + +2002-09-09 Stephen J. Turnbull + + * event-Xt.c (enqueue_focus_event): Add missing prototype. + +2002-08-29 Jerry James + + * lisp.h: structrures -> structures. + +2002-06-03 Andy Piper + + * frame.c (frame_conversion_internal): add conversion appropriate + for setting frame dimensions in pixels. + + * console.h (struct console_methods): add device-specific widget + layout functions. + + * emacs.c (main_1): initialize glyph vars. + + * event-Xt.c (handle_focus_event_1): call handle_focus_event_2 + (handle_focus_event_2): new function. Allow focus to + be set to a particular window and widget. + (enqueue_focus_event): new function. Create a + synthetic focus event. + (emacs_Xt_handle_magic_event): call + handle_focus_event_2. + + * frame.c (Fset_frame_pixel_height): new function. Allow + pixel-based sizing. Does the right thing on character-oriented + displays. + (Fset_frame_pixel_width): ditto. + (Fset_frame_pixel_size): ditto. + (syms_of_frame): declare. + + * general-slots.h: add :vertically-justify and + :horizontally-justify. + + * glyphs-msw.c (xbm_create_bitmap_from_data): warning fix. + (mswindows_widget_border_width): new function. + (mswindows_combo_box_instantiate): set border widths. + (console_type_create_glyphs_mswindows): declare. + + * glyphs-widget.c: + (check_valid_justification): allow vertical and horizontal + justification. + (widget_border_width): new function. Call device methods. + (widget_instance_border_width): ditto. + (logical_unit_height): new function. Determine the height of a + logical-unit. Logical units are intended to provide grid-like + layout for subcontrols in a layout. If the layout is + :vertically-justify top then subcontrols will be positioned on + logical-unit boundaries, thus allowing adjacent subcontrols to + line up. + (widget_logical_unit_height): ditto for widgets. + (redisplay_widget): misc cleanup. + (widget_spacing): new function. Call device specific + methods. Intended to be the default gap between adjacent widgets. + (widget_query_geometry): use new spacing functions to determine + appropriate geometry. + (initialize_widget_image_instance): initialize horizontal and + vertical justification. + (widget_instantiate): use logica-units where appropriate for + sizing large widgets. + (button_query_geometry): use widget_instance_border_width. + (tree_view_query_geometry): ditto. + (tab_control_query_geometry): ditto. + (edit_field_query_geometry): new function. + (layout_update): pick up :justify, :horizontally-justify and + :vertically-justify none of which worked previously. :justify is + used as a fallback for both horizontal and vertical justification. + (layout_query_geometry): use logical units to size appropriately. + (layout_layout): ditto. + (Fwidget_logical_to_character_width): new function. Allow users to + convert from logical units to characters so that frame sizes can + be set appropriately. + (Fwidget_logical_to_character_height): ditto. + (syms_of_glyphs_widget): declare. + (image_instantiator_edit_fields): add edit_field_query_geometry. + (VALID_LAYOUT_KEYWORDS): declare :vertically-justify and + :horizontally-justify. + (specifier_vars_of_glyphs_widget): new function. Declare + Vwidget_border_width which is not yet used. + + * glyphs-x.c (x_map_subwindow): enqueue appropriate focus events. + (x_widget_border_width): new function. + (x_widget_instantiate): create a sensible name for widgets. + (console_type_create_glyphs_x): declare x_widget_border_width. + + * glyphs.h (DEFAULT_WIDGET_BORDER_WIDTH): new macro. + (struct Lisp_Image_Instance): add :vertically-justify and + :horizontally-justify. + (LAYOUT_JUSTIFY_TOP): new. + (IMAGE_INSTANCE_SUBWINDOW_H_JUSTIFY): new. + (ROUND_UP): new macro. Round argument up to next integral + interval. + + * redisplay-output.c (redisplay_output_layout): misc formatting. + + * symsinit.h: declare specifier_vars_of_glyphs_widget. + +2002-08-23 Stephen J. Turnbull + + * XEmacs 21.4.9 "Informed Management" is released. + +2002-08-19 Andy Piper + + * fileio.c (Ffile_truename): on cygwin using win32 normalize to + win32 format. + + * realpath.c (xrealpath): normalize drive spec also so that dir + sep chars are not mixed on cygwin. + +2002-08-06 Jerry James + + * window.c (Fsplit_window): Count only half of the divider width + against the left window when splitting horizontally. + +2002-06-24 Andy Piper + + * toolbar-gtk.c (GTK_OUTPUT_BUTTONS_LOOP): output button if whole + toolbar was cleared. + + * toolbar-msw.c (mswindows_clear_frame_toolbars): new + function. Split out from mswindows_output_frame_toolbars. + (mswindows_output_frame_toolbars): move clear pieces to + mswindows_output_frame_toolbars. + + * toolbar-gtk.c (gtk_clear_frame_toolbars): new function. Split + out from gtk_output_frame_toolbars. + (gtk_output_frame_toolbars): move clear pieces to + gtk_clear_frame_toolbars. + + * toolbar-x.c (X_OUTPUT_BUTTONS_LOOP): always output buttons when + the frame is cleared. How this ever worked before is a mystery. + (x_output_frame_toolbars): Only output toolbars. + (x_clear_frame_toolbars): new. Clear previous toolbar locations. + + * gutter.c (update_gutter_geometry): + Mark frame layout changed. + (update_frame_gutter_geometry, update_frame_gutters): + Respect frame_layout_changed. + + * console.h (struct console_methods): add + clear_frame_toolbars_method. + + * redisplay.c (redisplay_frame): call + update_frame_toolbars_geometry and re-order update_frame_toolbars. + + * toolbar.h: declare update_frame_toolbars_geometry. + + * toolbar.c (update_frame_toolbars_geometry): new function. Split + out from update_frame_toolbars. Call clear_frame_toolbars. + (update_frame_toolbars): only output, do not change geometry. + + * redisplay.c: add frame_layout_changed. + + * redisplay.h: add frame_layout_changed. + (CLASS_RESET_CHANGED_FLAGS): set it. + (GLOBAL_RESET_CHANGED_FLAGS): ditto. + (CLASS_REDISPLAY_FLAGS_CHANGEDP): test it. + (GLOBAL_REDISPLAY_FLAGS_CHANGEDP): ditto. + + * device.h (struct device): add frame_layout_changed. + (MARK_DEVICE_FRAME_LAYOUT_CHANGED): new. + + * frame.h (struct frame): add frame_layout_changed. + (MARK_FRAME_LAYOUT_CHANGED): new. + +2002-06-30 Mike Alexander + + * event-msw.c (mswindows_need_event): Don't wait for a new message + if the queue is not empty. Suggested by Paul Moore. + +2002-06-12 Andy Piper + + * frame-msw.c (msprinter_init_frame_3): calculate the frame size + for printing on accurately. + +2002-06-09 Rick Rankin + + * event-msw.c (mswindows_wnd_proc): Add a handler for the + WM_ACTIVATE message. Make sure that the frame is visible if the + window is visible. This seemss to fix the problem where XEmacs + appears to freeze after switching desktops with certain virtual + window managers. + (debug_output_mswin_message): Added code to output message + parameters for WM_WINDOWPOSCHANGED, + WM_WINDOWPOSCHANGING, WM_MOVE, and WM_SIZE messages. + +2002-05-25 Andy Piper + + * select-x.c (vars_of_select_x): Fix docstring of + x-selection-strict-motif-ownership + +2002-08-14 Stephen J. Turnbull + + * keymap.c (get_keymap): + Add comment about do_autoload GCPROs own args. + +2002-08-14 Stephen J. Turnbull + + * bytecode.c (execute_optimized_program): check_opcode ifdef + ERROR_CHECK_BYTE_CODE. + +2002-08-14 Stephen J. Turnbull + + Thanks to Ben Wing and Michael Sperber. + + * eval.c (Fcommand_execute): + (Feval): + (Ffuncall): + (Fmacroexpand_internal): + (function_argcount): + callint.c (Fcall_interactively): + Add comment about do_autoload GCPROs own args. + + * (do_autoload): GCPRO both args as well as local Lisp_Object. + + * eval.c (Ffuncall): Extra braces to placate GCC. + +2002-08-10 Stephen J. Turnbull + + * backtrace.h (grow_specpdl): + (SPECPDL_RESERVE): + * EmacsFrame.c (EmacsFrameSetValues): + * eval.c (grow_specpdl): + * ExternalShell.c (hack_event_masks_1): + * glyphs-x.c (convert_EImage_to_XImage): + (x_finalize_image_instance): + * ralloc.c (page_size): + (r_alloc_sbrk): + * xgccache.c (gc_cache_hash): + Fix unsigned comparison warnings. + +2002-07-29 Jerry James + + * lread.c (locate_file): Any nonnegative return value indicates + success if MODE is nonnegative. + +2002-08-03 Brian A Palmer + + * emacs.c (Fsplit_string_by_char): Make 2nd arg SEPCHAR a required + argument. + +2002-07-17 Stephen J. Turnbull + + * process-unix.c (unix_send_process): #ifdef the coding_stream member. + + * dumper.c (pdump_get_indirect_count): + (pdump_scan_by_alignment): + (pdump_dump_root_struct_ptrs): + (pdump_dump_rtables): + (pdump_dump_root_objects): + (pdump): + * nas.c (WaveOpenDataForReading): + * fns.c (print_bit_vector): + * font-lock.c (SINGLE_SYNTAX_STYLE): + * glyphs.c (check_for_ignored_expose): + (find_matching_subwindow): + * glyphs-eimage.c: + * imgproc.c (get_histogram): + * redisplay.c (point_in_line_start_cache): + * redisplay-output.c (redisplay_unmap_subwindows): + * symbols.c (defsymbol_massage_name_1): + (defkeyword_massage_name): + (deferror_massage_name_and_message): + * redisplay-x.c (x_output_string): + * emacs.c (run_temacs_argv_size, run_temacs_args_size): + * frame.h (struct frame): + * filelock.c (current_lock_owner): + * doprnt.c (emacs_doprnt_1): + * lisp.h (struct Lisp_Bit_Vector): + (DO_REALLOC): + Fix warnings. + +2002-02-13 Ben Wing + + * event-stream.c (reset_key_echo): + * event-stream.c (reset_this_command_keys): + * event-stream.c (execute_command_event): + If console is dead as a result of C-x 5 0, then post-command stuff + needs to be careful and do only non-console-specific stuff. + +2002-07-01 Mike Sperber + + * process-unix.c (unix_send_process): Mark coding_outstream as + non-open upon SIGPIPE. + + * event-stream.c (Fnext_event): Reorder switch cases to something + that makes sense. + +2001-08-13 Dmitry Astapov + + * event-Xt.c (maybe_define_x_key_as_self_inserting_character): + Don't bogusly reinitialize ascii_character property. + +2002-07-08 Mike Sperber + + * process.c (Fstart_process_internal): Do error checking before we + fork off the child, so the child can't muck with the state of the + parent. + +2002-07-08 Mike Sperber + + * ralloc.c (init_ralloc): Allocate properly for pdump. + +2002-06-12 Andy Piper + + * glyphs.c (query_string_geometry): check the string. + + * glyphs-widget.c (widget_logical_unit_height): cope with nil + widget names. + +2002-06-17 Jerry James + + * sysdll.c: Remove RTLD_GLOBAL initialization. + * sysdll.c (dll_open): Do not use RTLD_GLOBAL. + +2002-06-25 Stephen J. Turnbull + + * search.c (skip_chars): Port Ben's crash fix and efficiency patch. + +2002-05-16 Mathias Grimmberger + + * sysdep.c (sys_rename): Make sys_rename work for the case where + Windows rename sets errno to EACCES if target file exists. + +2002-05-21 Jonathan Harris + + * device-msw.c (mswindows_handle_page_setup_dialog_box): + Fix detection of metric units to work on Win95 + +2002-05-21 Stephen J. Turnbull + + * syswindows.h: #define LOCALE_RETURN_NUMBER. Why, I don't know. + +2002-04-25 Andy Piper + + * redisplay.c (create_text_block): Remove extra comment trailer. + +2002-04-24 Andy Piper + + * redisplay.c (create_text_block): Don't actually add propagation + data if the line ends after we have added a glyph. + +2002-04-22 Andy Piper + + * extents.c (extent_fragment_update): check for glyphs we have + previously displayed. + * extents.c (print_extent_1): warning removal. + * extents.h: change prototype. + * redisplay-output.c (redisplay_normalize_glyph_area): calculate + widths correctly for wide glyphs. + * redisplay.c (position_redisplay_data_type): add end_glyph_width. + * redisplay.c (prop_type): add PROP_GLYPH. + * redisplay.c (struct prop_block): add glyph type + * redisplay.c (add_glyph_rune): when adding part of a glyph add it + to the propagation data. + * redisplay.c (create_text_block): if there is a glyph in the + propagation data use it to salt extent_fragment_update. + * redisplay.c (create_string_text_block): ditto. + +2002-04-13 Nix + + * redisplay.h (struct rune): Add ascent, descent, and yoffset fields. + * redisplay-output.c (compare_runes): Compare them. + * redisplay.c: Update copyright date. + * redisplay.c (pos_data): Add need_baseline_computation field. + * redisplay.c (add_glyph_rune): Update ascent, descent, and + need_baseline_computation; zero yoffset. Set max_pixmap_height + for all pixmaps, not just automatically positioned ones. + * redisplay.c (calculate_yoffset): New, compute yoffset values. + * redisplay.c (calculate_baseline): New, compute textual baseline. + * redisplay.c (add_glyph_rune): Call them. + * redisplay.c (create_text_block): Likewise. + * redisplay.c (create_overlay_glyph_block): Likewise. + * redisplay.c (add_margin_runes): Likewise. + * redisplay.c (create_string_text_block): Likewise. Fix tabdamage. + + * redisplay.h: (redisplay_calculate_display_boxes): Change prototype. + * redisplay-output.c (redisplay_calculate_display_boxes): Use yoffset. + * redisplay-msw.c (mswindows_output_blank): Pass 0 as yoffset. + * redisplay-msw.c (mswindows_output_string): Likewise. + * redisplay-msw.c (mswindows_output_display_block): Pass yoffset. + * redisplay-gtk.c (gtk_output_display_block): Likewise. + * redisplay-x.c (x_output_display_block): Likewise. + +2002-03-28 Ben Wing + + * redisplay.c: Fixed bug in redisplay + w.r.t. hscroll/truncation/continuation glyphs causing jumping up + and down of the lines, since they're bigger than the line + size. (It was seen most obviously when there's a horizontal scroll + bar, e.g. do C-h a glyph or something like that.) The problem was + that the glyph-contrib-p setting on glyphs was ignored even if it + was set properly, which it wasn't until now. + +2002-04-24 Andy Piper + + * lisp.h (Dynarr_end): Fix definition. + +2002-02-06 Adrian Aichner + + * redisplay.c (mark_redisplay): Remove call to + update_frame_window_mirror. + +2001-11-15 Andy Piper + + * win32.c (Fmswindows_shell_execute): fix handling of URL's under + cygwin (again). + +2002-02-13 Andy Piper + + * event-msw.c (mswindows_wnd_proc): only mark the frame visible if + we did in fact enqueue the XM_MAPFRAME event. + +2002-01-15 Adrian Aichner + + * event-msw.c (mswindows_wnd_proc): Add handling of WM_SHOWWINDOW + to fix problem switching between virtual desktops under virtuawin + virtual window manager. + +2001-07-30 Adrian Aichner + + * event-msw.c: Typo fix. + * event-msw.c (mswindows_wnd_proc): Set FRAME_VISIBLE_P after + magic XM_MAPFRAME event has been sent. + +2001-11-23 Andy Piper + + * event-msw.c (mswindows_wnd_proc): Don't pump mousewheel events. + +2001-11-21 Andy Piper + + * scrollbar-msw.c (mswindows_handle_mousewheel_event): cope with + mouse events outside the frame. + +2002-03-20 Andy Piper + + * menubar-msw.c (mswindows_popup_menu): warning removal. + * dialog-msw.c (dialog_popped_down): ditto. + +2001-12-11 Andy Piper + + * dialog-msw.c (dialog_popped_down): new function. unset popup_up_p. + * dialog-msw.c (mswindows_make_dialog_box_internal): set + popup_up_p. + * menubar-msw.c (unsafe_handle_wm_initmenupopup_1): ditto. + * menubar-msw.c (mswindows_handle_wm_command): ditto. + * menubar-msw.c (mswindows_popup_menu): ditto. + +2001-10-29 Andy Piper + + * dialog-msw.c (handle_directory_dialog_box): quit if the user + cancels. + +2002-01-03 Andy Piper + + * realpath.c (ABS_LENGTH): dtrt for cygwin systems using drive + letters. + (xrealpath): ditto. + +2002-03-29 Jonathan Harris + + * device-msw.c (plist_get_margin): Add arg specifying mm or inches + * device-msw.c (plist_set_margin): Fix multiplicand used for mm + * device-msw.c (mswindows_handle_page_setup_dialog_box): + Detect and handle case where machine is set up for metric units + +2002-04-02 Andy Piper + + * dired-msw.c (mswindows_get_files): + * nt.c (mswindows_stat): SetErrorMode() so that file errors are + completely handled by XEmacs. Suggested by Thomas Vogler + . + +2001-11-14 Andy Piper + + * nt.c (REG_ROOT): change registry key to XEmacs. + +2002-04-27 Andy Piper + + * glyphs-msw.c (mswindows_widget_instantiate): remove dead-code. + +2002-04-26 Andy Piper + + * glyphs-msw.c (mswindows_map_subwindow): observe :initial-focus + behavior. + +2002-03-14 Mike Alexander + + * event-msw.c (mswindows_unwait_process): New, remove process from + wait list + * process-nt.c (nt_finalize_process_data): Call + mswindows_unwait_process + * console-msw.h: Declare mswindows_unwait_process + +2002-05-14 Stephen J. Turnbull + + * editfns.c (Fdecode_time): + (Fformat_time_string): + Check for invalid time. Thanks to Nick Pakoulin . + (make_time): Warning elimination (change arg name). + +2001-11-24 Andy Piper + + * window.c (Fsplit_window): Doc return type. + +2002-04-01 Andy Piper + + * emacs.c (Fkill_emacs): Only output message box in interactive + mode. + +2002-04-26 Andy Piper + + * config.h.in: pull in 21.5.x change to stop alloca warnings under + cygwin. + +2002-03-18 Gregory Steuck + + * unexelf.c: Use ELFSIZE or define from _LP64 to indicate a 64 + bit platform. + +2002-05-09 Stephen J. Turnbull + + * XEmacs 21.4.8 "Honest Recruiter" is released. + +2002-05-07 Nix + + Supersedes 2002-04-17 patch. + + * process.h (PROCESS_LIVE_P): Use the process status as + evidence of health, not the state of the input stream. + (PROCESS_READABLE_P): Say if the process is readable + from. (It may be dead nonetheless.) + (CHECK_READABLE_PROCESS): Test for that condition. + + * process.c (create_process): Use PROCESS_READABLE_P. + (read_process_output, set_process_filter): Likewise. + + * process.c (Fprocess_input_coding_system): Use CHECK_READABLE_PROCESS. + (Fset_process_input_coding_system, Fprocess_coding_system): Likewise. + + This code is #if 0'd, this is not the time to add new functions: + + * process.c (Fprocess_readable_p): Report readability status. + * process.c (Qprocess_readable_p): New, associated symbol... + * process.c (syms_of_process): ... initialize it. + +2002-05-04 Stephen J. Turnbull + + * XEmacs 21.4.7 "Economic Science" is released. + +2002-04-17 Nix + + * process.h (PROCESS_LIVE_P): Use the process status as + evidence of health, not the state of the input stream. + +2002-04-30 Charles G. Waldman + + * sysdep.c (sys_siglist): change "signum" to "signal" + +2001-04-21 Martin Buchholz + + * s/darwin.h: New file. + Thanks to Greg Parker . + +2002-04-23 Andreas Jaeger + + * s/linux.h (LIB_STANDARD): Define correctly for x86-64 and s390x + which use lib64 for 64-bit libs. + (START_FILES): Likewise. + +2002-02-11 Mike Sperber + + * device-x.c: + (x_IO_error_handler): + (x_init_device): Temporarily keep device in static variable + `device_being_initialized' so we can recover gracefully from + internal XOpenDevice failure. (XOpenDevice is documented to + return NULL on failure, but sometimes calls the IO error handler + instead.) + +2002-01-31 John H. Palmieri + + * dired.c (Ffile_name_all_completions): Change documentation -- + remove reference to completion-ignored-extensions. + * dired.c (vars_of_dired): Change documentation for + completion-ignored-extensions -- remove reference to + file-name-all-completions. + +2002-03-06 Jerry James + + * emodules.c (emodules_load): Fix multiple loading of same module. + +2002-01-25 Andrew Begel + * sysdll.c (dll_open): Changed to use RTLD_NOW instead of + RTLD_LAZY to avoid incorrect symbol binding when using nested + shared libraries on Solaris. + +2002-02-12 Stephen J. Turnbull + + * fileio.c (Ffind_file_name_handler): Improve docstring. + +2002-01-20 Stephen J. Turnbull + + * fns.c (Fmapconcat): Improve docstring. + +2002-01-03 Eric Gillespie, Jr. + + * device-gtk.c: Add prototype for + emacs_gtk_selection_clear_event_handle. + (gtk_init_device): Call gtk_selection_add_target for CLIPBOARD + selection. Setup signal handler for "selection_clear_event" + (emacs_gtk_selection_clear_event_handle). + + * select-gtk.c (emacs_gtk_selection_clear_event_handle): Handle + other applications owning the clipboard (based on + x_handle_selection_clear). + +2001-12-23 William M. Perry + + * menubar-gtk.c (gtk_popup_menu) Add sanity checks, fix crash. + +2002-01-04 Martin Buchholz + + * keymap.c (define_key_alternate_name): Parenthesize EQ. + +2001-12-17 Stephen J. Turnbull + + * XEmacs 21.4.6 "Common Lisp" is released. + +2001-12-16 Torsten Duwe + + * search.c (Freplace_match): Add missing sub-expression functionality. + + * buffer.c (decode_buffer): Add a check for pointer type to + decode_buffer, before gcc's CSE optimization reorders a + dereference in front of the allow_string test. + +2001-11-16 Darryl Okahata + + * window.c (window_loop): Fix bug that sometimes prevented + window_loop() from iterating across multiple devices. Also, at + Ben's request, changed infloop-detecting code to abort() instead + of silently terminating window_loop(). + +2001-11-21 Stephen J. Turnbull + + Based on analysis and patch by Simon Josefson . + * editfns.c (make_time): New function. + (Fencode_time): Use it instead of wasteful_word_to_lisp. + * lisp.h (make_time): Prototype and comment it. + * dired.c (wasteful_word_to_lisp): Deprecate. + (Ffile_attributes): Use make_time() instead of wasteful_word_to_lisp(). + +2001-10-31 Kyle Jones + + * fileio.c (auto_save_1): Use current coding system, not + escape-quoted. + +2001-11-13 Ben Wing + + * window.c: + * window.c (window_truncation_on): + * window.c (syms_of_window): + truncate-partial-width-windows should respect the buffer being + displayed, like other redisplay vars. + +2001-11-13 Hirokazu FUKUI + + * event-stream.c (Fread_key_sequence): save current buffer. + +2001-10-29 Andrew Begel + + * ntheap.c (_heap_init): Don't redefine in VS.NET (MSC >= 1300). + +2001-10-29 Andrew Begel + + * alloc.c (lcrecord_stats): Add space for types defined in modules. + +2001-10-26 Mike Alexander + + * event-msw.c (slurper_free_shared_data_maybe): Free the pipe handle. + +2001-10-25 Andy Piper + + * ChangeLog: + * dialog-msw.c (handle_directory_proc): new function. + (handle_directory_dialog_box): new fucntion. + (handle_file_dialog_box): use new directory dialog support. + (mswindows_make_dialog_box_internal): ditto. + * event-msw.c (mswindows_wnd_proc): minor fix to scrollbar event + handling. + (mswindows_find_frame): make global. + * fileio.c (Fexpand_file_name): build fix. + * general-slots.h: add Qdirectory. + * scrollbar-msw.c (mswindows_handle_scrollbar_event): fix focus + handling. + * syswindows.h (LOCAL_TO_WIN32_FILE_FORMAT): fix problem with + cygwin not leaving win32 paths unchanged. + * win32.c (Fmswindows_cygwin_to_win32_path): new function. Use the + cygwin runtime to do path conversion. + (Fmswindows_shell_execute): fix cygwin handling of URLs. + (syms_of_win32): add new function. + * window.c (window_loop): build fix. + +2001-10-15 Andy Piper + + (Fmswindows_shell_execute): fix handling of URL's under cygwin. + +2001-10-23 Stephen J. Turnbull + + * XEmacs 21.4.5 "Civil Service" is released. + +2001-04-08 Danny Colascione + + * glyphs-x.c: Force buffer-tab highlight update when moving the + buffer, avoiding an ugly black border, used for keyboard focus + indication, on a widget that can never have keyboard focus, the + buffer tab. + +2001-08-30 Daiki Ueno + + * process-unix.c (unix_open_multicast_group): Remove too much + conversion between host and network byte order. + +2001-09-10 Nix + + * src/buffer.c (kill_buffer): Undedicate windows showing BUF + before replacing them. + + * src/window.c (window_loop): Implement new UNDEDICATE_BUFFER + operation. + + * src/window.c (undedicate_windows): Use it. + * src/window.h: Add prototype. + +2001-09-17 Ben Wing + + * fileio.c (normalize_filename): + * fileio.c (Fexpand_file_name): + Fix various C++ compile errors in Andy's recent code. + + * callint.c (Fcall_interactively): + * editfns.c (Ftemp_directory): + * editfns.c (Fuser_full_name): + * emacs.c (argmatch): + * lread.c (locate_file_map_suffixes): + * redisplay-x.c (x_ring_bell): + Fix sign-compare warnings. + +2001-09-08 Andy Piper + + * fileio.c (normalize_filename): copied from nt.c + * (Ffile_name_directory): enable win32 paths under cygwin. + * (Ffile_name_nondirectory): ditto. + * (directory_file_name): ditto. + * (Fexpand_file_name): ditto. + * (Ffile_truename): ditto. + * (Fsubstitute_in_file_name): ditto. + * (Ffile_name_absolute_p): ditto. + * (Ffile_readable_p): ditto. + +2001-09-08 Andy Piper + + * device-msw.c (mswindows_finish_init_device): remove dde + initialization. + * device-msw.c (mswindows_init_dde): factor out from + mswindows_finish_init_device() + * device-msw.c (init_mswindows_very_early): new function + initialize but don't enable dde. + * emacs.c (main_1): call init_mswindows_very_early. + * event-msw.c: + * event-msw.c (mswindows_dde_callback): only execute when we are + ready. + * symsinit.h: declare init_mswindows_very_early. + +2001-05-02 Kirill 'Big K' Katsnelson + + [sjt: This has been in 21.5 for months with no complaints.] + + * console.h (struct console_methods): Added flags member. + (CONSOLE_IMPLEMENTATION_FLAGS): Defined. + (CONMETH_IMPL_FLAG): + (CONSOLE_IMPL_FLAG): Macro to check implememntation flags. + Defined XDEVIMPF_DONT_PREEMPT_REDISPLAY. + + * device.c (window_system_pixelated_geometry): Use the above macros. + + * device.h (DEVICE_IMPL_FLAG): Macro to check a device + implememntation flag. + * device.h (DEVICE_DISPLAY_P): Use it. + + * frame.c (delete_frame_internal): Use the above macro. + + * redisplay.c (redisplay_device): Use it. + (redisplay_device): Obey XDEVIMPF_DONT_PREEMPT_REDISPLAY. + (redisplay_frame): Ditto. + + * device-msw.c (mswindows_device_implementation_flags): Removed. + (msprinter_device_implementation_flags): Removed. + (console_type_create_device_mswindows): Removed references to + implementation_flags methods, set implementation flags here. + (console_type_create_device_mswindows): Added XDEVIMPF_DONT_PREEMPT. + + * device-gtk.c (gtk_device_implementation_flags): Removed method. + (console_type_create_device_gtk): Removed method declaration. + Added commented out statement which semantically matches the + commented out statement in the above removed method. + +2001-04-14 Gordon Sadler + + The attached patch fixes a few warnings. + + * src/emacs.c: prototype console_type_create_select_gtk for GTK only + * src/frame-gtk.c: guard against GNOME calls in GTK only + * src/redisplay-gtk.c: include #ifdef HAVE_POLL + * src/select-gtk.c: prototype lisp_to_time + +2001-06-08 Ben Wing + + ------ gc-in-window-procedure fixes ------ + + * alloc.c: + * alloc.c (struct post_gc_action): + * alloc.c (register_post_gc_action): + * alloc.c (run_post_gc_actions): + * alloc.c (garbage_collect_1): + Create "post-gc actions", to avoid those dreaded "GC during window + procedure" problems. + + * event-msw.c: + Abort, clean and simple, when GC in window procedure. We want + to flush these puppies out. + + * glyphs-msw.c: + * glyphs-msw.c (finalize_destroy_window): + * glyphs-msw.c (mswindows_finalize_image_instance): + Use a post-gc action when destroying subwindows. + + * lisp.h: + Declare register_post_gc_action(). + + * scrollbar-msw.c: + * scrollbar-msw.c (unshow_that_mofo): + Use a post-gc action when unshowing scrollbar windows, if in gc. + + * redisplay.c (mark_redisplay): + Add comment about the utter evilness of what's going down here. + + ------ cygwin setitimer fixes ------ + + * Makefile.in.in (sheap_objs): + * Makefile.in.in (profile_objs): + * Makefile.in.in (objs): + Compile profile.c only when HAVE_SETITIMER. + + * nt.c (mswindows_sigset): + * nt.c (mswindows_sighold): + * nt.c (mswindows_sigrelse): + * nt.c (mswindows_sigpause): + * nt.c (mswindows_raise): + * nt.c (close_file_data): + Style fixes. + + * nt.c: + Move setitimer() emulation to win32.c, because Cygwin needs it too. + + * profile.c: + * profile.c (Fstart_profiling): + * profile.c (Fstop_profiling): + Make sure we don't compile if no setitimer(). Use qxe_setitimer() + instead of just plain setitimer(). + + * signal.c: + * signal.c (set_one_shot_timer): + * signal.c (alarm): + Define qxe_setitimer() as an encapsulation around setitimer() -- + call setitimer() directly unless Cygwin or MS Win, in which case + we use our simulated version in win32.c. + + * systime.h: + * systime.h (struct itimerval): + * systime.h (ITIMER_REAL): + Prototype mswindows_setitimer() and qxe_setitimer(). Long + comment about "qxe" and the policy regarding encapsulation. + + * win32.c: + * win32.c (setitimer_helper_proc): + * win32.c (setitimer_helper_period): + * win32.c (setitimer_helper): + * win32.c (mswindows_setitimer): + Move setitimer() emulation here, so Cygwin can use it. + Rename a couple of functions and variables to be longer and more + descriptive. In setitimer_helper_proc(), send the signal + using either mswindows_raise() or (on Cygwin) kill(). If for + some reason we are still getting lockups, we'll change the kill() + to directly invoke the signal handlers. + + ------ windows shell fixes ------ + + * callproc.c: + * ntproc.c: + Comments about how these two files must die. + + * callproc.c (init_callproc): + On MS Windows, init shell-file-name from SHELL, then COMSPEC, + not just COMSPEC. (more correct and closer to FSF.) Don't + force a value for SHELL into the environment. (Comments added + to explain why not.) + + * nt.c (init_user_info): + Don't shove a fabricated SHELL into the environment. See above. + +2001-06-01 Ben Wing + + * Makefile.in.in (ldflags): + eliminate that pesky "defaulting to 00401000" warning. + * nt.h: + eliminate warnings. + +2001-06-15 Golubev I. N. + + * s/sco5.h (FORCE_ALLOCATE_PTY_THE_OLD_FASHIONED_WAY): #define. + * process-unix.c (allocate_pty): #ifndef "modern" pty allocation. + +2001-04-24 Jerry James + + * faces.h: pass parameters to Fadd_spec_to_specifier in the + correct order. + +2001-06-01 Ben Wing + + * event-msw.c (debug_mswin_messages): + conditionalize the messages that were causing compile errors. + (if only macros could generate #ifdef statements ...) + +2001-07-28 Stephen J. Turnbull + + * XEmacs 21.4.4 "Artificial Intelligence" is released. + +2001-07-22 Stephen J. Turnbull + + * event-msw.c (mswindows_wnd_proc): Add GC debugging assert. + +2001-07-22 Stephen J. Turnbull + + * config.h.in (IPV6_CANONICALIZE): New #define for --with-ipv6-lookup. + * process-unix.c (unix_canonicalize_host_name): + sysdep.c (init_system_name): + Use it to conditionally support IPv6 canonicalization. + +2001-05-31 Paul Stodghill + + * event-msw.c: + Cygwin does not define WM_IME_xxx. Modify the #if's accordingly. + +2001-05-19 Paul Krause + + * scrollbar-msw.c: Fixes a crash that occurs on Windows when an + attempt is made to scroll when no scroll bar is available. + +2001-04-19 Glynn Clements + + * input-method-motif.c (XIM_delete_frame): New callback. + (XIM_init_frame): Register it. (Reapplied by SJT, it somehow + got deleted from 21.4.3.) + +2001-06-01 Ben Wing + + * nt.c (mswindows_utime): + * nt.c (close_file_data): + fix off-by-one-indirection error. + +2001-05-29 Adrian Aichner + + * fileio.c: Include nt.h. Remove lisp_string_set_file_times() + because set_file_times() now takes Lisp_Object path, instead of + char*. + * nt.c: Include buffer.h. + * nt.c (convert_from_time_t): New. + * nt.c (mswindows_utime): New. Use utime, since SetFileTime does + not set mtime correctly. + * nt.h: Declare mswindows_utime(). + * sysdep.c (set_file_times): set_file_times() now takes Lisp_Object + path, instead of char*. + * systime.h: Include on WIN32_NATIVE. + +2001-05-30 Ben Wing + + For 21.4: + + (Stephen, just take all event-msw.c patches. This includes + the "iconify" fix below.) + + * event-msw.c: + * event-msw.c (mswindows_dequeue_dispatch_event): + * event-msw.c (assert): + * event-msw.c (emacs_mswindows_quit_p): + * event-msw.c (debug_mswin_messages): + * event-msw.c (debug_output_mswin_message): + * event-msw.c (vars_of_event_mswindows): + Fix yet more problems with C-g handling. + Implement debug-mswindows-events. + +2001-05-24 Kirill 'Big K' Katsnelson + + * event-msw.c (WM_DROPFILES): Use correct type for OLE characters. + +2001-05-23 Ben Wing + + * event-msw.c (winsock_writer): + * event-msw.c (winsock_closer): + prior kludgy code was clobbering the buffer, thinking it was + "unused" space to store an unneeded return value; instead, use + the variable we've already got staring us in the face. + +2001-05-17 Andy Piper + + * sysfile.h: don't assume that file attributes are boolean + +2001-05-23 Ben Wing + + * device-msw.c (msprinter_init_device): + signal an error rather than crash with an unavailable network + printer (from Mike Alexander). + + * event-msw.c: + * event-msw.c (struct winsock_stream): + * event-msw.c (winsock_writer): + * event-msw.c (winsock_closer): + * event-msw.c (make_winsock_stream_1): + cleanup headers. fix (hopefully) an error with data corruption + when sending to a network connection. + + * fileio.c (Fexpand_file_name): Fix evil code that attempts + to handle the ~user prefix by (a) always assuming we're referencing + ourselves and not even verifying the user -- hence any file with + a tilde as its first char is invalid! (b) if there wasn't a slash + following the filename, the pointer was set *past* the end of + file and we started reading from uninitialized memory. Now we + simply treat these as files, always. + + * buffer.c (common_init_complex_vars_of_buffer): comment change. + +2001-05-19 Ben Wing + + * eval.c: doc comment about gcpro'ing in record_unwind_protect. + + * process-nt.c: + * process-nt.c (vars_of_process_nt): + remove unused mswindows-quote-process-args. rec for 21.4. + +2001-05-12 Ben Wing + + * event-msw.c (mswindows_dde_callback): + * event-msw.c (mswindows_wnd_proc): + eliminate cygwin warnings. + +2001-05-06 Ben Wing + + * console-msw.h: + * device-msw.c: + * device-msw.c (print_dialog_worker): + * device-msw.c (mswindows_handle_print_dialog_box): + * device-msw.c (syms_of_device_mswindows): + * dialog-msw.c (mswindows_make_dialog_box_internal): + * general-slots.h: + implement printing the selection when it's selected. + +2001-05-20 Drazen Kacar + + * glyphs-gtk.c (gtk_resource_instantiate): C++ comment -> #if 0 + +2001-05-11 Yoshiki Hayashi + + * lisp.h (EMACS_INT_MAX): This should be one bit less since + EMACS_INT is signed. + +2001-04-15 Michael Lausch + + * scrollbar-gtk.c (gtk_create_scrollbar_instance): Call + gtk_widget_request_size() to give scrollbar >0 width for + GTK >1.2.8. + +2001-05-30 William M. Perry + + * event-gtk.c: Check for buttons as modifier keys. + +2001-05-25 Craig Lanning + + * s\mingw32.h: + Properly find MinGW's inside Cygwin's restructured + include directories. Don't try to include + since we are dropping support for MinGW in versions of Cygwin + earlier than b21. + * nt.c: + Drop support for MinGW in versions of Cygwin before b21. + * sysdep.c: + Properly find MinGW's inside Cygwin's restructured + include directories. + * syswindows.h: + Drop support for MinGW in versions of Cygwin before b21. + * unexcw.c: + Even though a.out.h is no longer detected by configure, allow + MinGW to use it until we figure out how to do the job with Win32. + +2001-07-11 Matt Tucker + + * syntax.c (find_start_of_comment): + Fix `unbalanced parentheses' bug when dealing with mixed comment + styles in c++/java/etc. mode + +2001-05-29 Mike Alexander + + * console-msw.h (FRAME_MSPRINTER_CHARHEIGHT): Unswap + FRAME_MSPRINTER_CHARWIDTH and FRAME_MSPRINTER_CHARHEIGHT + +2001-05-17 Andrew Begel + + * lrecord.h (INIT_EXTERNAL_LRECORD_IMPLEMENTATION): Add needed cast. + +2001-03-31 Mike Sperber + + * search.c (Freplace_match): Support FSF-style specification of + match subexpression when applied to a buffer. + +2001-05-27 Karl M. Hegbloom + + * event-stream.c (is_scrollbar_event): add missing semicolon + +2001-05-22 Isaac Hollander + + * Makefile.in.in: Use TAR macro instead of hardcoding + tar. Allows use of GNU tar instead of system tar + +2001-05-27 Karl M. Hegbloom + + * event-stream.c (is_scrollbar_event): add missing semicolon + +2001-05-17 Stephen J. Turnbull + + * XEmacs 21.4.3 "Academic Rigor" is released. + +2001-05-17 Stephen J. Turnbull + + * regex.c: Define DECLARE_NOTHING when "lisp.h" is not included. + +2001-05-08 Yoshiki Hayashi + + * buffer.c (Vcase_fold_search): Remove obsolete + comment about non ASCII case-fold-search. This + bug has been fixed by case-table changes. + +2001-05-11 Stephen J. Turnbull + + * event-msw.c: Restore include of events-mod.h. + +2001-04-22 zhaoway + + * event-stream.c (is_scrollbar_event): Noop returning 0 if + !HAVE_SCROLLBARS. + +2001-05-10 Stephen J. Turnbull + + * XEmacs 21.4.2 "Developer-Friendly Unix APIs" is released. + +2001-05-08 Yoshiaki Kasahara + + * mule-charset.c (Fmake_charset): Add missing else. + +2001-04-23 Ben Wing + + * event-msw.c (FAKE_MOD_QUIT): + * event-msw.c (mswindows_dequeue_dispatch_event): + * event-msw.c (mswindows_wnd_proc): + * event-msw.c (emacs_mswindows_quit_p): + Get critical quit working. + +2001-05-05 Ben Wing + + * console-msw.h: + * device-msw.c: + * device-msw.c (mswindows_get_default_margin): + * frame-msw.c (mswindows_size_frame_internal): + * frame-msw.c (msprinter_init_frame_1): + * frame-msw.c (vars_of_frame_mswindows): + Change top/bottom margin defaults to 0.5 inches. + +2001-05-01 Martin Buchholz + + Fix link error with gcc 3.0 on Linux. + * terminfo.c (UP): Remove. + * terminfo.c (BC): Remove. + * terminfo.c (PC): Remove. + They weren't used, and in any case, these symbols should be + defined in the *library*. + +2001-05-03 Martin Buchholz + + * s/aix4.h: Fix crash with xlc -O3. + Improve comment explaining how -O3 works. + +2001-04-15 Ben Wing + + * event-stream.c: + * event-stream.c (Fnext_event): + * event-stream.c (is_scrollbar_event): + * event-stream.c (execute_command_event): + Better fix for Yoshiki's `C-x @ h x causes a + crash' problem. His fix introduces other problems. We filter + out scrollbar events specifically, making them somewhat invisible + to command-building, and not appearing in `this-command-keys'. + More work is still needed (see comments in event-stream.c), but + this fixes all the major problems. + +2001-04-20 Ben Wing + + * .cvsignore: Added stuff for Windows. + +2001-04-28 Ben Wing + + * buffer.c (Ferase_buffer): + * editfns.c (buffer_insert1): + * editfns.c (Finsert_before_markers): + * editfns.c (Finsert_string): + * editfns.c (Finsert_char): + * editfns.c (Fdelete_region): + * editfns.c (Fwiden): + * editfns.c (Fnarrow_to_region): + remove bogus lines setting zmacs_region_stays to 0. + +2001-04-15 Gunnar Evermann + + * process-unix.c (unix_open_network_stream): If connect() fails + invalidate file descriptor after closing it. + +2001-03-08 Mike Alexander + + * event-msw.c (mswindows_need_event_in_modal_loop): + Don't dispatch a message if we didn't get one. + (mswindows_need_event): + Terminate the correct process when one exits instead of the first + one on Vprocess_list and look for process termination when in + mswindows_protect_modal_loop. + +2001-04-19 Stephen J. Turnbull + + * XEmacs 21.4.1 "Copyleft" is released. + +2001-04-19 Glynn Clements + + * input-method-motif.c (XIM_delete_frame): New callback. + (XIM_init_frame): Register it. + +2001-04-16 Stephen J. Turnbull + + * XEmacs 21.4.0 "Solid Vapor" is released. + +2001-04-15 Ben Wing + + * cmdloop.c (call_command_loop): + Fix braino in bit-rotting code. + +2001-04-07 Hrvoje Niksic + + * extents.c (Fset_extent_endpoints): Force creation of extent info + in buffer_or_string. + + * extents.c (process_extents_for_insertion_mapper): Correctly + check for open-open zero-length extents. + +2001-04-16 Stephen J. Turnbull + + * lisp.h: New typedefs Memory_count, Element_count. + * regex.c: + * regex.h: + Sign-compare warning elimination: several unsigned -> signed. + Based on work by Ben Wing . + +2001-04-14 Stephen J. Turnbull + + * XEmacs 21.2.47 "Zephir" is released. + +2001-04-02 Jan Vroonhof + + * redisplay.c (add_bufbyte_string_runes): Update data->bytepos + +2001-04-03 Mike Sperber + + * search.c: Revert previous patch due because of release. + +2001-03-30 Ben Wing + + * s\cygwin32.h: + Add missing killpg prototype. + + * elhash.c: + Add a comment about fixing problems when a new entry is added + while mapping. + + * frame-msw.c (mswindows_init_frame_1): + Fix compile warnings. + + * menubar.c (vars_of_menubar): + Provide `menu-accelerator-support' to indicate that we properly + support %_ in menu specifications, so that package code can + conditionalize on this (and remove %_ from menu specifications + on older versions). + + * event-msw.c: + * scrollbar-msw.c: + * scrollbar-msw.c (can_scroll): + * scrollbar-msw.h: + Fix handling of mouse wheel under Windows to follow standards -- + now scrolls window under pointer, not selected window. + +2001-03-31 Mike Sperber + + * search.c (Freplace_match): Support FSF-style specification of + match subexpression when applied to a buffer. + +2001-03-15 Martin Buchholz + + * keymap.c (Fmap_keymap): map-keymap explicitly allows a mapping + function to modify KEYMAP, so map over a copy of the hash table. + +2001-03-21 Martin Buchholz + + * XEmacs 21.2.46 "Urania" is released. + +2001-03-20 Dan Holmsand + + * realpath.c (xrealpath): Make file-truename work with symlinks to + /cygdrive paths on cygwin. Always lowercase drive-letters on + native windows. + (cygwin_readlink): Don't try to find canonical filename unless + file exists. + +2001-03-15 Stephen J. Turnbull + + * ChangeLog: Log GTK merge. + + * dumper.c: + * select-x.c: + * specifier.c: + * symeval.h: + Revert gratuitous whitespace changes from GTK merge. + + * emacs.c: Document end of complex #ifdef @ l. 1495. + + +2001-03-12 Andy Piper + + * mingw32.h: unfortunately cygnus changed mingw32 -> mingw so we + have to do likewise. + +2001-03-12 Andy Piper + + * sysdep.c: we only support mingw now. + +2001-03-09 Andy Piper + + * unexcw.c (copy_executable_and_dump_data_section): making approx + overrun a warning only. + +2001-03-10 William M. Perry + + * faces.c (complex_vars_of_faces): Rewrote the font mucking to + satisfy Stephen's identical-after-cpp plea. + +2001-03-02 Ben Wing + + * cmds.c: + * cmds.c (Fforward_char): + * syntax.c: + * window.c: + + Augment documentation of the most common motion commands to make + note of the shifted-motion support. + +2001-03-02 Ben Wing + + * nt.c (mswindows_fstat): + * nt.c (mswindows_stat): + * search.c (boyer_moore): + Fix compile warnings under Windows. + + * sysdep.c (sys_readdir): + Fix buggy filename-conversion code under Mule. + +2001-03-09 William M. Perry + + * Makefile.in.in: + * config.h.in: + * console.c: + * console.h: + * device.c: + * device.h: + * dragdrop.c: + * emacs.c: + * event-stream.c: + * events.c: + * events.h: + * faces.c: + * frame.h: + * general-slots.h: + * glyphs.c: + * gutter.c: + * inline.c: + * lisp.h: + * lrecord.h: + * make-src-depend: + * redisplay-output.c: + * redisplay.c: + * symsinit.h: + * sysfile.h: + * toolbar.c: + * window.c: + The Great GTK Merge. + + * ChangeLog.GTK: + * console-gtk.c: + * console-gtk.h: + * device-gtk.c: + * emacs-marshals.c: + * emacs-widget-accessors.c: + * event-gtk.c: + * frame-gtk.c: + * gccache-gtk.c: + * gccache-gtk.h: + * glade.c: + * glyphs-gtk.c: + * glyphs-gtk.h: + * gtk-glue.c: + * gtk-xemacs.c: + * gtk-xemacs.h: + * gui-gtk.c: + * gui-gtk.h: + * menubar-gtk.c: + * native-gtk-toolbar.c: + * objects-gtk.c: + * objects-gtk.h: + * redisplay-gtk.c: + * scrollbar-gtk.c: + * scrollbar-gtk.h: + * select-gtk.c: + * toolbar-gtk.c: + * ui-byhand.c: + * ui-gtk.c: + * ui-gtk.h: + The Great GTK Merge: new files. + +2001-02-26 Ben Wing + + Reapplied Lstream change. + +2001-02-26 Ben Wing + + Undid the last change, since it is more controversial than I + thought. It should be back in at some point soon. + +2001-02-25 Ben Wing + + * buffer.c: + * callproc.c (Fold_call_process_internal): + * event-msw.c (ntpipe_slurp_reader): + * event-msw.c (ntpipe_shove_writer): + * event-msw.c (winsock_reader): + * event-msw.c (winsock_writer): + * file-coding.c: + * file-coding.c (detect_eol_type): + * file-coding.c (detect_coding_type): + * file-coding.c (determine_real_coding_system): + * file-coding.c (Fdetect_coding_region): + * file-coding.c (decoding_reader): + * file-coding.c (decoding_writer): + * file-coding.c (mule_decode): + * file-coding.c (Fdecode_coding_region): + * file-coding.c (encoding_reader): + * file-coding.c (encoding_writer): + * file-coding.c (mule_encode): + * file-coding.c (Fencode_coding_region): + * file-coding.c (detect_coding_sjis): + * file-coding.c (decode_coding_sjis): + * file-coding.c (encode_coding_sjis): + * file-coding.c (detect_coding_big5): + * file-coding.c (decode_coding_big5): + * file-coding.c (encode_coding_big5): + * file-coding.c (detect_coding_ucs4): + * file-coding.c (decode_coding_ucs4): + * file-coding.c (encode_coding_ucs4): + * file-coding.c (detect_coding_utf8): + * file-coding.c (decode_coding_utf8): + * file-coding.c (encode_coding_utf8): + * file-coding.c (detect_coding_iso2022): + * file-coding.c (decode_coding_iso2022): + * file-coding.c (encode_coding_iso2022): + * file-coding.c (decode_coding_no_conversion): + * file-coding.c (encode_coding_no_conversion): + * glyphs-x.c (write_lisp_string_to_temp_file): + * gpmevent.c (tty_get_foreign_selection): + * lisp.h: + * lstream.c: + * lstream.c (Lstream_flush_out): + * lstream.c (Lstream_adding): + * lstream.c (Lstream_write_1): + * lstream.c (Lstream_write): + * lstream.c (Lstream_raw_read): + * lstream.c (Lstream_read_more): + * lstream.c (Lstream_read): + * lstream.c (Lstream_unread): + * lstream.c (Lstream_fputc): + * lstream.c (stdio_reader): + * lstream.c (stdio_writer): + * lstream.c (filedesc_reader): + * lstream.c (filedesc_writer): + * lstream.c (lisp_string_reader): + * lstream.c (struct fixed_buffer_stream): + * lstream.c (make_fixed_buffer_input_stream): + * lstream.c (make_fixed_buffer_output_stream): + * lstream.c (fixed_buffer_reader): + * lstream.c (fixed_buffer_writer): + * lstream.c (struct resizing_buffer_stream): + * lstream.c (resizing_buffer_writer): + * lstream.c (dynarr_writer): + * lstream.c (lisp_buffer_reader): + * lstream.c (lisp_buffer_writer): + * lstream.h: + * lstream.h (lstream_implementation): + * lstream.h (struct lstream): + * md5.c (Fmd5): + * process-nt.c (nt_send_process): + * process-unix.c (unix_send_process): + + Correct Lstream lossage due to mixing of signed and unsigned + quantities. All Lstream uses of size_t and ssize_t are now a + single signed data type Lstream_data_count. This fixes problems + under Windows with sending large quantities of data to a process, + and may well fix other subtle bugs. + +2001-02-23 Martin Buchholz + + * XEmacs 21.2.45 "Thelxepeia" is released. + +2001-02-21 Martin Buchholz + + * lisp-union.h (XSETINT): + (XSETCHAR): + (XSETOBJ): + Reverse previous change of 2001-02-06. + +2001-02-20 Matt Tucker + + Fix `VALID_BYTIND_P' crashes in regex.c when using narrowed + buffers. + * syntax.h (SYNTAX_CACHE_BYTE_TO_CHAR): + * syntax.h (SYNTAX_CACHE_OBJECT_BYTE_TO_CHAR): + Add `BI_BUF_BEGV' to bytepos before calculating bufpos. + * regex.c (POS_AS_IN_BUFFER): removed + * regex.c (re_search_2): + * regex.c (re_match_2): + Don't use an offset of 1 when calculating buffer positions, since + `BI_BUF_BEGV' does it already. + +2001-02-18 Wim Dumon + + * insdel.c (prepare_to_modify_buffer): Also check for + supersession when clash-detection is enabled. + +2001-02-17 Matt Tucker + + * regex.c (re_match_2_internal): + Convert temp characters from 'const unsigned char' to 're_char'. + Fix crashing bug with extended characters under mule. + * syntax.c (Qsyntax_table): Moved from vars_of_syntax to + syms_of_syntax. Use defsymbol to define. Fixes hanging bug with + font-lock, pdump, and new syntax-table code. + * syntax.c (find_start_of_comment): + (find_end_of_comment): + (forward-comment): + Fix crashing bugs involving moving beyond end of buffer. + * syntax.c (find_start_of_comment): + Fixed logic to allow proper detection of cases where the same + character is used to end both a two-char comment start and a + two-char comment end sequence. Fixes `(forward-comment -1)'. + * syntax.c (find_start_of_comment): + Return position just past last comment-end character for all cases + (previously was only done for two-char comment-end sequences). + * syntax.c (forward-comment): + Take value returned from `find_end_of_comment', rather than + incrementing it. + * syntax.h (SYNTAX_CACHE_BYTE_TO_CHAR): + Properly deal with BUFFERP (syntax_cache.object) + +2001-02-17 Martin Buchholz + + * alloc.c (Fgarbage_collect): + * alloc.c (make_bit_vector_from_byte_vector): + -Wsign-compare-correctness. + +2001-02-16 Martin Buchholz + + * lisp-union.h (XSETINT): Eliminate unnecessary temp var. + (XSETCHAR): Likewise. + (XSETOBJ): Likewise. + +2001-02-15 Martin Buchholz + + * mule-canna.c (canna-func-delete_previous): + Rename to canna-func-delete-previous. + +2001-02-14 Martin Buchholz + + * mule-ccl.c (ccl_driver): Warning suppression. Use countof. + +2001-02-13 Matt Tucker + + * font-lock.c (find_context): Fix C++ compile errors introduced by + recent patch + +2001-02-13 Martin Buchholz + + * s/aix4.h: Later versions of IBM C compiler need a bug workaround + pragma, but earlier ones barf on the same pragma. + +2001-02-06 Mike Sperber + + * emacs.c (complex_vars_of_emacs): Add `mule-lisp-directory' and + `configure-mule-lisp-directory'. + +2001-02-12 Martin Buchholz + + Make sure dump-id.c is compiled in the same way as other .c's. + Fixes pdump compilation failure with HP's cc, which defaults to K&R. + * dump-id.h: Remove. + * emacs.c: Move dump-id.h into dumper.h. + * dumper.h: Move dump-id.h into dumper.h. + * Makefile.in.in: + Use standard .c.o rule for building dump-id.o. + Remove preprocessor flags from link command. + Add dump-id.o to ${otherobjs} if PDUMP. + +2001-02-07 Matt Tucker + + Port FSF 20.7 syntax table improvements. + * syntax.c. + * syntax.h. + + Fixups for new syntax table stuff. + * dired.c: Include syntax.c. + (Fdirectory_files): Initialize regex_match_object and + regex_emacs_buffer. + * extents.h: EXFUN Fnext_extent_change, Fprevious_extent_change, + and Fget_char_property. + + Use ported FSF 20.7 syntax table improvements. + * font-lock.c. + * regex.c. + * search.c. + +2001-02-09 Martin Buchholz + + * regex.c (Boolean): Renamed to `re_bool', to avoid conflict with + Unixware's enum boolean from sys/types.h. + +2001-02-10 Martin Buchholz + + Fix support for building with latest Purify. + * Makefile.in.in (PURIFY_LIBS): Remove thread flags. + (PURIFY_FLAGS): Likewise. + +2001-02-09 Martin Buchholz + + * fileio.c (lisp_string_set_file_times): New. + * fileio.c (Fcopy_file): Use it. + Fixes bug: + (copy-file filename non-ascii-filename t t) + ==> No such file or directory, non-ascii-filename + +2001-02-10 Martin Buchholz + + * glyphs-x.c (generate_cursor_fg_bg): Avoid a warning. + USHRT_MAX seems clearer than ~0 anyways. + +2001-02-09 Martin Buchholz + + dumper improvements. Inspired by Olivier. + * dumper.c (pdump_max_align): New. + * dumper.c (pdump_add_entry): Use pdump_max_align. + * dumper.c (pdump_get_entry_list): Likewise. + * dumper.c (pdump_scan_by_alignment): Likewise. + Don't iterate through unnecessary alignments. + * dumper.c (pdump_file_get): No need to align result of malloc(). + * dumper.c (pdump_mallocadr): Remove. + The result of malloc() is guaranteed to be maximally aligned. + * dumper.c: s/elmt/elt/g; + * dumper.c (pdump_object_table): Allocate dynamically, not statically. + * dumper.c (pdump_alert_undump_object): Likewise. + * dumper.c (pdump_align_table): + Don't support alignments > 64. + Store ALIGNOF's, not shift counts, in table. + +2001-02-09 Martin Buchholz + + * s/mingw32.h (HAVE_STRUCT_UTIMBUF): Remove. + * s/windowsnt.h (HAVE_STRUCT_UTIMBUF): Remove. + * systime.h: Use HAVE_UTIME. + * sysdep.c (struct utimbuf): Remove. + * sysdep.c (set_file_times): Prefer utime() to utimes(). + * config.h.in (HAVE_UTIME): New. + * config.h.in (HAVE_UTIME_H): Remove. + * config.h.in (HAVE_STRUCT_UTIMBUF): Remove. + +2001-02-09 Martin Buchholz + + * s/aix4.h: Hide #pragmas inside #ifndef NOT_C_CODE. + +2001-02-08 Martin Buchholz + + * s/irix6-0.h: Use the standard system memmove, not bcopy. + +2001-02-08 Martin Buchholz + + * XEmacs 21.2.44 "Thalia" is released. + +2001-02-06 Martin Buchholz + + Fixes crashes in kill-emacs on some systems. + * process-unix.c (unix_kill_child_process): + It's OK for kill() to fail with ESRCH. + +2001-02-07 Martin Buchholz + + Contortions to make .gdbinit tricks work on most systems. + * alloc.c (dbg_inhibit_dbg_symbol_deletion): Keep debugger info. + * alloc.c (dbg_valmask): Make non-const. + * alloc.c (dbg_typemask): Make non-const. + * alloc.c (dbg_USE_UNION_TYPE): Make non-const. + * alloc.c (dbg_valbits): Make non-const. + * alloc.c (dbg_gctypebits): Make non-const. + * .gdbinit (decode_object): Make it work with AIX cc. + +2001-02-06 Martin Buchholz + + * elhash.c (make_general_lisp_hash_table): + Use simpler and more efficient calloc to clear entries. + +2001-02-07 Martin Buchholz + + * window.c (window_scroll): Work around an AIX C compiler bug. + Fixes 'scroll-up' does nothing problem with xlC. + +2001-02-05 Martin Buchholz + + * .gdbinit: Remove obsolete comment. + +2001-01-31 Mike Alexander + + * select.c (Fown_selection_internal): Set owned_p for device + method correctly. + +2001-02-01 Martin Buchholz + + Port to g++ 2.97. + "not" cannot be used as a macro name as it is an operator in C++ + * config.h.in: Stop #defining `not'. + * chartab.c (check_category_char): not ==> not_p + * chartab.h: Likewise. + * regex.c (re_match_2_internal): Likewise. + +2001-02-02 Martin Buchholz + + * lisp-disunion.h: Fix up comments. + +2001-01-31 Martin Buchholz + + * keymap.c (define_key_check_and_coerce_keysym): + (syms_of_keymap): + Support mouse-6 and mouse-7 bindings in the obvious way. + +2001-02-01 Martin Buchholz + + * m/hp9000s300.h (UNEXEC): Check for HPUX, not !BSD. + +2001-01-30 Martin Buchholz + + Previous patch changing DEFVAR_INT to use EMACS_INT was incomplete. + Previous patch missed DEFVAR_INT_MAGIC. + Make sure future DEFVAR_foo use correct types. + * symeval.h (DEFVAR_SYMVAL_FWD_FIXNUM): New. + * (DEFVAR_SYMVAL_FWD_INT): Add type checking. + * (DEFVAR_SYMVAL_FWD_OBJECT): Add type checking. + * (DEFVAR_INT_MAGIC): Use DEFVAR_SYMVAL_FWD_FIXNUM. + * (DEFVAR_INT): Likewise. + * redisplay.c (vertical_clip): Should be of type Fixnum. + * redisplay.c (horizontal_clip): Likewise. + * lisp.h (dump_add_opaque_int): New. + (dump_add_opaque_fixnum): New. + +2001-01-29 Andy Piper + + * glyphs-widget.c (check_valid_int_or_function): allow symbols + since they can be eval'ed + +2001-01-29 Martin Buchholz + + * lisp.h (ALIGNOF): Make it work on non-gcc C++ compilers. + Oops, XEmacs redefines `class'. Use `typename' instead. + +2001-01-28 Martin Buchholz + + * dumper.c: Fix C++ compile errors. + +2001-01-29 Martin Buchholz + + * tparam.c: Use correct prototypes. + +2001-01-28 Martin Buchholz + + * sysproc.h: #include util.h for NetBSD's openpty. + +2001-01-27 Martin Buchholz + + More 64-bit correctness. + The C value of a DEFVAR_INT should be of type EMACS_INT, not int. + Use a typedef `fixnum' for the type used for DEFVAR_INT. + Fix up comments. + This finally finishes the 64-bit SGI port. + Fixes things like (let ((gc-cons-threshold most-positive-fixnum)) ...). + * symbols.c: Fix up comments and type casts. + * symbols.c (do_symval_forwarding): s/int/Fixnum/g + * symbols.c (store_symval_forwarding): s/int/Fixnum/g + * symeval.h (Fixnum): New type. + * symeval.h (symbol_value_type): Fix up comment. + + * commands.h: + * nt.c: + * emacs.c: + * data.c: + * redisplay.c: + * abbrev.c: + * dired-msw.c: + * event-Xt.c: + * eldap.c: + * window.c: + * sound.c: + * event-stream.c: + * eval.c: + * buffer.c: + * mule-canna.c: A million DEFVAR_INTs here... + * mule-canna.c (count_char): s/int */Fixnum */g in arglist. + * extents.c: + * cmdloop.c: + * lisp.h: + * select-x.c: + * console-x.h: + * event-msw.c: + * mule-wnnfns.c: + * hpplay.c: + * ralloc.c: + * alloc.c: + * keymap.c: + * profile.c: + s/int/Fixnum/g in DEFVAR_INT declarations. + +2001-01-26 Martin Buchholz + + Port pdump to SGI alignment-sensitive environment. + Lisp Object sizeof methods now return aligned sizes. Rely on that. + Eliminate is_lrecord since Lisp_Objects sizeof methods are now all + properly aligned. + Define and use aligned reading and writing macros. + Use buffered stdio instead of posix i/o for faster dumping. + Eliminate kludgy 256 byte space for header. + Read and write from dump file using structs for alignment safety. + * dumper.c (pdump_align_stream): New. + * dumper.c (PDUMP_ALIGN_OUTPUT): New. + * dumper.c (PDUMP_READ_ALIGNED): New. + * dumper.c (PDUMP_WRITE_ALIGNED): New. + * dumper.c (pdump_static_Lisp_Object): New struct. + * dumper.c (pdump_static_pointer): New struct. + * dumper.c (pdump_entry_list_element): Remove is_lrecord member. + * dumper.c (pdump_add_entry): Remove is_lrecord parameter. + * dumper.c (pdump_dump_data): Rely on sizeof method alignment. + * dumper.c (pdump_allocate_offset): Rely on sizeof method alignment. + + * dumper.c (pdump_backtrace): + * dumper.c (pdump_get_indirect_count): + * dumper.c (pdump_register_object): + * dumper.c (pdump_register_struct): + * dumper.c (pdump_reloc_one): + * dumper.c (pdump_scan_by_alignment): + * dumper.c (pdump_dump_from_root_struct_ptrs): + * dumper.c (pdump_dump_opaques): + * dumper.c (pdump_dump_rtables): + * dumper.c (pdump_dump_from_root_objects): + * dumper.c (pdump): + * dumper.c (pdump_load_finish): + Use aligned reading and writing. + + * dumper.c (pdump_free): Make static. + * dumper.c (pdump_hFile): Likewise. + * dumper.c (pdump_hMap): Likewise. + +2001-01-26 Martin Buchholz + + * XEmacs 21.2.43 "Terspichore" is released. + +2001-01-25 Martin Buchholz + + Type fiddling for window_config.saved_windows_count + * window.c (struct window_config): + Make saved_windows_count member unsigned. + * window.c (sizeof_window_config_for_n_windows): + Make parameter unsigned. + * window.c (mark_window_config): + * window.c (window_config_equal): + * window.c (free_window_configuration): + * window.c (Fset_window_configuration): + * window.c (count_windows): + * window.c (Fcurrent_window_configuration): + * window.c (reinit_vars_of_window): + Update all callers and users. + +2001-01-25 Martin Buchholz + + Alignment correctness for flexible arrays. + * lisp.h (FLEXIBLE_ARRAY_STRUCT_SIZEOF): + Make alignment-correct. Add interesting comments. + * alloc.c (size_vector): + * alloc.c (make_vector_internal): + * alloc.c (make_bit_vector_internal): + * alloc.c (sweep_bit_vectors_1): + * fns.c (size_bit_vector): + Update all callers of FLEXIBLE_ARRAY_STRUCT_SIZEOF to add new arg. + * window.c (sizeof_window_config_for_n_windows): + Use FLEXIBLE_ARRAY_STRUCT_SIZEOF. + +2001-01-24 Martin Buchholz + + * lread.c (read1): Rename `fexp', which is #defined in SGI's math.h + +2001-01-23 Andy Piper + + * select.c (Fown_selection_internal): pass owned_p + + * select-msw.c (mswindows_own_selection): New Signature. + + * console.h (struct console_methods): add owned_p to + _own_selection. + + * select-x.c (x_own_selection): pass owned_p + (hack_motif_clipboard_selection): use owned_p + (vars_of_select_x): new variable - + x_selection_strict_motif_ownership. + +2001-01-23 Martin Buchholz + + * specifier.h (specifier_data_offset): Remove pointless parens. + * glyphs.h (IMAGE_SPECIFIER_DATA): Likewise. + +2001-01-24 Martin Buchholz + + Make Lisp_Object sizeof methods be alignment-correct. + pdump must restore objects to the same alignment as the C compiler + assumes. It really matters on SGIs. + * lstream.c (aligned_sizeof_lstream): New. + (sizeof_lstream): Use aligned_sizeof_lstream. + (Lstream_new): Likewise. + * opaque.c (aligned_sizeof_opaque): New. + (sizeof_opaque): Use aligned_sizeof_opaque. + (make_opaque): Likewise. + * specifier.c (aligned_sizeof_specifier): New. + (sizeof_specifier): Use aligned_sizeof_specifier. + (make_specifier_internal): Likewise. + +2001-01-23 Martin Buchholz + + * lstream.h (struct lstream): Use max_align_t for trailing data. + * specifier.h (struct Lisp_Specifier): Likewise. + +2001-01-22 Martin Buchholz + + * mule-ccl.c (CCL_Extension): Renamed from CCL_Extention. + (CCL_SUCCESS): Kludge to prevent Sun cc compiler warnings. + (CCL_SUSPEND): Likewise. + (CCL_INVALID_CMD): Likewise. + (CCL_CALL_FOR_MAP_INSTRUCTION): Likewise. + (ccl_driver): Likewise. + (CCL_WRITE_CHAR): Macro hygiene. + (CCL_WRITE_STRING): Macro hygiene. + +2001-01-22 Martin Buchholz + + Port "portable" dumper to SunOS 4 and HP-UX. + * s/aix4.h (AIX4): Move MAP_FAILED definition elsewhere. + * emacs.c (main): PDUMP implies no RUN_TIME_REMAP. + * dumper.c (pdump_file_get): Define MAP_FAILED if not already defined. + +2001-01-22 Martin Buchholz + + * lisp.h (ALIGNOF): A better definition for C++. + +2001-01-20 Martin Buchholz + + Macro hygiene. + Fix printf warnings: int format, long int arg. + * regex.c (DECLARE_DESTINATION): Use DECLARE_NOTHING. + (PUSH_FAILURE_POINT): Use correct printf formats. + (POP_FAILURE_POINT): Use correct printf formats. + Use do {...} while (0) + +2001-01-20 Martin Buchholz + + * XEmacs 21.2.42 "Poseidon" is released. + +2001-01-20 Martin Buchholz + + * console-x.h: typo fix du jour. Remove #if 0'ed code. + +2001-01-19 Martin Buchholz + + De-kludgify FIXED_TYPE free list frobbing. + Fix crashes on 64-bit platforms introduced by my patch of 2001-01-13. + * alloc.c (DECLARE_FIXED_TYPE_ALLOC): Use Lisp_Free. + * alloc.c (ALLOCATE_FIXED_TYPE_1): Use new definitions. + * alloc.c (Lisp_Free): New pseudo lisp object definition. + * alloc.c (LRECORD_FREE_P): New. + * alloc.c (MARK_LRECORD_AS_FREE): New. + * alloc.c (MARK_LRECORD_AS_NOT_FREE): New. + * alloc.c (STRUCT_FREE_P): Deleted. + * alloc.c (MARK_STRUCT_AS_FREE): Deleted. + * alloc.c (MARK_STRUCT_AS_NOT_FREE): Deleted. + * alloc.c (STRING_CHARS_FREE_P): New. + * alloc.c (MARK_STRING_CHARS_AS_FREE): New. + * alloc.c (PUT_FIXED_TYPE_ON_FREE_LIST): Use new definitions. + * alloc.c (FREE_FIXED_TYPE): Use new definitions. + * alloc.c (STRING_CHARS_FREE_P): Use new definitions. + * alloc.c (resize_string): Use new definitions. + * alloc.c (SWEEP_FIXED_TYPE_BLOCK): Use new definitions. + * alloc.c (verify_string_chars_integrity): Use new definitions. + * alloc.c (compact_string_chars): Use new definitions. + * alloc.c: Update monster comments. + * lrecord.h (lrecord_type): Add some new lrecord types for + alloc.c's use. + +2001-01-18 Martin Buchholz + + Improve alignment hackery. + * lisp.h (ALIGNOF): Better definition for the non-gcc case. + (max_align_t): Moved from opaque.h - general purpose. + (ALIGN_PTR): Use size_t, not long. + * opaque.h (max_align_t): Move to lisp.h. + +2001-01-18 Norbert Koch + + * gui.h: Fix and add prototypes to fix build problems. + +2001-01-18 Martin Buchholz + + temacs is going away, so `dump-temacs' is now a bad name. + * .dbxrc (dump-temacs): Rename to `dmp'. + * .gdbinit (dump-temacs): Rename to `dmp'. + +2001-01-17 Andy Piper + + * glyphs.c (print_image_instance): comment to make martin happy. + + * glyphs-x.c (x_redisplay_widget): update faces after a frame + change. + + * glyphs-msw.c (mswindows_redisplay_widget): add code to cope with + activation. + (mswindows_tab_control_redisplay): warning suppression. + + * glyphs-widget.c (widget_update): re-write to cope with updated + items. + (widget_instantiate): use new gui_item functions. + (tab_control_update): deleted. + (progress_gauge_update): deleted. + (image_instantiator_progress_guage): take out update reference. + (image_instantiator_tree_view): ditto. + (image_instantiator_tab_control): ditto. + + * gui.c (widget_gui_parse_item_keywords): new function. Do things + Right the new way. + (gui_item_add_keyval_pair): re-write to cope with descriptors and + return whether anything was changed. + (update_gui_item_keywords): as it sounds. + + * gui.h: declare widget_gui_parse_item_keywords. + + * fns.c (safe_copy_tree): new function taken from Fcopy_tree. + (Fcopy_tree): use it. Stops infloop death in bogus instantiators. + +2001-01-17 Martin Buchholz + + * XEmacs 21.2.41 "Polyhymnia" is released. + +2001-01-16 Didier Verna + + * glyphs.c (image_instantiate): don't use fallbacks when + instantiating a face's background pixmap by inheritance. + +2001-01-14 Mike Sperber + + * sysdep.c (start_of_data): PDUMP implies ORDINARY_LINK. + Conditionalize accordingly. + +2001-01-16 Martin Buchholz + + * dumper.c (pdump_file_get): Fix a compiler warning. + +2001-01-15 Martin Buchholz + + Make Purify happy when pdumping. + * symbols.c (Fmake_variable_buffer_local): Make Purify happy, by + iniitalizing all bits of new lisp object memory. + * symbols.c (Fmake_local_variable): Likewise. + * symbols.c (Fdontusethis_set_symbol_value_handler): Likewise. + * symbols.c (Fdefvaralias): Likewise. + * mule-charset.c (vars_of_mule_charset): Likewise. + +2001-01-15 Martin Buchholz + Add the `-nd' flag when running pre-dump operations under the debugger. + * .dbxrc (run-temacs): Add `-nd'. + * .dbxrc (update-elc): Likewise. + * .dbxrc (dump-temacs): Likewise. + * .gdbinit (run-temacs): Likewise. + * .gdbinit (check-temacs): Likewise. + * .gdbinit (update-elc): Likewise. + * .gdbinit (dump-temacs): Likewise. + +2001-01-14 Martin Buchholz + + Allow building 64-bit executables on AIX with GNU malloc, e.g. + export OBJECT_MODE=64 + configure --pdump --use-union-type=no + * m/ibmrs6000.h (DATA_START): Define for 64-bit world. + * gmalloc.c (__default_morecore): Remove pre-ANSI cruft. + + * miscplay.c (sndcnv8U_2mono): + Avoid two uses of `++' in the same expression. + Suppresses a GCC warning. + +2001-01-13 Martin Buchholz + + Make sure future compilers don't miscompile alloc.c. + * alloc.c: + (MARK_STRUCT_AS_FREE): Make aliasing-optimization-resistant. + (MARK_STRUCT_AS_NOT_FREE): Make aliasing-optimization-resistant. + +2001-01-12 Martin Buchholz + + * dumper.c: A little post-pdump-rename comment fixup. + +2001-01-09 Jerry James + + * lisp-disunion.h: Change LISP_TO_CVOID arg to match its use. + +2001-01-13 Martin Buchholz + + * *.[ch]: Globally rename symbols using the following `pdump-rename' + script: + #!/bin/sh + replace_symbol () { + (findn texi$; findn [ch]$) | xargs g -lw "$1" | xargs global-replace 's/(? + + * s/aix4.h: Keep the C for AIX compiler from overaggressively + optimizing bytecount_to_charcount(). + +2001-01-06 Golubev I. N. + + * config.h.in: + (HAVE_DLFCN_H): Removed. + * sysdll.c: Remove HAVE__DLOPEN, HAVE_DLFCN_H. + +2001-01-06 Martin Buchholz + + Portable dumper maintainability improvements. + * alloc.c (staticpro): + * alloc.c (staticpro_nodump): + * alloc.c (garbage_collect_1): + * alloc.c (reinit_alloc_once_early): + * alloc.c (init_alloc_once_early): + * alloc.c: Move dumper functions to alloc.c. + * dumper.c (pdump_backtrace): + * dumper.c (pdump_dump_structs): + * dumper.c (pdump_dump_opaques): + * dumper.c (pdump_dump_rtables): + * dumper.c (pdump_dump_wired): + * dumper.c (pdump): + * dumper.c (pdump_load_check): + * dumper.c (pdump_load_finish): + * dumper.c (pdump_file_unmap): + * dumper.c (pdump_file_get): + * dumper.c (pdump_resource_free): + * dumper.c (pdump_resource_get): + * dumper.c (pdump_file_free): + * dumper.c (pdump_file_try): + * dumper.c (pdump_load): + Remove fixed size limits on staticpro(), staticpro_nodump(), + dumpopaque(), dumpstruct() by using Dynarrs instead of static C arrays. + Remove custom code for dumping lrecord_implementations_table - use + dumpopaque instead. + Remove (most of the) custom code for dumping staticpros - dump it + like any other dynarr. + + * alloc.h: Removed. No longer useful, since dumper now more self-contained. + * dumper.c: Moved functions from alloc.c. + * alloc.c (dumpstruct): Moved to dumper.c. + * alloc.c (dumpopaque): Likewise. + * alloc.c (pdump_wire): Likewise. + * alloc.c (pdump_wire_list): Likewise. + + * lisp.h (Dynarr_sizeof): New. + * lisp.h (Dynarr_begin): New. Very slightly C++oid. + * lisp.h (Dynarr_end): New. Very slightly C++oid. + * lisp.h (Lisp_Object_ptr_dynarr): New. For staticpros. + + * lisp.h (dumpstruct): Define to nothing if not PDUMPing. + * lisp.h (dumpopaque): ditto. + * lisp.h (pdump_wire): ditto. + * lisp.h (pdump_wire_list): ditto. + +2001-01-09 Martin Buchholz + + * make-src-depend (PrintPatternDeps): + Use `sort' to make output independent of perl version. + +2001-01-08 Martin Buchholz + + Port to Netbsd 1.5. + * unexelf.c: Remove (never used) bogus Netbsd-specific cruft. + * s/netbsd.c: Use unexelf.o if __ELF__ is defined. + +2001-01-03 Didier Verna + + * event-stream.c (emacs_handle_focus_change_preliminary): ensure + that `focus_frame' is alive before thinking of calling + `redisplay_redraw_cursor' on it. + +2001-01-08 Martin Buchholz + + * XEmacs 21.2.40 is released. + +2001-01-06 Golubev I. N. + + * regex.c: Replace PREFETCH with REGEX_PREFETCH. + +2001-01-06 Martin Buchholz + + * alloc.c (dbg_valmask): Make const. + * alloc.c (dbg_typemask): Make const. + * alloc.c (dbg_USE_UNION_TYPE): Make const. + * alloc.c (dbg_valbits): Make const. + * alloc.c (dbg_gctypebits): Make const. + +2001-01-06 Stephen J. Turnbull + + * redisplay-x.c (x_bevel_area): + redisplay.h (struct rune): + Typo fixes in comments. + +2001-01-05 Andy Piper + + * glyphs-x.c (x_redisplay_widget): use size changed for offset + adjustment. + + * menubar.c (menubar_visible_p_changed): don't mark frame changed. + +2001-01-05 Martin Buchholz + + * alloc.c (pure-bytes-used): Remove unused mendacious variable. + + * mule-ccl.c (stack_idx_of_map_multiple): + Non const global data must not be initialized! + Found by MIYASHITA Hisashi. + +2001-01-02 Andy Piper + + * frame.c (change_frame_size): make sure frame size is always + marked as changed. + + * glyphs.c (image_instance_layout): minor code reuse. + + * window.c (Fcurrent_window_configuration): revert previous + change. + +2001-01-02 Martin Buchholz + + * glyphs.h: + * glyphs.c (make_image_instance_cache_hash_table): Use ANSI prototypes. + +2000-12-31 Andy Piper + + * glyphs-x.c (x_unmap_subwindow): return focus to enclosing frame + when widget gets unmapped. + + * event-Xt.c (emacs_Xt_handle_widget_losing_focus): new + function. Make sure widgets losing focus don't just drop it. + (handle_focus_event_1): record the widget with focus. + +2000-12-31 Andy Piper + + * window.c (allocate_window): use + make_image_instance_cache_hash_table. + (make_dummy_parent): ditto. + (Fset_window_configuration): ditto. + + * glyphs.h (INSTANTIATOR_TYPE): new macro. declare new functions. + + * glyphs.c (process_image_string_instantiator): use + INSTANTIATOR_TYPE. + (get_image_instantiator_governing_domain): ditto. + (normalize_image_instantiator): ditto. + (instantiate_image_instantiator): ditto. + (make_image_instance_1): ditto. + (image_instantiate): ditto. Key on glyph *and* instantiator type. + (instantiator_eq_equal): new function for use with instance hash + tables. + (instantiator_eq_hash): ditto. + (make_image_instance_cache_hash_table): create a suitable hash + table for storing image instances. + + * elhash.h (hash_table_weakness): new internal weakness type + HASH_TABLE_KEY_CAR_VALUE_WEAK. + declare new functions. + + * elhash.c (finish_marking_weak_hash_tables): introduce yet + another weakness type for glyphs. + (make_standard_lisp_hash_table): new function split out from + make_general_lisp_hash_table. + (make_lisp_hash_table): call make_standard_lisp_hash_table. + (hash_table_instantiate): ditto. + (Fmake_hash_table): ditto. + +2000-12-31 Martin Buchholz + + * XEmacs 21.2.39 is released. + +2000-12-29 Andy Piper + + * menubar.c (menubar_visible_p_changed): signal the frame changed. + + * glyphs-x.c (x_redisplay_widget): Re-calculate widget offsets if + the frame has changed so that we pick up geometry changes such as + menubar visibility. + +2000-12-28 Andy Piper + + * lastfile.c (my_ebss): make a char array so we can pad the + bss. Fixes cygwin unexec. + + * unexcw.c: invert BROKEN_GDB to NO_DEBUG. + +2000-12-26 Andy Piper + + * event-Xt.c (emacs_Xt_force_event_pending): add some verbose + comments and try and be more precise about a non-/SIGIO world. + (emacs_Xt_event_pending_p): use XtAppPending under cygwin and non + SIGIO. + + * redisplay-output.c (redisplay_normalize_glyph_area): make sure + we don't normalize to zero width or height. + +2000-12-24 Andy Piper + + * Makefile.in.in (ldflags): add -mwindows when appropriate. + +2000-08-18 Golubev I. N. + + * s/sco5.h: SCO 5 has pty support. + +2000-07-20 Kazuyuki IENAGA + + * input-method-xlib.c: supports both XIM_XLIB and USE_XFONTSET. + input-method-xlib.c contains whole contents of input-method-xfs.c, + so we can use input-method-xlib.c's code for USE_XFONTSET + using #ifdefs. + * input-method-xfs.c: removed. + +2000-12-20 Stephen Turnbull + + * file-coding.h (enum coding_category_type): reorder enumerators to + make autodetection safer. Make CODING_CATEGORY_LAST an enumerator + (now one greater than largest real coding_category_type enumerator). + * file-coding.c (coding_category_symbol, coding_category_by_priority, + coding_category_system, fcd_descriptihon_1, decode_coding_category, + Fcoding_category_list, Fset_coding_priority_list, + Fcoding_priority_list, coding_system_from_mask, Fdetect_coding_region, + vars_of_file_coding): adjust for change in CODING_CATEGORY_LAST. + +2000-12-18 Yoshiki Hayashi + + * redisplay-output.c (redisplay_clear_top_of_window): Remove static. + * redisplay-output.c (redisplay_output_window): Clear top of window + when face is changed. + * redisplay-x.c (x_redraw_exposed_window): Call + redisplay_clear_top_of_window. + * redisplay.h: Publish redisplay_clear_top_of_window. + +2000-12-18 Yoshiki Hayashi + + * buffer.c (Fkill_buffer): Map over all devices. + * window.c (window_loop): Remove UNSHOW_BUFFER code. + (list_windows): New function. + (list_all_windows): Ditto. + (Freplace_buffer_in_windows): Use them. + +2000-02-02 Daiki Ueno + + * database.c (berkdb_subtype): Recognize new subtype `queue'. + (Fopen_database): Use `db_create' instead of `db_open'. + (syms_of_database): Initialize Qqueue. + +2000-12-13 Yoshiki Hayashi + + * buffer.c (common_init_complex_vars_of_buffer): Initialize + buffer_local_face_property. + * buffer.h (struct buffer): New member buffer_local_face_property. + * window.c (Fset_window_buffer): Mark window's face as changed + when buffer has buffer local face. + * window.h (MARK_WINDOW_FACES_CHANGED): New macro. + * objects.c (color_after_change): Set buffer_local_face_property + when locale of face specifier is buffer. + * objects.c (font_after_change): Ditto. + * objects.c (face_boolean_after_change): Ditto. + * glyphs.c (image_after_change): Ditto. + +2000-12-09 Dan Holmsand + + * nt.c (mswindows_fstat): Report file permissions, volume serial + number, etc. Code adapted from FSF Emacs 20.7. + +2000-12-09 Dan Holmsand + + * sysfile.h (lstat): Make lstat an alias for xemacs_stat instead + of stat when we don't have symbolic links, to make sure + mswindows_stat is called on mswindows. + +2000-12-12 Yoshiki Hayashi + + * alloca.c: Define malloc to xmalloc only when built with XEmacs. + +2000-12-12 Martin Buchholz + + * doprnt.c (emacs_doprnt_1): More printing fixes. + Make printing of numbers compatible with libc and FSF Emacs. + BUG was: (format "%6.3f" 1.2) ==>"1.200000" + Use the system printf to do most of the hard work of formatting, + instead of doprnt_1(). + Calculate memory to allocate for format string. + Remove arbitrary limit on precision, e.g. (format "%.1000f" 3.14) + (doprnt_1): Cleaner code and documentation. + +2000-12-01 Jerry James + + * Makefile.in.in: Use the loop variable to install headers. + +2000-12-04 Yoshiki Hayashi + + * window.c (Fsplit_window): Don't invalidate face cache. + +2000-12-04 Yoshiki Hayashi + + * minibuf.c (Fall_completions): Undo the previous change + which removed checking elements start with space. + +2000-12-06 Stephen Turnbull + + * mule-canna.c: Didier suppression. + +2000-12-06 Stephen Turnbull + + * mule-canna.c: rename static unsigned char buf[] to key_buffer + (warning suppression). Add English comment translations. + +2000-12-05 Martin Buchholz + + * unexelfsgi.c (unexec): Better test for mmap failure. + +2000-12-05 Martin Buchholz + + * XEmacs 21.2.38 is released. + +2000-12-05 Martin Buchholz + + * redisplay.c (bar-cursor): Make a user variable. + + * symsinit.h: Add init_postgresql_from_environment. + +2000-12-04 Yoshiki Hayashi + + * regex.c: Convert to clean C. + +2000-12-05 Dan Holmsand + + * realpath.c: + Don't #include sysfile.h. Revert to duplicating PATH_MAX + initialization. + (sys_readlink): renamed to system_readlink to avoid conflict with + the other sys_readlink. + +2000-12-04 Hiroaki Abe + + * dumper.c (pdump_file_get): Correct uses of pdump_fd. + +2000-12-04 Stephen J. Turnbull + + * postgresql.c (init_postgresql_from_environment): new function. + (vars_of_postgresql): Move code initializing Lisp variables out and + into init_postgresql_from_environment. + emacs.c (main_1): Call init_postgresql_from_environment if and only + if running a dumped XEmacs. + +2000-08-31 Dan Holmsand + + * buffer.c: Make find-file-compare-truenames default to true on + windows. + + * realpath.c (win32_abs_start): + (cygwin_readlink): + (win32_readlink): New functions. + (xrealpath): Return really real filenames on windows. + + * fileio.c (Ffile_truename): Make file-truename work on windows. + +2000-11-29 Didier Verna + + * faces.c (MAYBE_UNFROB_BACKGROUND_PIXMAP): new macro. + * faces.c (update_face_cachel_data): use it. + * faces.c (add_face_cachel): use it. Complete background pixmap + frobbing in face cache if `update_face_cachel_data' has not done so. + +2000-11-29 Yoshiki Hayashi + + * search.c (string_match_1): Don't set last_thing_searched + when search failed. + +2000-11-27 Yoshiki Hayashi + + * buffer.c: Include casetab.h + (common_init_complex_vars_of_buffer): Use new case-table object. + * buffer.h: Include casetab.h + * buffer.h (MAKE_TRT_TABLE): Use generic char-table. + (DOWNCASE_TABLE_OF): Ditto. + * bufslots.h: Remove char-tables and add case-table. + * casetab.c: Include casetab.h + (CASE_TABLE_P): Removed. + (mark_case_table): New function. + (allocate_case_table): New function. + (Fcase_table_p): Use new case-table. + (case_table_char): New function. + (Fget_case_table): Ditto. + (Fput_case_table): Ditto. + (Fput_case_table_pair): Ditto. + (Fcopy_case_table): Ditto. + (Fcurrent_case_table): Return case-table. + (Fstandard_case_table): Return case-table. + (Fset_case_table): Fix doc-string. + (set_case_table): Use case-table + (syms_of_casetab): DEFSUBR new functions. + (complex_vars_of_casetab): Set up standard case-table. + * casetab.h: New file. + * editfns.c: Include casetab.h + (Fcompare_buffer_substrings): Use case-table. + * inline.c: Include casetab.h + * lisp.h: Remove bogus extern. + * lrecord.h (lrecord_type): Add lrecord_type_case_table. + * search.c: Include casetab.h + (TRANSLATE_ASCII): Removed. + (TRANSLATE): Unconditionally translate character. + (looking_at_1): Use case-table. + (string_match_1): Ditto. + (fast_string_match): Ditto. + (search_command): Ditto. + (search_buffer): Separate boyer_moore. Check whether + boyer_moore is possible. + (simple_search): New function. + (boyer_moore): Separated from search_buffer. Translate char. + +2000-11-24 Yoshiki Hayashi + + * regex.c (RE_TR_ASCII): Removed. + (RE_TRANSLATE): Unconditionally use TRT_TABLE. + (PATFETCH): Call PATFETCH_RAW. + (PATFETCH_RAW): Fetch Emchar. + (PATUNFETCH): Decrement charptr. + (GET_BUFFER_SPACE): Rename b to buf_end. + (BUF_PUSH): Ditto. + (BUF_PUSH_2): Ditto. + (BUF_PUSH_3): Ditto. + (EXTEND_BUFFER): Ditto. + (SET_LIST_BIT): Ditto. + (regex_compile): Ditto. Translate non ASCII char. + (compile_range): Ditto. + (re_search_2): Ditto. + (re_match_2_internal): Compare Emchar. + (bcmp_translate): Ditto. + +2000-11-29 Stephen J. Turnbull + + * lisp.h (basic char/int typedefs): comment improvement. + +2000-11-24 Stephen J. Turnbull + + * emacs.c (main_1): unconditional pdump unstomping; don't save and + unstomp inhibit_site_lisp. Improve comments. + +2000-11-22 Stephen J. Turnbull + + * mule-charset.c (Fcharset_property): improve type checking, comments. + +2000-11-28 Andy Piper + + * redisplay-output.c (redisplay_output_subwindow): make sure we do + clipped display for windows in the gutter also. + (redisplay_display_boxes_in_window_p): change semantics of return + codes to be more intuitive. + + * gutter.h: declare display_boxes_in_gutter_p. + + * gutter.c (display_boxes_in_gutter_p): new function for + redisplay. + +2000-11-22 Andy Piper + + * glyphs-x.c (image_instantiator_format_create_glyphs_x): change + autodetect domain. + +2000-11-21 Yoshiki Hayashi + + * callproc.c (Fold_call_process_internal): + * gpm.c (Freceive_gpm_event): + (tty_get_foreign_selection): Might be just warning supression. + * fileio.c (Fwrite_region_internal): + (Fset_visited_file_modtime): + * keymap.c (event_matches_key_specifier_p): + Initialize GCPROed variable. + + * menubar-x.c (command_builder_find_menu_accelerator): + Initialize before use. + +2000-11-23 Andy Piper + + * unexcw.c (unexec): make the resulting executable executable. + +2000-11-21 Martin Buchholz + + * doc.c (get_doc_string): + Use size_t, not int, for result of XSTRING_LENGTH. + + * cmds.c (Fdelete_char): + * cmds.c (Fpoint_at_eol): + * cmds.c (Fself_insert_command): + Use EMACS_INT, not int, for result of XINT. + Someday, someone will want to insert more than 2**31 identical characters. + + * cmds.c (Fdelete_char): + * cmds.c (Fdelete_backward_char): + * syntax.c (Fforward_word): + * syntax.c (Fforward_comment): + Make COUNT argument optional, for consistency with forward-char et al. + +2000-11-22 Martin Buchholz + + * lisp.h: + * print.c (long_to_string): + Return a useful value: the pointer at end of data written. + + * doprnt.c: + Use `static const char * const' for constant strings. + (union printf_arg): Delete `i', `ui' members. + (get_doprnt_args): + (emacs_doprnt_1): + Fix LP64 platform bug: (format "%d" most-positive-fixnum) ==> "-1" + Do all printf-ing via the `l' specifier. + Use EMACS_INT instead of int. + Optimize. + +2000-11-20 Didier Verna + + * faces.c (update_face_cachel_data): don't frob the background + pixmap when the window is being created. The face is needed but + does not exist yet. + +2000-11-20 Andy Piper + + * unexcw.c (copy_executable_and_dump_data_section): Only do bss + messing with a debug environment. + +2000-11-20 Martin Buchholz + + * emacs.c (__sti__iflPNGFile_c___): Pedantically correct prototype. + +2000-11-20 Martin Buchholz + + * casetab.c (Fcase_table_p): Fix compile error and crash. + +2000-11-18 Philip Aston + + * s/cygwin32.h: Cygwin has SVR4-like pty support. + +2000-11-18 Martin Buchholz + + * fileio.c (Fexpand_file_name): GCPRO bug! Protect `handler'. + * filelock.c (lock_file): GCPRO bug! Initialize all GCPROed vars! + +2000-11-17 Martin Buchholz + + * config.h.in: Define HAVE_ELF_H if elf.h exists. + * unexelf.c: Use HAVE_ELF_H. + * unexelfsgi.c: Fix bug with dumped xemacs stdout/stderr not working. + I copied FSF Emacs 20.7 unexelf.c to unexelfsgi.c and ANSIfied it. + Max Matveev removed non-SGI-relevant parts and tested. + Greg Harrington provided a machine + for testing. + So this is an unexelfsgi.c from a different line of development. + +2000-11-16 Yoshiki Hayashi + + * regex.c (RE_TR_ASCII): New function. + (RE_TRANSLATE): Call it. + +2000-11-16 Yoshiki Hayashi + + * buffer.h (TRT_TABLE_OF): Remove assert. + (IN_TRT_TABLE_DOMAIN): Removed. + +2000-11-16 Gunnar Evermann + + * free-hook.c (log_gcpro): + (show_gcprohist): Add support for GCPRO5. + +2000-11-08 Stephen J. Turnbull + + * emacs.c (main_1): Improve -sd error message when --pdump=no. + +2000-11-16 Olivier Galibert + + * symeval.h: Declare flush_all_buffer_local_cache. + + * symbols.c: Change XD_LO_RESET_NIL into XD_LISP_OBJECTs. + (flush_buffer_local_cache): Added. + (flush_all_buffer_local_cache): Added. + + * lrecord.h: Remove unused XD_LO_RESET_NIL. + + * dumper.c (pdump_register_sub): Remove unused XD_LO_RESET_NIL. + (pdump_dump_data): Ditto. + (pdump_reloc_one): Ditto. + (pdump): Remove unused pdump_qnil. Flush buffer local caches + before dumping. + + +2000-11-14 Yoshiki Hayashi + + * buffer.c: Remove if 0'ed entry. + * buffer.h: Rewrite TRT to use char-table. + * bufslots.h: Remove mirror tables. + * casetab.c: Remove mirror tables. + (CASE_TABLE_P): New macro. + (Fcase_table_p): Element of a case table is string or char-table. + (make_mirror_trt_table): Removed. + (set_case_table): Setup char-table from strings for backward + compatibility. + * dired.c (Fdirectory_files): + * dired-msw.c: (mswindows_get_files): + * lisp.h: Change prototype of re_pattern_buffer. + * regex.c: (RE_TRANSLATE): New macro. + (TRANSLATE_P): Ditto. + Change translate to type RE_TRANSLATE_TYPE. + * regex.h: Define RE_TRANSLATE_TYPE + * search.c (TRANSLATE): New macro. + (TRANSLATE_ASCII): New macro. + Translate table is changed to Lisp_Object. + (signal_failure): Inhibit return. + +2000-11-14 Yoshiki Hayashi + + * device-msw.c: + * eldap.c: + * event-Xt.c: + * event-stream.c: + * print.c: + Do UNGCPRO before return. + +2000-11-14 Martin Buchholz + + * XEmacs 21.2.37 is released. + +2000-11-13 Yoshiki Hayashi + + * fileio.c (Finsert_file_contents_internal): UNGCPRO before return. + Add comments about discarded return value. + +2000-11-09 Yoshiki Hayashi + + * callint.c: + * event-stream.c: Fix comments. Remove some #if 0'ed part. + +2000-10-27 Andy Piper + + * gutter.c (Fset_default_gutter_position): default left and right + gutters to visible. + (calculate_gutter_size): calculate resonable heuristic for left + and right gutter sizes. + (specifier_vars_of_gutter): change left and right gutter sizes to + autodetect. + (calculate_gutter_size_from_display_lines): new function. + (output_gutter): check for resizing on left and right gutters. + (clear_gutter): don't special case top and left gutters. + (specifier_vars_of_gutter): use new signature for + set_specifier_caching. + + * glyphs-x.c (x_redisplay_widget): spelling fix. + * glyphs.c (specifier_vars_of_glyphs): + * menubar.c (specifier_vars_of_menubar): + * redisplay.c (specifier_vars_of_redisplay): + * toolbar.c (specifier_vars_of_toolbar): + * window.c (specifier_vars_of_window): + * scrollbar.c (specifier_vars_of_scrollbar): + (complex_vars_of_scrollbar): use new signature for + set_specifier_caching. + + * specifier.c (set_specifier_caching): include recompute flag. + (recompute_one_cached_specifier_in_window): always recompute if + flag set. + (recompute_one_cached_specifier_in_frame): ditto. + + * specifier.h (struct specifier_caching): add recompute flag. + +2000-10-24 Andy Piper + + * unexcw.c (copy_executable_and_dump_data_section): add new + BSS_PAD_SIZE so that we can re-instate a mini-bss. This keeps gdb + 5.0 happy. + +2000-11-06 Yoshiki Hayashi + + * console-x.h (x_device): New member modifier_release_time. + * event-Xt.c (x_handle_sticky_modifiers): + Bound interval modifier keys are sticky. + * event-stream.c (Vmodifier_keys_sticky_time): New variable. + * events.h: extern it. + +2000-11-06 Yoshiki Hayashi + + * cmdloop.c (Fcommand_loop_1): Just add C-g to event queue. + +2000-11-06 Yoshiki Hayashi + + * event-stream.c (execute_command_event): Preserve current_events + and the like when event is misc-user-event. + Inhibit quit during the call to maybe_echo_keys. + +2000-10-31 Yoshiki Hayashi + + * filelock.c (lock_buffer): Cope with kill-buffer. Don't create a + symlink when buffer is killed. + (inhibit_clash_detection): New variable. + +2000-10-30 Yoshiki Hayashi + + * console.c (Fset_input_method): Trigger redisplay on tty. + +2000-11-07 Martin Buchholz + + * process.c (Fprocess_status): Revert to previous behavior: + (process-status "nosuchprocess") ==> nil + +2000-11-06 Martin Buchholz + + * mule-charset.h (CHARSET_BY_LEADING_BYTE): + Work around another GCC 2.95.2 optimizer bug. + +2000-11-02 Martin Buchholz + + * process.c (Fget_process): Use LIST_LOOP_2. + (kill_buffer_processes): Use LIST_LOOP_2. + + * minibuf.c (Fall_completions): + Delete old non-functional code for FSF fourth argument. + + * frame.c (frame_matches_frame_spec): + Renamed from `frame_matches_frametype'. Update all callers. + (device_matches_device_spec): + Renamed from 'device_matches_console_spec'. Update all callers. + + * doc.c (Fsubstitute_command_keys): + Remove buffer overflow crash. Small code cleanups. + + * casetab.c (check_case_table): Simpler code. + + * window.c (Freplace_buffer_in_windows): + Give this the same WHICH-FRAMES and WHICH-DEVICES parameters + (and similar implementation) as Fdelete_windows_on. + Update all callers. + + * alloc.c (Fmake_list): + * alloc.c (make_vector): + * alloc.c (Fmake_vector): + * alloc.c (make_bit_vector): + * alloc.c (Fmake_bit_vector): + * alloc.c (Fbit_vector): + * alloc.c (Fmake_string): + * alloc.c (Fpurecopy): + * alloc.c (Fmemory_limit): + * buffer.c: + * buffer.c (Fget_buffer): + * buffer.c (Fkill_buffer): + * buffer.c (complex_vars_of_buffer): + * bytecode.c (Fcompiled_function_stack_depth): + * callint.c (Fprefix_numeric_value): + * event-stream.c: + * event-stream.c (Fread_key_sequence): + * casetab.c: + * casetab.c (Fcase_table_p): + * casetab.c (check_case_table): + * casetab.c (Fset_case_table): + * casetab.c (Fset_standard_case_table): + * chartab.c: + * chartab.c (Fchar_table_type): + * chartab.c (Freset_char_table): + * chartab.c (Fget_char_table): + * chartab.c (Fget_range_char_table): + * chartab.c (Fput_char_table): + * chartab.c (Fmap_char_table): + * chartab.c (Fcategory_table_p): + * chartab.c (Fcheck_category_at): + * chartab.c (Fchar_in_category_p): + * chartab.c (Fcategory_table): + * chartab.c (Fcopy_category_table): + * chartab.c (Fset_category_table): + * chartab.c (Fcategory_designator_p): + * chartab.c (Fcategory_table_value_p): + * cmds.c (Fdelete_char): + * cmds.c (Fdelete_backward_char): + * cmds.c (Fself_insert_command): + * cmds.c (Fself_insert_internal): + * console.c (Fvalid_console_type_p): + * console.c (Fcdfw_console): + * console.c (Fconsole_type): + * console.c (Fconsole_name): + * console.c (Fconsole_device_list): + * console.c (Fconsole_on_window_system_p): + * data.c: + * data.c (Feq): + * data.c (Fold_eq): + * data.c (Fsubr_interactive): + * data.c (Fchar_to_int): + * data.c (Fint_to_char): + * data.c (Fsetcar): + * data.c (Fsetcdr): + * data.c (Fnumber_to_string): + * data.c (Fstring_to_number): + * data.c (Frem): + * database.c (mark_database): + * database.c (finalize_database): + * database.c (Fdatabase_live_p): + * database.c (Fdatabasep): + * device-x.c (Fx_get_resource): + * device.c (Fdfw_device): + * dired.c: + * dired.c (Ffile_name_completion): + * dired.c (Ffile_name_all_completions): + * dired.c (Fuser_name_completion): + * dired.c (Fuser_name_completion_1): + * dired.c (Fuser_name_all_completions): + * doc.c (Fdocumentation): + * doc.c (Fdocumentation_property): + * doc.c (Fsubstitute_command_keys): + * editfns.c: + * editfns.c (Fchar_to_string): + * editfns.c (Fstring_to_char): + * editfns.c (Ftemp_directory): + * editfns.c (Finsert_char): + * editfns.c (Fbuffer_substring_no_properties): + * editfns.c (Fnarrow_to_region): + * editfns.c (Fchar_equal): + * editfns.c (Fchar_Equal): + * editfns.c (Ftranspose_regions): + * emacs.c (Fdump_emacs): + * eval.c (Fthrow): + * eval.c (Fcommand_execute): + * eval.c (Fautoload): + * eval.c (Fbacktrace): + * eval.c (Fbacktrace_frame): + * events.c: + * events.c (Fcopy_event): + * events.c (Fcharacter_to_event): + * events.c (Fevent_button): + * events.c (Fevent_process): + * extents.c: + * extents.c (Fnext_extent_change): + * extents.c (Fextent_property): + * faces.c (Ffacep): + * faces.c (Fmake_face): + * file-coding.c: + * file-coding.c (Fencode_shift_jis_char): + * file-coding.c (Fencode_big5_char): + * fileio.c (Ffile_name_directory): + * fileio.c (Ffile_name_nondirectory): + * fileio.c (Ffile_name_as_directory): + * fileio.c (Fdirectory_file_name): + * fileio.c (Ffile_truename): + * fileio.c (Fsubstitute_in_file_name): + * fileio.c (Ffile_modes): + * fileio.c (Fset_file_modes): + * fileio.c (Fset_default_file_modes): + * fileio.c (Fverify_visited_file_modtime): + * floatfns.c (Facos): + * floatfns.c (Fasin): + * floatfns.c (Fatan): + * floatfns.c (Fcos): + * floatfns.c (Fsin): + * floatfns.c (Ftan): + * floatfns.c (Fbessel_j0): + * floatfns.c (Fbessel_j1): + * floatfns.c (Fbessel_jn): + * floatfns.c (Fbessel_y0): + * floatfns.c (Fbessel_y1): + * floatfns.c (Fbessel_yn): + * floatfns.c (Ferf): + * floatfns.c (Ferfc): + * floatfns.c (Flog_gamma): + * floatfns.c (Fexp): + * floatfns.c (Fexpt): + * floatfns.c (Flog): + * floatfns.c (Flog10): + * floatfns.c (Fsqrt): + * floatfns.c (Fcube_root): + * floatfns.c (Facosh): + * floatfns.c (Fasinh): + * floatfns.c (Fatanh): + * floatfns.c (Fcosh): + * floatfns.c (Fsinh): + * floatfns.c (Ftanh): + * floatfns.c (Fabs): + * floatfns.c (Ffloat): + * floatfns.c (Flogb): + * floatfns.c (Fceiling): + * floatfns.c (Ffloor): + * floatfns.c (Fround): + * floatfns.c (Ftruncate): + * floatfns.c (Ffceiling): + * floatfns.c (Fffloor): + * floatfns.c (Ffround): + * floatfns.c (Fftruncate): + * fns.c (Fstring_equal): + * fns.c (Fstring_lessp): + * fns.c (concat2): + * fns.c (concat3): + * fns.c (vconcat2): + * fns.c (vconcat3): + * fns.c (Fsubstring): + * fns.c (Fassoc): + * fns.c (Fold_assoc): + * fns.c (assoc_no_quit): + * fns.c (Fassq): + * fns.c (Fold_assq): + * fns.c (assq_no_quit): + * fns.c (Frassoc): + * fns.c (Fold_rassoc): + * fns.c (Frassq): + * fns.c (Fold_rassq): + * fns.c (rassq_no_quit): + * fns.c (Fremassoc): + * fns.c (remassoc_no_quit): + * fns.c (Fremassq): + * fns.c (remassq_no_quit): + * fns.c (Fremrassoc): + * fns.c (Fremrassq): + * fns.c (remrassq_no_quit): + * fns.c (Fsort): + * fns.c (Fplist_get): + * fns.c (Fplist_put): + * fns.c (Fplist_remprop): + * fns.c (Fplist_member): + * fns.c (Flax_plist_get): + * fns.c (Flax_plist_put): + * fns.c (Flax_plist_remprop): + * fns.c (Flax_plist_member): + * fns.c (Fequal): + * fns.c (Fold_equal): + * fns.c (Frequire): + * fns.c (Fbase64_encode_region): + * fns.c (Fbase64_encode_string): + * fns.c (Fbase64_decode_region): + * frame.c: + * frame.c (frame_matches_frame_spec): + * frame.c (device_matches_device_spec): + * frame.c (next_frame): + * frame.c (previous_frame): + * frame.c (Fnext_frame): + * frame.c (Fprevious_frame): + * frame.c (Fframe_property): + * frame.c (Fset_frame_height): + * frame.c (Fset_frame_size): + * frame.h: + * glyphs.c: + * glyphs.c (if): + * glyphs.c (decode_error_behavior_flag): + * glyphs.c (Fmake_image_instance): + * indent.c (Findent_to): + * intl.c (Fignore_defer_gettext): + * keymap.c (Fkeymapp): + * keymap.c (Flookup_key): + * lread.c: + * lread.c (Fload_internal): + * lread.c (Feval_buffer): + * lread.c (Feval_region): + * macros.c (Fexecute_kbd_macro): + * marker.c (set_marker_internal): + * marker.c (Fset_marker): + * marker.c (set_marker_restricted): + * marker.c (Fcopy_marker): + * marker.c (noseeum_copy_marker): + * menubar.c: + * menubar.c (Fpopup_menu): + * minibuf.c: + * mule-charset.c (Fcharset_name): + * mule-charset.c (Fchar_charset): + * mule-charset.c (Fchar_octet): + * mule-charset.c (Fsplit_char): + * mule-wnnfns.c (Fwnn_open): + * mule-wnnfns.c (Fwnn_dict_comment): + * mule-wnnfns.c (Fwnn_quit_henkan): + * mule-wnnfns.c (Fwnn_word_toroku): + * mule-wnnfns.c (Fwnn_word_sakujo): + * mule-wnnfns.c (Fwnn_word_use): + * mule-wnnfns.c (Fwnn_hindo_set): + * objects.c: + * objects.c (Fmake_color_instance): + * objects.c (Fmake_font_instance): + * print.c (Fwrite_char): + * process.c: + * process.c (mark_process): + * process.c (print_process): + * process.c (get_process_from_usid): + * process.c (Fprocessp): + * process.c (Fprocess_live_p): + * process.c (Fget_process): + * process.c (Fget_buffer_process): + * process.c (get_process): + * process.c (Fprocess_id): + * process.c (Fprocess_name): + * process.c (Fprocess_command): + * process.c (init_process_io_handles): + * process.c (start_process_unwind): + * process.c (Fstart_process_internal): + * process.c (Fopen_multicast_group_internal): + * process.c (Fset_process_window_size): + * process.c (read_process_output): + * process.c (send_process): + * process.c (Fprocess_tty_name): + * process.c (Fset_process_buffer): + * process.c (Fprocess_buffer): + * process.c (Fprocess_mark): + * process.c (set_process_filter): + * process.c (Fset_process_filter): + * process.c (Fprocess_filter): + * process.c (Fprocess_send_region): + * process.c (Fprocess_send_string): + * process.c (exec_sentinel): + * process.c (Fset_process_sentinel): + * process.c (Fprocess_sentinel): + * process.c (status_notify): + * process.c (Fprocess_status): + * process.c (Fprocess_exit_status): + * process.c (process_send_signal): + * process.c (Fprocess_send_eof): + * process.c (deactivate_process): + * process.c (remove_process): + * process.c (Fdelete_process): + * process.c (kill_buffer_processes): + * process.c (Fprocess_kill_without_query): + * process.c (Fprocess_kill_without_query_p): + * rangetab.c: + * rangetab.c (Fget_range_table): + * rangetab.c (Fput_range_table): + * rangetab.c (Fremove_range_table): + * rangetab.c (Fclear_range_table): + * search.c: + * search.c (Fskip_chars_forward): + * search.c (Fskip_chars_backward): + * search.c (Fskip_syntax_forward): + * search.c (Fskip_syntax_backward): + * search.c (search_command): + * search.c (Freplace_match): + * search.c (Fregexp_quote): + * select.c (Fown_selection_internal): + * select.c (Fselection_owner_p): + * select.c (Fselection_exists_p): + * select.c (Fget_selection_internal): + * specifier.c: + * symbols.c: + * symbols.c (Fintern): + * symbols.c (Fintern_soft): + * symbols.c (Funintern): + * symbols.c (Fapropos_internal): + * symbols.c (Fset_default): + * syntax.c: + * syntax.c (Fsyntax_table_p): + * syntax.c (Fcopy_syntax_table): + * syntax.c (Fset_syntax_table): + * syntax.c (Fchar_syntax): + * syntax.c (syntax_match): + * syntax.c (Fmatching_paren): + * syntax.c (Fforward_word): + * syntax.c (scan_lists): + * syntax.c (Fscan_lists): + * syntax.c (Fscan_sexps): + * syntax.c (Fparse_partial_sexp): + * toolbar.c (Fcheck_toolbar_button_syntax): + * tooltalk.doc: + * window.c: + * window.c (Fwindowp): + * window.c (Fwindow_live_p): + * window.c (Fwindow_point): + * window.c (Fdelete_window): + * window.c (Fnext_window): + * window.c (Fprevious_window): + * window.c (Fother_window): + * window.c (window_loop): + * window.c (Fget_lru_window): + * window.c (Fsplit_window): + * window.c (Fenlarge_window): + * window.c (Fenlarge_window_pixels): + * window.c (Fshrink_window): + * window.c (Fshrink_window_pixels): + * window.c (change_window_height): + * window.c (Fwindow_configuration_p): + * window.c (Fcurrent_window_configuration): + * window.h: + * casefiddle.c (casify_object): + * casefiddle.c (Fupcase): + * casefiddle.c (Fdowncase): + * casefiddle.c (Fcapitalize): + * casefiddle.c (Fupcase_initials): + * casefiddle.c (casify_region_internal): + * casefiddle.c (casify_region): + * casefiddle.c (Fupcase_region): + * casefiddle.c (Fdowncase_region): + * casefiddle.c (Fcapitalize_region): + * casefiddle.c (Fupcase_initials_region): + * casefiddle.c (Fupcase_word): + * casefiddle.c (Fdowncase_word): + * casefiddle.c (Fcapitalize_word): + Docstring arglist/Texinfo fixes. See man/ChangeLog for details. + Replace 0 with '\0' when working with bytes. + Replace initial "(" with "\(" in docstrings. + +2000-11-01 Martin Buchholz + + * config.h.in: Handle alloca with Compaq C on Alpha Linux. + + * m/alpha.h: Let configure handle SYSTEM_MALLOC on Linux. + +2000-10-31 Martin Buchholz + + * eldap.c (print_ldap): 64-bit cleaner. Fixes warning. + +2000-10-30 Yoshiki Hayashi + + * doprnt.c (emacs_do_prnt_1): Format (format "%01.2d" 10) + correctly. + +2000-10-30 Yoshiki Hayashi + + * fileio.c (Vauto_save_list_file_prefix): Moved from startup.el. + (inhibit_auto_save_session): New variable. + (vars_of_fileio): Declare and initialize them. + * fileio.c (Fdo_auto_save): Don't create session file if + Vinhibit_auto_save_session or Vauto_save_list_file_prefix is non-nil. + +2000-10-31 Martin Buchholz + + * sgiplay.c (play_internal): C++ compilability. + * alloc.c (SWEEP_FIXED_TYPE_BLOCK): Remove unused var `SFTB_prev'. + * callproc.c (Fold_call_process_internal): + Remove unused vars `env', `first'. + * scrollbar.c (update_scrollbar_instance): + #### unused var `current_window'. + * redisplay-tty.c: Put currently unused vars insert_mode_on, + etc. within #ifdef NOT_YET. + * emacs.c: #### unused vars `initial_argc', `initial_argv'. + * dialog-x.c (dbox_descriptor_to_widget_value): ### unused var `title'. + * specifier.c (specifier_instance): + #### unused var `tag'. + Use WINDOW_BUFFER, FRAME_DEVICE instead of their expansion. + +2000-10-27 Martin Buchholz + + * fns.c (Fbutlast): + * fns.c (list_sort): + * fns.c (Ffillarray): + * fns.c (bytecode_nconc2): + * fns.c (Fnconc): + * fns.c (mapcar1): + * fns.c (Fmapconcat): + Be pedantically 64-bit correct. For the time when someone will + want to have a list with length > 2**32. + + * lisp.h (PRIVATE_EXTERNAL_LIST_LOOP_6): + Work around MIPSpro compiler bug. + + * process-unix.c (unix_kill_child_process): Add snarky comment. + * process-unix.c (try_to_initialize_subtty): Oops, `=' ==> `==' + + * config.h.in: Oops, _getpt ==> _getpty + +2000-10-26 Martin Buchholz + + * config.h.in: + * regex.c: + Use void*, not char*, as return type of alloca(). + + * alloc.c (free_marker): Side effect inside assert expression! + +2000-10-16 MIYASHITA Hisashi + + * mule-charset.c (Fset_charset_ccl_program): To check + if the given ccl program is valid, use setup_ccl_program() + instead of CHECK_VECTOR(). + (Fmake_charset): Likewise. + +2000-10-20 Golubev I. N. + + * faces.c (get_extent_fragment_face_cache_index): + Fix cachel.merged_faces memory leak. + +2000-10-14 MIYASHITA Hisashi + + * mule-ccl.c (ccl_driver): + Reset MSB of octets obtained by DECODE_SJIS + because of the incompatibility with Emacs. + (ccl_driver): + Set MSB of octets before passing them to + ENCODE_SJIS because of the incompatibility + with Emacs. + +2000-10-18 Daiki Ueno + + * lrecord.h (DECLARE_TYPECHECK_LRECORD): Abolish. + (DECLARE_LRECORD): Undo the last change. + (DECLARE_EXTERNAL_LRECORD): Expand typechecking stuff. + +2000-10-17 Daiki Ueno + + * lrecord.h (INIT_EXTERNAL_LRECORD_IMPLEMENTATION): Connect + the implementation to lrecord_implementations_table. + +2000-10-14 Daiki Ueno + + * lrecord.h (MAKE_EXTERNAL_LRECORD_IMPLEMENTATION): Don't set the + initial value of `lrecord_type_##c_name' and + `lrecord_##c_name.lrecord_type_index'; discard "const" qualifier. + (INIT_EXTERNAL_LRECORD_IMPLEMENTATION): New macro. + [ERROR_CHECK_TYPECHECK] (DECLARE_TYPECHECK_LRECORD): New macro. + [ERROR_CHECK_TYPECHECK] (DECLARE_LRECORD): Use it. + [ERROR_CHECK_TYPECHECK] (DECLARE_EXTERNAL_LRECORD): Use it. + +2000-10-17 Martin Buchholz + + * miscplay.c (sndcnv8S_2mono): + (sndcnv2monounsigned): + (sndcnvULaw_2linear): + (sndcnv16swap): + Remove implementation-defined behavior. + +2000-10-12 Martin Buchholz + + * input-method-xlib.c: Warning suppression. + +2000-10-05 MIYASHITA Hisashi + + * mule-ccl.c: Sync up with Emacs 21.0.90. + (ccl_driver): Disabled. + Do nothing. + (ccl_driver): + Likewise. + (ccl_driver[WriteMultibyteChar2]): Bug fix. + Use MAX_LEADING_BYTE_OFFICIAL_2 instead of + MIN_LEADING_BYTE_OFFICIAL_2 to check whether the + leading char belongs to official 2-dimensional charset. + (CCL_WRITE_CHAR): When CCL_MODE_ENCODING, + write the given character as is. Otherwise, + if it is a multibyte char, convert it by + non_ascii_set_charptr_emchar, then write it. + (CCL_WRITE_STRING): Likewise. + (ccl_get_compiled_code): New function. + (setup_ccl_program): When ccl_prog is invalid, + return -1. + (Fregister_code_conversion_map): New function. + (syms_of_mule_ccl): defsubr Fregister_code_conversion_map. + + * mule-ccl.h: Sync up with Emacs 21.0.90. + (Fregister_ccl_program): export it. + + * redisplay-msw.c (separate_textual_runs): + If ccl program is not valid, don't do ccl conversion. + + * redisplay-x.c (separate_textual_runs): Ditto. + + * file-coding.c (Fmake_coding_system): + When type is ccl and value is vector, register it + with a proper symbol. And checks whether the + given ccl program is valid. + (mule_decode): When calling ccl_driver, if src indicates + NULL pointer, set an empty string instead. + (mule_encode): Likewise. + +2000-10-11 Martin Buchholz + + The following large batch of changes gets us back to a state of + C++ compilability. Extbyte is now a char, which means that + Extbyte * and Bufbyte * cannot be freely interchanged - a win! + + * tooltalk.c (Fset_tooltalk_message_attribute): Type correctness. + + * sound.c (Fplay_sound): Type correctness. + + * select-x.c (hack_motif_clipboard_selection): Type correctness. + (x_get_window_property): Type correctness. + (receive_incremental_selection): unsigned char ==> Extbyte + (selection_data_to_lisp_data): unsigned char ==> Extbyte + (Fx_get_cutbuffer_internal): unsigned char ==> Extbyte + (Fx_store_cutbuffer_internal): Type correctness. + + * process-unix.c (try_to_initialize_subtty): Type correctness. + + * objects-x.c (x_print_color_instance): Type correctness. + (x_print_font_instance): Type correctness. + (x_list_fonts): SExtbyte ==> Extbyte. + (valid_x_font_name_p): SExtbyte ==> Extbyte. + (x_find_charset_font): SExtbyte ==> Extbyte. + Use TO_INTERNAL_FORMAT. build_string ==> make_string. + (truename_via_XListFonts): SExtbyte ==> Extbyte. + (x_font_instance_properties): Use TO_INTERNAL_FORMAT. + Use bufbyte_strcmp. + + * mule-charset.h (LEADING_BYTE_PREFIX_P): unsigned char ==> Bufbyte + (PRIVATE_LEADING_BYTE_PREFIX): Add paranoia cast. + (BYTE_ASCII_P): Use bit ops for char-signedness safety. + (BYTE_C0_P): Use bit ops for char-signedness safety. + (BYTE_C1_P): Use bit ops for char-signedness safety. + (CHARSET_BY_LEADING_BYTE): + (CHARSET_BY_ATTRIBUTES): + Always use inline function. + Use type_checking_assert. + Hide chlook. + + * mule-charset.c (non_ascii_charptr_copy_char): + Modify to work with both ASCII and non-ASCII characters. + Improve docs and variable names. + Replace over-clever fall-through switch with a simple loop. + (Lstream_get_emchar_1): + Replace over-clever fall-through switch with a simple loop. + + * menubar-x.c (menu_item_descriptor_to_widget_value_1): + Warning suppression. + + * lstream.h (Lstream_get_emchar): BYTE_ASCII_P cannot be used on + the return value of Lstream_getc, which could be EOF as well. + + * lstream.c (Lstream_raw_read): Now returns ssize_t, not int. + + * lisp.h: Make Extbyte a char, not unsigned char, so that external + APIs can be used on Extbytes without casts. Risky! + (SExtbyte): Remove. + (UExtbyte): Remove. + + * input-method-xlib.c (XIM_init_device): + Use Xlib.h instead of IntrinsicP.h. + Use HAVE_XREGISTERIMINSTANTIATECALLBACK instead of THIS_IS_X11R6, + which will break in X11R7. + Use XREGISTERIMINSTANTIATECALLBACK_NONSTANDARD_PROTOTYPE, + to call XRegisterIMInstantiateCallback with correct types. + + * gui-x.c (button_item_to_widget_value): Type correctness. + + * glyphs.c (bitmap_to_lisp_data): Type correctness. + + * glyphs-x.c (pixmap_from_xbm_inline): Type correctness. + (xbm_instantiate_1): Type correctness. + (BUILD_GLYPH_INST): Type correctness. + + * fileio.c (Fsubstitute_in_file_name): Type correctness. + + * file-coding.c: + (decode_coding_sjis): + (decode_coding_big5): + (decode_coding_ucs4): + (decode_coding_utf8): + (decode_coding_iso2022): + (decode_coding_no_conversion): + Make all decoding functions take an Extbyte * arg. + (encode_coding_sjis): + (encode_coding_big5): + (encode_coding_ucs4): + (encode_coding_utf8): + (encode_coding_iso2022): + (encode_coding_no_conversion): + Make all encoding functions take a Bufbyte * arg. + Use size_t instead of unsigned int for memory sizes. + Only cast to unsigned char whenever dereferencing Extbyte *. + + * doc.c (unparesseuxify_doc_string): Type correctness. + + * console-x.c (split_up_display_spec): + Rewrite without using details of internal string representation. + (x_semi_canonicalize_device_connection): Type correctness. + + * config.h.in: + (HAVE_XREGISTERIMINSTANTIATECALLBACK): New. + (XREGISTERIMINSTANTIATECALLBACK_NONSTANDARD_PROTOTYPE): New. + (HAVE_XFREE386): Removed. + + * buffer.h (DEC_CHARPTR): `const' correctness. + (bufbyte_strcmp): New. + (bufbyte_memcmp): New. + + * buffer.c (dfc_convert_to_internal_format): Extbyte ==> Bufbyte + + * buffer.h (XCHAR_OR_CHAR_INT): + Always use inline function. + Remove redundant type checking assert() - XINT will abort quite nicely. + +2000-10-03 Yoshiki Hayashi + + * search.c (Freplace_match): Set newtext to an empty string. + +2000-10-10 Martin Buchholz + + * s/decosf1-3.h: Remove #include of stropts.h + * s/ptx.h: Remove #include of stropts.h + * s/usg5-4.h: Remove #include of stropts.h + * sysproc.h: + * config.h.in: + Use stropts.h, not sys/stropts.h. + Use strtio.h, not sys/strtio.h. + +2000-10-04 Martin Buchholz + + * XEmacs 21.2.36 is released. + +2000-09-21 Andy Piper + + * glyphs-x.c (x_redisplay_widget): make sure non-structural + changes still involve copying the widget tree. + (update_widget_face): make sure a change is register in the widget + tree. Call update_tab_widget_face appropriately. + (update_tab_widget_face): ditto. + (x_tab_control_redisplay): make sure non-structural changes still + involve copying the widget tree. + +2000-08-31 Daiki Ueno + + * lread.c (locate_file): Check the path element is non-nil. + +2000-10-02 Martin Buchholz + + * lisp.h: Warning suppression for SCO compilers. + + * redisplay-tty.c (reset_tty_modes): Fix crash. + E.g. from xemacs running on X: (delete-device (make-device 'tty nil)) + +2000-09-27 Martin Buchholz + + Big signal/process handling overhaul. Bugs fixed: + M-x shell, type `sleep 10000', M-x comint-interrupt-subjob and + M-x comint-kill-subjob should work for both values nil and t of + process-connection-type. It was broken on most platforms. + Testing on Irix and Cygwin still needed. Other plaforms tested. + * sysdep.c: Move #include of stropts.h into sysproc.h. Use pid_t. + * process-unix.c: Signal/Process handling overhaul. + (pty_name): make 64 bytes, as `expect' does, for paranoia. + (allocate_pty): Use all available modern methods of allocating + ptys, falling back to old style BSD allocation as a last resort. + Use allegedly more secure Unix98 pty allocation by default. + (allocate_pty_the_old_fashioned_way): New. the last resort. + (unix_create_process): Push ptem, ldterm, ttcompat where + available. Autoconfiscate. + (try_to_initialize_subtty): New. + (unix_kill_child_process): Proper signal handling for ptys on most + platforms, using special knowledge of AIX, BSD, etc... + (unix_create_process): Always disconnect_controlling_terminal() for + subprocesses, whether using ptys or not. + * process.h: Remove old getpt-dependent PTY code. + * process.c (Fprocess_send_signal): New, obvious generic function. + (decode_signal): New. + (Finterrupt_process): + (Fkill_process): + (Fquit_process): + (Fstop_process): + (Fcontinue_process): + (Fsignal_process): Use decode_signal. + (process_send_signal): + Many docstring corrections. + Allow any signal to be sent to a process object. + * config.h.in: Add symbols for big signal/process overhaul. + * syssignal.h (EMACS_KILLPG): Use HAVE_KILLPG. Use `pid', not `gid'. + * sysproc.h: Include process-related headers, where available: + sys/stropts.h sys/strtio.h pty.h libutil.h + * s/irix4-0.h: + * s/irix5-0.h: + * s/cygwin32.h: + * s/gnu.h: + * s/linux.h: + * s/hpux.h: + * s/aix3-1.h: + Remove old S&M pty stuff. + * console-tty.c (tty_init_console): Use pid_t, not int, for pids. + * systty.h: Simplify cpp hackery, improve comments. + Favor BSD ioctl(TIOCGPGRP) over Posix tcgetpgrp(). + + * editfns.c (Fformat_time_string): + Be a little more paranoid with the return value of ctime. + + * fileio.c (check_executable): + (check_writable): + Use symbolic constants X_OK, W_OK. + + * console-x.c (split_up_display_spec): Fix a warning. + +2000-10-02 Martin Buchholz + + * gui-x.c (add_accel_and_to_external): strlen ==> XSTRING_LENGTH + * ntproc.c (sys_spawnve): make_string ==> build_string + Small clarity improvements. + +2000-09-30 Martin Buchholz + + * events.c (WRONG_EVENT_TYPE_FOR_PROPERTY): Warning removal. + + * s/windowsnt.h (HAVE_STRCASECMP): Remove. + + * config.h.in (HAVE_STRCASECMP): Remove. + +2000-09-29 Martin Buchholz + + * redisplay-output.c (redisplay_output_pixmap): + Cleaner and possibly more 64-bit correct code. + +2000-09-28 Stephen J. Turnbull + + * dumper.c (pdump_load_finish): move restoration of + `noninteractive1' to emacs.c (main_1). + * emacs.c (main_1): protect LISP-visible command-line flags + from pdump_load(). + +2000-09-26 Stephen J. Turnbull + + * Makefile.in.in (versionclean): Use EXE_TARGET and + DUMP_TARGET instead of literal program names. + +2000-09-20 Martin Buchholz + + * Makefile.in.in: Recent purify's require absolute paths for cache-dir. + +2000-09-19 Martin Buchholz + + * *: Spelling mega-patch + +2000-09-19 Martin Buchholz + + * fns.c (bad_bad_turtle): + Delete "Eek!" comment, since we fixed the bug to which it refers. + +2000-09-16 Martin Buchholz + + * alloca.c: Replace REGISTER with register. + +2000-09-16 Daiki Ueno + + * file-coding.c (ucs_to_char): Use countof. + +2000-09-16 Martin Buchholz + + * file-coding.c: (ucs_to_char): + (complex_vars_of_file_coding): + Use countof instead of sizeof. + Use CHECK_NATNUM instead of CHECK_INT. + + * sysdep.c (strcasecmp): Remove. + * device-x.c (ascii_strcasecmp): New. + * device-x.c (Fx_get_resource): Use ascii_strcasecmp. + Avoid using non-standard non-portable strcasecmp. + +2000-09-16 Martin Buchholz + + * Makefile.in.in (mostlyclean): remove reference to prefix-args. + * font-lock.c: remove reference to emacsfns.h. + * search.c: small doc improvement. + * event-Xt.c: correct file names in comments. + * console-x.h Correct file names in comments. + * frame.c: Correct file names in comments. + * event-stream.c: remove Energize from comments. + +2000-09-15 Martin Buchholz + + * symeval.h (DEFERROR_STANDARD): + (DEFERROR): + (DEFSYMBOL): + (DEFSYMBOL_NO_DUMP): + (DEFSYMBOL_MULTIWORD_PREDICATE): + (DEFSYMBOL_MULTIWORD_PREDICATE_NO_DUMP): + (DEFKEYWORD): + The construct &##name is not sensible C. + Fixes compilation errors with Unixware native compiler. + +2000-09-14 Martin Buchholz + + * frame.c (device_matches_console_spec): no longer takes a `frame' arg + (next_frame_internal): Removed. We now just have next_frame. + (next_frame): + Write a simpler and cleaner one-pass algorithm. + Remove called_from_delete_device arg and #ifdefed-out code. + (previous_frame): + Renamed from prev_frame. Update callers. + Cleaned up to have an analogous implementation to next_frame. + (other_visible_frames_internal): Remove the + called_from_delete_device bogus arg, and hence, remove this + function. Just use other_visible_frames(). + + * window.c (Fnext_window): + Prettify docstring. + Since next_frame() is guaranteed to return a frame, remove check + for nil inserted in previous patch. + (Fprevious_window): + Prettify docstring. + Make code look more like Fnext_window. + (window_loop): + Respect the `console' arg when iterating through windows. + Fixes bug: (get-buffer-window buffer t device) not respecting + the `device' arg. + This function needs more work, as others have pointed out. + + * frame.h: Rename prev_frame to previous_frame. + device_matches_console_spec no longer takes a `frame' arg. + + * s/gnu.h: + * s/linux.h: + * s/hpux.h: + Use EMACS_BLOCK_SIGNAL instead of sigblock. + From "Golubev I. N." . + + * make-src-depend: Fix typo. + +2000-09-13 Martin Buchholz + + * window.c (Fnext_window): + next_frame() might return nil, not a frame. + Fixes this crash: + (gdb) run -eval '(progn (make-device (quote x) "polgar:0") (next-window (minibuffer-window) t (quote visible) (second (device-list))))' + + * frame.c (next_frame_internal): + We've passed a frame if we've passed its device. + Fixes this crash: + (gdb) run -eval '(progn (make-frame nil (make-device (quote x) "polgar:0")) (next-window (minibuffer-window) t (quote visible) (second (device-list))))' +Fatal error: assertion failed, file /project/xemacs/ws/dev/src/frame.h, line 245, RECORD_TYPEP (obj, lrecord_type_frame) + +2000-09-11 Jonathan Harris + + * menubar-msw.c (mswindows_translate_menu_or_dialog_item): + Allow option to suppress accelerators in menu/dialog items. + (populate_or_checksum_helper): Pass dialog title through above. + +2000-09-10 Jonathan Harris + + * event-msw.c (mswindows_key_to_emacs_keysym): + Add "pause" key, fix "menu" key. + +2000-09-09 Martin Buchholz + + * eval.c (reinit_vars_of_eval): + Increase max_lisp_eval_depth to 1000, + required for thai-xtis.el to byte-compile under some circumstances. + +2000-09-04 Martin Buchholz + + * event-Xt.c (x_to_emacs_keysym): Increase size of `buffer' to 513. + From Kenichi Handa. + +2000-09-01 Martin Buchholz + + * make-src-depend: Make the generated Makefiles smaller. + + * s/hpux.h (SETUP_SLAVE_PTY): + Provide a %d in the format string for the errno argument. + + * editfns.c (Ftemp_directory): + Warning fix. + Avoid buffer overrun on very long file name. + + * input-method-xlib.c (XIM_init_device): + 6th parameter of XRegisterIMInstantiateCallback has different + pointer types on different OSes, so simply cast to (void *). + + * unexhp9k800.c: Warning fixes. Fiddly changes. + + * sysdll.c (dll_open): + shl_load will hang hard if passed a NULL filename. + Simply return NULL for compatibility with dlopen. + * sysdll.c: Conform to XEmacs coding standards. + + * sysdep.c (get_pty_max_bytes): + Support pty input lines longer than 512 bytes on HP-UX 10.20. + +2000-08-31 Martin Buchholz + + * tooltalk.c: Add #include + +2000-08-12 Alexandre Oliva + + * s/hpux.h: Don't use undefined function sigunblock(). + +2000-08-31 Martin Buchholz + + * config.h.in: Add HAVE_BALLOON_HELP. + * emacs.c: Use HAVE_BALLOON_HELP. + * Makefile.in.in (x_objs): + Make Balloon Help conditional on finding shape.h. + +2000-08-23 Yoshiki Hayashi + + * syntax.c (regex_emacs_buffer_p): New variable. + * syntax.h (regex_emacs_buffer_p): extern. + * search.c (looking_at_1): + (string_match_1): + (fast_string_match): + (search_buffer): Set regex_emacs_buffer_p. + * regex.c (re_match_2_internal): Reference regex_emacs_buffer_p + when before_dot, at_dot, after_dot. + +2000-08-23 Andy Piper + + * gui-x.c (popup_selection_callback): Only set action_occurred + when we really have an image instance. + * gui-msw.c (mswindows_handle_gui_wm_command): ditto. + +2000-08-23 Andy Piper + + * gui-msw.c (mswindows_handle_gui_wm_command): set + action_occurred. + * gui-x.c (popup_selection_callback): ditto. + + * glyphs.h (IMAGE_INSTANCE_WIDGET_ACTION_OCCURRED): new accessor. + (XIMAGE_INSTANCE_WIDGET_ACTION_OCCURRED): ditto. + (struct Lisp_Image_Instance): add action_occurred flag. + + * glyphs.c (redisplay_subwindow): use action_occurred flag. + (image_instance_changed): ditto. + (reset_frame_subwindow_instance_cache): only unmap windows - do + not remove them from the cache also. + + * glyphs-widget.c (tab_control_update): better debug. + (progress_gauge_update): ditto. + (layout_update): ditto. + (layout_instantiate): ditto. + (tab_control_order_only_changed): cope with null pending items. + + * glyphs-msw.c (mswindows_tab_control_redisplay): add better + debug. Force selection of an item when an action occurred. Cope + with null pending_items. + (mswindows_progress_gauge_redisplay): better debug. + * glyphs-x.c (x_tab_control_redisplay): ditto. + + * redisplay.c (redisplay_frame): reset the frame cache if the + frame is garbaged. + + * window.c (Fset_window_configuration): potentially re-enable + frame cache reset. + (window_unmap_subwindows): need to finalize instances here since + it is only used in mark_window_as_deleted. + +2000-08-22 Stephen J. Turnbull + + * nas.c (SndOpenDataForReading): + nas.c (WaveOpenDataForReading): + nas.c (readChunk): {BIG,LITTLE}_ENDIAN -> NAS_{BIG,LITTLE}_ENDIAN. + Somehow escaped from the 2000-08-14 patch. + +2000-08-14 Stephen J. Turnbull + + * nas.c: Preprocessor trickery to use NAS_LITTLE_ENDIAN instead + of LITTLE_ENDIAN (conflicts with glibc, at least) in NAS <= 1.2p5. + +2000-08-21 Andy Piper + + * glyphs-x.c (x_map_subwindow): Minor optimization - only map the + window if it is not already displayed. + + * glyphs-msw.c (mswindows_map_subwindow): only map the window if + it is not already displayed. + + * window.c (Fset_window_configuration): don't reset the frame + cache. + + * glyphs.c (unmap_subwindow_instance_cache_mapper): only remove + instances from the frame cache if we are actually finalizing them. + (reset_frame_subwindow_instance_cache): reset frame cache only + after unmapping everything. + (map_subwindow): set displayed flag after mapping. + +2000-08-21 Martin Buchholz + + * data.c (indirect_function): + Rename ERRORP to non-misleading VOID_FUNCTION_ERRORP. + + * eval.c (function_argcount): + Use original function when signaling errors. + +2000-08-18 Andy Piper + + * frame.c (delete_frame_internal): use new + free_frame_subwindow_instances name. + + * glyphs-msw.c (mswindows_tab_control_instantiate): verify index. + (add_tab_item): make return type correct. + (mswindows_tab_control_instantiate): assert index of tab. + (mswindows_tab_control_redisplay): Re-code to use + gui_item_equal_sans_selected and gui_item_list_find_selected. + + * glyphs-widget.c (tab_control_update): Correct comment. + + * window.c (window_unmap_subwindows): use new + unmap_subwindow_instance_cache_mapper. + (window_unmap_subwindows_cache_mapper): deleted. + (Fset_window_configuration): comparisons should now be with + EQ. Preserve the subwindow instance cache across configuration + changes. + (allocate_window): ditto. + (make_dummy_parent): ditto. + + * glyphs.c (free_frame_subwindow_instances): rename from + free_frame_subwindow_instance_cache. finalize all instances rather + than just those in the display cache. + (finalize_all_subwindow_instances): walk windows unmapping and + finalizing subwindows. + (unmap_subwindow_instance_cache_mapper): moved from + window.c. Allow finalization as well as unmapping. + + * gui.c (gui_item_list_find_selected): new function. + + * gui.h (gui_item_list_find_selected): declare. + + * glyphs-x.c (x_tab_control_redisplay): pick tab + explicitly. Re-code to use gui_item_equal_sans_selected and + gui_item_list_find_selected. + + * glyphs-x.h: add lwlib-utils.h + + * buffer.c (Frecord_buffer): undo previous change. + +2000-08-09 Vin Shelton + + * config.h.in, s/gnu.h, s/hpux.h, s/linux.h: Use UNIX98 PTYs if + possible. Create temporary files more securely. The patch was + generated by Torsten Duwe , Florian Weimer + and Olaf Kirch. See + http://www.xemacs.org/list-archives/xemacs-patches/200007/msg00123.html + for details. + +2000-08-07 Ben Wing + + * getloadavg.c: remove duplicate (and windows-breaking) + includes of fcntl.h and sys/file.h. + + * nt.c: remove duplicate getloadavg() definition. + + * sysdll.h (Qdll_filename_encoding): add missing stand-in + encodings. + +2000-08-07 Gunnar Evermann + + * eval.c (function_argcount): If function needs to be autoloaded + actually use the loaded definition. + GCPRO function. + +2000-08-05 Ben Wing + + * getloadavg.c: add prototype for getloadavg(). remove + duplicate WIN32_NATIVE/CYGWIN code (already in the middle + of the code). remove duplicate header includes. + + * s\cygwin32.h, s\mingw32.h: remove stray NO_ARG_ARRAY. + + * s\cygwin32.h, s\mingw32.h, m\windowsnt.h: + don't define LOAD_AVE_TYPE/LOAD_AVE_CVT because we have no + useful load average. + + * alloc.c (reinit_alloc_once_early): removed references to + VIRT_ADDR_VARIES, malloc_sbrk_used/free, and data-bytes-used/free. + the lisp vars are the only things referencing the malloc_sbrk_* + vars, and they were already if 0'd out. these vars only exist + in the older malloc.c, which is basically unused, and they're + only for informational purposes. + + * m\*.h: removed useless VIRT_ADDR_VARIES. + + * m\powerpc.h: removed stray NO_ARG_ARRAY. + +2000-04-26 IKEYAMA Tomonori + + * redisplay-msw.c (mswindows_output_dibitmap): Set foreground + color if the image is a mono pixmap. + +2000-07-30 Ben Wing + + * Makefile.in.in (release): + Remove stray @. + + * buffer.c (directory_is_current_directory): + * dired-msw.c (mswindows_get_files): + * dired.c: + * dired.c (Fdirectory_files): + * dired.c (file_name_completion_stat): + * dired.c (Ffile_attributes): + [[[[1]]]]: Rename stat() -> xemacs_stat() and eliminate nasty + preprocessor tricks, to avoid problems on some machines + (e.g. SCO). + + * callproc.c (egetenv): GC docs. + + * console-msw.h: + * console-msw.h (struct mswindows_dialog_id): + * lrecord.h (lrecord_type): + New object for use with MSW dialogs. + + * console.h (struct console_methods): + New enable/disable frame methods, for proper modal dialogs. + + * device-msw.c (msprinter_default_printer): Fix to follow + proper Mule conventions. + + * device-msw.c: + * device-msw.c (signal_open_printer_error): + * device-msw.c (msprinter_init_device): + * device-msw.c (ensure_not_printing): + * device-msw.c (plist_get_margin): + * device-msw.c (Fmsprinter_select_settings): + * device-msw.c (finalize_devmode): + * device-msw.c (Fmsprinter_settings_despecialize): + * device-msw.c (signal_enum_priner_error): + * extents.c (decode_extent): + * extents.c (decode_map_extents_flags): + * extents.c (decode_extent_at_flag): + * extents.c (Fextent_at): + * extents.c (Fextents_at): + * extents.c (symbol_to_glyph_layout): + [[[[2]]]] Use structured errors. + + * dialog-msw.c: + * dialog-msw.c (mswindows_is_dialog_msg): + * dialog-msw.c (mark_mswindows_dialog_id): + * dialog-msw.c (dialog_proc): + * dialog-msw.c (handle_question_dialog_box): + * dialog-msw.c (syms_of_dialog_mswindows): + Define new object to clean up marking; use it as a dialog identifier. + Call new delete-dialog-box-hook. + + * dialog-x.c (dbox_selection_callback): + * dialog-x.c (dbox_descriptor_to_widget_value): + * dialog-x.c (x_make_dialog_box_internal): + Call new delete-dialog-box-hook. + Return an id. + + * dialog.c: + * dialog.c (syms_of_dialog): + * dialog.c (vars_of_dialog): + Define new delete-dialog-box-hook, for use w/modal dialog boxes. + + * eval.c: + * eval.c (signal_call_debugger): + when noninteractive, output stack traces on the console instead + of in a (never-seen) buffer. + + * eval.c (signal_type_error): + * eval.c (invalid_argument_2): + * lisp.h: + new funs for use w/structured errors. + + * event-Xt.c: + * event-Xt.c (x_to_emacs_keysym): + * event-Xt.c (describe_event): + * event-Xt.c (emacs_Xt_event_handler): + * event-Xt.c (vars_of_event_Xt): + * event-msw.c: + * event-msw.c (mswindows_wnd_proc): + * event-msw.c (vars_of_event_mswindows): + rename {x,mswindows}-debug-events to debug-{}-events for + consistency with other debug-foo variables. + + * event-stream.c: + document next-event more clearly. + + * fileio.c (Ffile_name_directory): + * fileio.c (Ffile_name_nondirectory): + * fileio.c (Funhandled_file_name_directory): + * fileio.c (file_name_as_directory): + * fileio.c (Ffile_name_as_directory): + * fileio.c (directory_file_name): + * fileio.c (Fdirectory_file_name): + * fileio.c (Fmake_temp_name): + * fileio.c (Ffile_truename): + * fileio.c (Fsubstitute_in_file_name): + * fileio.c (expand_and_dir_to_file): + * fileio.c (barf_or_query_if_file_exists): + * fileio.c (check_executable): + * fileio.c (Ffile_exists_p): + * fileio.c (Ffile_writable_p): + * fileio.c (Ffile_directory_p): + * fileio.c (Ffile_regular_p): + * fileio.c (Ffile_modes): + * fileio.c (Ffile_newer_than_file_p): + * fileio.c (Fverify_visited_file_modtime): + * fileio.c (Fset_visited_file_modtime): + * fileio.c (auto_save_1): + (1). (2). + fix up gcpro's. + + * frame-msw.c: + * frame-msw.c (mswindows_init_frame_1): + * frame-msw.c (mswindows_enable_frame): + * frame-msw.c (error_frame_unsizable): + * frame-msw.c (msprinter_init_frame_1): + * frame-msw.c (msprinter_init_frame_3): + * frame-msw.c (console_type_create_frame_mswindows): + (2). + implement new enable/disable frame methods. + + * frame-x.c: + * frame-x.c (x_enable_frame): + * frame-x.c (console_type_create_frame_x): + implement new enable/disable frame methods. + + * frame.c: + * frame.c (Fdisable_frame): + * frame.c (syms_of_frame): + * frame.h (struct frame): + implement new enable/disable frame methods/functions. + + * general-slots.h: + add initial-focus. + + * glyphs-msw.c (mswindows_widget_instantiate): + comment that initial-focus should be implemented. + + * glyphs-widget.c: + * glyphs-widget.c (check_valid_instantiator): + * glyphs-widget.c (check_valid_orientation): + * glyphs-widget.c (check_valid_tab_orientation): + * glyphs-widget.c (check_valid_justification): + * glyphs-widget.c (check_valid_border): + * glyphs-widget.c (check_valid_callback): + * glyphs-widget.c (check_valid_int_or_function): + * glyphs-widget.c (check_valid_string_or_vector): + * glyphs-widget.c (check_valid_item_list_1): + * glyphs-widget.c (widget_validate): + * glyphs-widget.c (combo_box_validate): + * glyphs-widget.c (widget_instantiate): + * glyphs-widget.c (syms_of_glyphs_widget): + * glyphs-widget.c (VALID_WIDGET_KEYWORDS): + * glyphs-widget.c (image_instantiator_combo_box): + * glyphs-widget.c (image_instantiator_scrollbar): + * glyphs-widget.c (image_instantiator_tab_control): + * glyphs-widget.c (VALID_LAYOUT_KEYWORDS): + (2). + support (unimplemented) keyword initial-focus. + reindent long macros. + + * glyphs-x.c (x_redisplay_widget): + * glyphs-x.c (x_button_instantiate): + * glyphs-x.c (x_button_redisplay): + * glyphs-x.c (x_progress_gauge_instantiate): + * glyphs-x.c (x_edit_field_instantiate): + * glyphs-x.c (x_combo_box_instantiate): + * glyphs-x.c (x_tab_control_instantiate): + * glyphs-x.c (x_label_instantiate): + * gui-x.c: + * gui-x.c (button_item_to_widget_value): + * gui-x.c (gui_items_to_widget_values_1): + * gui-x.c (gui_item_children_to_widget_values): + * gui-x.c (gui_items_to_widget_values): + * gui-x.h: + * menubar-x.c (menu_item_descriptor_to_widget_value_1): + add new flag to gui-parsing routines to indicate whether + accelerator specs should be supported. + + * glyphs.c (syms_of_glyphs): use DEFSYMBOL. + + * glyphs.h (struct Lisp_Image_Instance): + * glyphs.h (IMAGE_INSTANCE_WANTS_INITIAL_FOCUS): + add initial-focus flag. + + * gui.c: + * gui.c (syms_of_gui): + * gui.c (vars_of_gui): + clean up menu-no-selection-hook. + + * gui.h: + support delete-dialog-box-hook. + + * lread.c (Fload_internal): + * lread.c (locate_file_in_directory_mapper): + (1). + + * lrecord.h: + * lrecord.h (struct toolbar_button): + * lrecord.h (syms_of_toolbar): + document how to create a new object. + + * menubar-msw.c (mswindows_char_is_accelerator): + may be called on frames w/o menus. + + * menubar.c (vars_of_menubar): + clean up :filter docs. + + * nt.c (readdir): + * ntproc.c: + (1). + + * process-nt.c: + * process-nt.c (validate_signal_number): + * process-nt.c (signal_cannot_launch): + * process-nt.c (nt_create_process): + * process-nt.c (nt_send_process): + * process-nt.c (nt_kill_child_process): + * process-nt.c (nt_open_network_stream): + * process-nt.c (syms_of_process_nt): + (2). + delete quote-handling. call new lisp code that does it better. + + * process-unix.c (connect_to_file_descriptor): + * process-unix.c (allocate_pty): + * process-unix.c (unix_send_process): + * process-unix.c (unix_kill_child_process): + * process-unix.c (unix_open_network_stream): + * process-unix.c (unix_open_multicast_group): + (1). (2). + + * process.c: + * process.c (Fstart_process_internal): + (2). need to canonicalize process path even if absolute. + + * select-msw.c (symbol_to_ms_cf): + * select-msw.c (ms_cf_to_symbol): + * select-msw.c (cf_is_autofreed): + * select-msw.c (mswindows_destroy_selection): + * select.c: + * select.c (syms_of_select): + * select.h: + support dibv5, fix bugs. (from Mike Alexander) + + * select.c (Fget_selection_internal): + * select.c (select_convert_out): + + * sysdep.c: + * sysdep.c (xemacs_stat): + renamed. + + * sysdep.c (mkdir): + * sysdep.c (rmdir): + but keep original stat() here because we provide encapsulation + around these funs. + + * sysfile.h: + * sysfile.h (fstat): + remove stat garbage. + + * syswindows.h: + fix X/MSW conflict. + don't include tchar.h. it's inappropriate because it makes + compile-time distinctions when we want runtime distinctions. + (we provide our own tchar replacements) + + * toolbar.c: + use default object printer for toolbar-button. + + * unexcw.c: + make sure we don't encapsulate. + + * window.c (vars_of_window): + emphasize that temp-buffer-show-hook is obsolete. + +2000-08-05 Martin Buchholz + + * glyphs.c (image_instance_hash): HASH2 wants EMACS_INT args. + (Fimage_instance_subwindow_id): make_int wants EMACS_INT arg. + + * events.c (Fevent_timestamp_lessp): + Not 64-bit clean. Use EMACS_INT, not int. + +2000-06-05 Andrew Begel + + * lrecord.h (lrecord_types): Changed lrecord_type_count to an + unsigned int and changed the last enum to + lrecord_type_last_built_in_type. + (lrecord_implementations_table): changed prototype to know how + long the array is supposed to be. + (lrecord_type_count): new unsigned int to keep track of the + current number of lisp lrecord types. + (DEFINE_EXTERNAL_LRECORD): + (DECLARE_EXTERNAL_LRECORD): Added these two for external + dynamic-modules to declare new lisp types. They are the same + as the non-EXTERNAL forms, but declare an lrecord_type unsigned + int for each new type, and increment lrecord_type_count by 1. + + * alloc.c (lrecord_implementations_table): Changed to reference + lrecord_type_last_built_in_type for the size of the array. + Moved MODULE_DEFINABLE_TYPE_COUNT to lrecord.h. + +2000-08-03 Yoshiki Hayashi + + * glyphs.h (check_valid_item_list): Renamed from + check_valid_item_list_1. + +2000-08-01 Alastair J. Houghton + + * select.c (Qselect_coerce): New. + * select.c (Vselection_coercion_alist): New. + * select.c (syms_of_select): Declare. + * select.c (get-selection-internal): Use it. + Use the new select-coerce functionality. + + * select.c (select_coerce): New. + * select.h (select_coerce): Declare. + New function to coerce one type of data into another. + +2000-08-03 Martin Buchholz + + * callproc.c (Fcall_process_internal): + (Fcall_process_internal): + * process-unix.c (unix_create_process): + Save and restore the value of errno, so that error messages are accurate. + +2000-08-01 Martin Buchholz + + * elhash.c (print_hash_table): + Fix printing of hash tables to also use `key-and-value' instead of `t'. + Prettify docstrings and indentation. + +2000-07-31 Yoshiki Hayashi + + * window.c (Fwindow_pixel_edges): Subtract frame border and + gutter size. + +2000-07-31 Andy Piper + + * buffer.c (Frecord_buffer): make absolutely sure that redisplay + will acknowledge the change. + + * glyphs.h: declare tab_control_order_only_changed. + + * glyphs-x.c (x_tab_control_redisplay): use + tab_control_order_only_changed. + + * glyphs-widget.c (tab_control_order_only_changed): new function. + + * glyphs-msw.c (mswindows_tab_control_redisplay): use + tab_control_order_only_changed. + + * gui.c (gui_item_equal_sans_selected): new function. + (gui_item_equal): use it. + + * glyphs-msw.c (mswindows_combo_box_instantiate): deprecate + :properties in favor of :items.. + + * glyphs-widget.c (check_valid_item_list): rename from + check_valid_item_list_1. + (check_valid_item_list_1): renamed. + (combo_box_validate): deprecate :properties in favor of :items. + (widget_instantiate): ditto. + (tab_control_update): ditto. + (image_instantiator_combo_box): ditto. + (image_instantiator_tree_view): ditto. + (image_instantiator_tab_control): ditto. + (layout_post_instantiate): remove dead code. + + * print.c (debug_print_no_newline): only write to debugger if in + WIN32_NATIVE. + + * elhash.c (Fmake_hash_table): update doc string. + + * event-msw.c (mswindows_wnd_proc): don't allow processing of + messages whilst in GC. This at least stops XEmacs crashing but has + the potential for wierd behaviour. + +2000-07-31 Martin Buchholz + + * config.h.in: + Make existence of s&m files optional. + + * s/bsd386.h: Remove HAVE_GETLOADAVG. + * s/freebsd.h: Remove HAVE_GETLOADAVG. + * s/gnu.h: Remove HAVE_GETLOADAVG. + * s/netbsd.h: Remove HAVE_GETLOADAVG. + * s/sol2.h: Remove HAVE_GETLOADAVG. + * lisp.h: Remove getloadavg() declaration. + * fns.c: + Include if available. + Don't declare our own getloadavg() if HAVE_GETLOADAVG. + * config.h.in: Group together getloadavg()-related macros. + Use only configure-time tests to detect getloadavg(). + +2000-07-30 Martin Buchholz + + * Makefile.in.in (TransientEmacsShell.o): Fix race condition. + +2000-07-25 Andy Piper + + * syswindows.h: add tchar.h for native builds. + + * frame.c (syms_of_frame): remove set-glyph-image. + + * general-slots.h: add Qset_glyph_image. + + * glyphs-widget.c (layout_update): add domain arg to + set-glyph-image. + (syms_of_glyphs_widget): remove set-glyph-image. + +2000-07-23 Ben Wing + + * dialog-msw.c (vars_of_dialog_mswindows): need to staticpro + Vpopup_frame_list. + +2000-07-22 Andy Piper + + * symsinit.h: add syms_of_win32(). + + * gui-msw.c (syms_of_gui_mswindows): remove + Fmswindows_shell_execute. + (Fmswindows_shell_execute): moved to win32.c. + + * emacs.c (main_1): add syms_of_win32 (). + + * win32.c (init_potentially_nonexistent_functions): rewrite in + compiler-friendly terms. + (Fmswindows_shell_execute): move here from gui-msw.c. + (syms_of_win32): new. + + * device-msw.c (Fmswindows_printer_list): clean up args to + EnumPrinters. + Don't include tchar under cygwin or mingw. + (msprinter_default_printer): make cygwin-friendly. + +2000-07-21 Andy Piper + + * glyphs-widget.c (image_instantiator_tree_view): use tab + control's update function. + (layout_property): new function. Retrieve items. + + * glyphs-msw.c (mswindows_tree_view_redisplay): new + function. Re-populate the tree view from the pending items. + + * glyphs.c (instantiate_image_instantiator): Make sure the domain + is designated the parent if the domain is an image instance. This + is needed so that dirtiness can be cascade up the hierarchy and + thus for layout children to be redisplayed correctly. + (allocate_image_instance): rename glyph -> parent. + + * redisplay.h: change redisplay_output_layout signature. + + * redisplay-msw.c (mswindows_output_display_block): use domain + arg. + + * redisplay-x.c (x_output_display_block): use domain arg. + +2000-07-10 Andy Piper + + * window.c (Fset_window_configuration): add comment. + + * redisplay-output.c (compare_runes): + (redisplay_output_subwindow): redisplay rather than update subwindow. + (redisplay_output_layout): ditto. + + * redisplay-msw.c (mswindows_frame_output_end): + (mswindows_frame_output_end): make defer window pos optional. + + * lisp.h: add Flast. + + * glyphs.h (struct image_instantiator_methods): add dest_mask top + normalize method. Change update method to be for changed + instantiators. Add redisplay method. Change signature of layout + method. + (struct Lisp_Image_Instance): add instantiator. + (IMAGE_INSTANCE_INSTANTIATOR): new. + (IMAGE_INSTANCE_SUBWINDOW_FACE): new. + (XIMAGE_INSTANCE_INSTANTIATOR): new. + (XIMAGE_INSTANCE_SUBWINDOW_FACE): new. + + * glyphs.c: + (find_instantiator_differences): new function. + (Fset_instantiator_property): new convenience function. + (check_image_instance_structure): strictly check for vector + instantiators. + (normalize_image_instantiator): make non-static. + (instantiate_image_instantiator): pass on dest_mask and use new + signatures for image_instance_layout and friends. + (mark_image_instance): mark the instantiator. Mark the subwindow + face not the widget face. + (image_instance_equal): add instantiator. + (image_instance_hash): ditto. + (allocate_image_instance): ditto. + (Fset_image_instance_property): removed. + (Fimage_instance_file_name): ditto. + (Fcolorize_image_instance): ditto. + (image_instance_layout): add offsets to be set. + (update_image_instance): new function. update an image instance + from its changed instantiator. + (inherit_normalize): add dest_mask. + (xbm_normalize): ditto. + (xface_normalize): ditto. + (xpm_normalize): ditto. + (text_update): set_property -> update. + (image_instantiate): use the glyph identity as a hash key, not the + instantiator. + (glyph_width): use new image_instance_layout signature. + (glyph_ascent): ditto. + (glyph_descent): ditto. + (glyph_height): ditto. + (glyph_query_geometry): ressurrect. + (glyph_layout): ditto. + (redisplay_subwindow): update -> redisplay. + (syms_of_glyphs): add Fset_instantiator_property. + (image_instantiator_format_create): set_property -> update. + + * glyphs-x.c: + (autodetect_normalize): add dest_maks to signature. + (x_redisplay_subwindow): update -> redisplay. + (x_redisplay_widget): ditto. + (x_button_redisplay): ditto. + (x_progress_gauge_redisplay): ditto. + (x_tab_control_redisplay): ditto. Rewrite to cope with changed + stacking order. + (console_type_create_glyphs_x): update -> redisplay. + (image_instantiator_format_create_glyphs_x): ditto. + + * glyphs-widget.c: + (check_valid_instantiator): disallow glyphs in the instantiator, + they must now be vectors. + (check_valid_instantiator_list): ditto. + (glyph_instantiator_to_glyph): use internal symbol rather than + intern. + (widget_update): renamed from widget_set_property. Call cascaded + update methods. + (redisplay_widget): renamed from update_widget. + (widget_layout): image_instance_layout now takes position as well + as size. + (widget_normalize): ditto. + (widget_instantiate): ditto. + (tab_control_query_geometry) ditto.: + (tab_control_update): renamed from tab_control_set_property. + (progress_gauge_update): set_property -> update. + (layout_normalize): rewrite so that child instantiators are + normalized also. + (layout_update): new function. Create glyphs from the normalized + children and cope with any other layout keywords. We do not + instantiate children here that will be take care of by + redisplay_output_layout. + (layout_instantiate): call layout_update and not much else. + (layout_post_instantiate): not sure whether this is needed + anymore. + (layout_query_geometry): query glyph geometry rather than + image_instance geometry. + (layout_layout): set offsets from pass in parameters. Use glyph + geometry and layout functions rather than image instance ones. + (native_layout_layout): ditto. + (syms_of_glyphs_widget): add make-glyph and set-glyph-image. + (image_instantiator_widget): set_property -> update. + (image_instantiator_buttons): ditto. + (image_instantiator_progress_guage): ditto. + (image_instantiator_tab_control): ditto. + (VALID_LAYOUT_KEYWORDS): instantiators must now be vectors. + (image_instantiator_layout): add update method. + + * glyphs-msw.c (bmp_normalize): + (mswindows_resource_normalize): add dest_mask so that it can be + proprogated by layout_normalize. + (begin_defer_window_pos): make optional because it may not be the + right thing to do and it introduces differences with X. + (mswindows_unmap_subwindow): ditto. + (mswindows_map_subwindow): ditto. + (mswindows_redisplay_subwindow): renamed from + mswindows_update_subwindow. + (mswindows_redisplay_widget): ditto. + (mswindows_button_redisplay): renamed from + mswindows_button_update. Update is now what the instantiation + function does for a changed instantiator. + (mswindows_progress_gauge_instantiate): set the progress value + here if appropriate. + (mswindows_tab_control_redisplay): cope with re-ordering of the + members of the tab widget by simply selecting the new top + widget. This makes things appear ok if you click on a tab. + (mswindows_combo_box_instantiate): image_instance_layout now takes + position as well as size. + (mswindows_progress_gauge_redisplay): renamed from + mswindows_progress_gauge_update. + (console_type_create_glyphs_mswindows): fix update -> redisplay. + (image_instantiator_format_create_glyphs_mswindows): ditto. + + * glyphs-eimage.c (jpeg_normalize): + (gif_normalize): + (png_normalize): + (tiff_normalize): add dest_mask so that it can be proprogated by + layout_normalize. + + * elhash.c: + (print_hash_table): + (hash_table_weakness_validate): + (decode_hash_table_weakness): + (Fhash_table_weakness): + (Fhash_table_type): + (syms_of_elhash): use Ben's naming scheme for hashtable types.. + + * console.h (struct console_methods): move update_* to + redisplay_*. + +2000-07-20 Ben Wing + + * *.[ch] (XSETOBJ): remove unused middle argument. + lisp-disunion.h: correct wrap_object() to one argument. + +2000-07-15 Ben Wing + + * s/cygwin32.h: + * s/cygwin32.h (CYGWIN_CONV_PATH): + Add missing logb prototype for v1.1. + Use post-b20 names and alias to pre-b20 names when pre-b20. + + * s/windowsnt.h: [5]. + +2000-07-15 Ben Wing + + * Makefile.in.in (x_objs): + * Makefile.in.in (sheap_objs): + * Makefile.in.in (objs): + added win32.o, cosmetic cleanups. + + * alloc.c (Fmake_byte_code): + [[[1]]]: Changes for new LIST_LOOP, EXTERNAL_LIST_LOOP, + etc. macros which declare their own args now. + + * alloc.c (syms_of_alloc): + [[[2]]]: Use DEFSYMBOL, DEFKEYWORD, DEFERROR and friends. + + * buffer.c: + Moved buffer-dedicated-frame, set-buffer-dedicated-frame into lisp. + + * buffer.c (Fget_file_buffer): + Fixed GCPRO problem. + + * buffer.c (get_truename_buffer): + Fixed comment about GC checking. + + * buffer.c (syms_of_buffer): + Undeclared those dedicated frame funs. + [2]. + + * buffer.h: + Define convenience macros for internal/external conversions. + [[[3]]]: Define codesys aliases Qcommand_argument_encoding + and Qenvironment_variable_encoding for cleaner code. + + * bufslots.h: + Remove dedicated-frame; in lisp. + + * bytecode.c (funcall_compiled_function): + [1]. + + * bytecode.c (syms_of_bytecode): + [2]. + + * console-msw.c: + * console-msw.c (mswindows_show_console): Rewrote. + + * console-msw.c (Fmswindows_debugging_output): New. + Sends to OutputDebugString (special MSWin debugger interface). + + * console-msw.c (Fmswindows_message_box): + Fixed stupid bugs so it works when called from kill-emacs. + + * console-msw.c (syms_of_console_mswindows): + Declare Fmswindows_debugging_output. + + * console-msw.h: + New MSWin prototypes. + + * console-msw.h (struct mswindows_frame): + New entry last-click-mods for improved button-modifier support. + + * console-msw.h (FRAME_MSWINDOWS_POPUP): + New struct entry `popup' with corresponding accessor. + + * console-x.c: + * console-x.c (split_up_display_spec): + * console-x.c (get_display_arg_connection): + * console-x.c (x_semi_canonicalize_console_connection): + * console-x.c (x_canonicalize_device_connection): + [[[6]]]: Change char to more specific type. + [[[8]]]: Make use of abstracting codesys aliases defined in [3], [4]; + + * console-x.c (x_semi_canonicalize_console_connection): + * console-x.c (x_canonicalize_device_connection): + [[[9]]]: Fix up error signalling to use new structured error system. + + * console-x.h: + [[[4]]]: Define codesys aliases: + Qlwlib_encoding, Qx_atom_name_encoding, Qx_font_name_encoding, + Qx_color_name_encoding, Qx_display_name_encoding. + + * console.h (struct console_methods): + New method make_dialog_box_internal supersedes older + popup_dialog_box method. + + * data.c: + Define many new errors, part of new structured errors. + + * data.c (init_errors_once_early): + * data.c (syms_of_data): + [2]. + + * device-msw.c (mswindows_init_device): + [[[5]]]: Cleanup to support NT 3.51. + + * device-msw.c (decode_devmode): Cleanup. + + * device-msw.c (mswindows_handle_print_setup_dialog_box): + * device-msw.c (mswindows_handle_print_dialog_box): + * device-msw.c (mswindows_handle_page_setup_dialog_box): + * device-msw.c (syms_of_device_mswindows): + Delete the dialog box primitives recently introduced by Kirill and + instead interface to general dialog box interface. + + * device-x.c: + * device-x.c (compute_x_app_name): + * device-x.c (x_init_device): + * device-x.c (Fx_valid_keysym_name_p): + * device-x.c (Fx_set_font_path): + [6]. + [7]. + + * device.h (wrap_device): New. + First of its kind; meant to replace XSETDEVICE. + + * dialog-msw.c: Many file-dialog symbols. + + * dialog-msw.c (mswindows_register_popup_frame): New. + * dialog-msw.c (mswindows_is_dialog_msg): New. + For supporting kbd traversal in dialog boxes. + + * dialog-msw.c (dialog_proc): + Support hitting ESC in dialogs. + + * dialog-msw.c (struct): + Common dialog box errors. + + * dialog-msw.c (handle_file_dialog_box): New. + Add file dialog code. + + * dialog-msw.c (handle_question_dialog_box): + Redo existing code to support new question dialog syntax. + + * dialog-msw.c (console_type_create_dialog_mswindows): + We support new dialog console method. + + * dialog-msw.c (syms_of_dialog_mswindows): + * dialog-msw.c (vars_of_dialog_mswindows): + New file dialog symbols, vars. + + * dialog-x.c: + * dialog-x.c (maybe_run_dbox_text_callback): + * dialog-x.c (dbox_descriptor_to_widget_value): + * dialog-x.c (x_make_dialog_box_internal): + * dialog-x.c (console_type_create_dialog_x): + Mule-ize entire file. + Redo to support question dialog syntax. + [6]. + + * dialog.c: + * dialog.c (Fmake_dialog_box_internal): + * dialog.c (syms_of_dialog): + Kill old popup-dialog-box, replace with new primitive. + Just call device method or signal error. + + * eldap.c (Fldap_open): + * eldap.c (Fldap_search_basic): + * eldap.c (Fldap_add): + * eldap.c (Fldap_modify): + [1]. + [7]. + + * emacs.c: + * emacs.c (make_arg_list_1): + * emacs.c (make_arg_list): + Mule-ize call to dll_init(). + [6]. + [8]. + + * emacs.c (make_argc_argv): + * emacs.c (free_argc_argv): + * emacs.c (init_cmdargs): + * emacs.c (main_1): + * emacs.c (Fkill_emacs): + * emacs.c (Fdump_emacs): + Update comments about what can be used in syms_* etc. + Call init_win32() when necessary. + Fix up MS Win dialog box in kill-buffer to actually work right. + [7]. + + * eval.c: + * eval.c (For): + * eval.c (Fand): + * eval.c (Fprogn): + * eval.c (Fprog1): + * eval.c (Fprog2): + * eval.c (FletX): + * eval.c (Flet): + * eval.c (condition_case_3): + * eval.c (Feval): + * eval.c (function_argcount): + * eval.c (funcall_lambda): + [1]. + + * eval.c (type_error): New. + * eval.c (maybe_type_error): New. + * eval.c (continuable_type_error): New. + * eval.c (maybe_continuable_type_error): New. + * eval.c (type_error_with_frob): New. + * eval.c (maybe_type_error_with_frob): New. + * eval.c (continuable_type_error_with_frob): New. + * eval.c (maybe_continuable_type_error_with_frob): New. + New functions for use with structured errors. + + * event-Xt.c: + * event-Xt.c (x_event_to_emacs_event): + Buttons are now modifiers too. + + * event-Xt.c (emacs_Xt_current_event_timestamp): + Implement new event method. + * event-Xt.c (reinit_vars_of_event_Xt): Set it. + + * event-msw.c: + * event-msw.c (ntpipe_shove_writer): [5]. + * event-msw.c (mswindows_enqueue_mouse_button_event): + * event-msw.c (mswindows_drain_windows_queue): + * event-msw.c (mswindows_wnd_proc): [7]. + * event-msw.c (mswindows_current_layout_has_AltGr): [5]. + * event-msw.c (mswindows_modifier_state): + Throughout: support new button modifiers. + + * event-msw.c (emacs_mswindows_current_event_timestamp): + Implement new event method. + * event-msw.c (reinit_vars_of_event_mswindows): Set it. + + * event-stream.c: + * event-stream.c (event_stream_current_event_timestamp): New. + * event-stream.c (maybe_kbd_translate): New functionality. + * event-stream.c (vars_of_event_stream): + Document new kbd-translate-table functionality. + + * event-stream.c (Fcurrent_event_timestamp): New. + New primitive for use in fabricated events. + * event-stream.c (syms_of_event_stream): [2]. Declare new primitive. + + * events-mod.h (XEMACS_MOD_BUTTON1): new button modifiers. + + * events.c: + * events.c (Fmake_event): + * events.c (WRONG_EVENT_TYPE_FOR_PROPERTY): + [1]. + [9]. + + * events.c (format_event_object): fix gcc warnings. + + * events.c (Fevent_timestamp): Document new primitives. + + * events.c (TIMESTAMP_HALFSPACE): New. + + * events.c (Fevent_timestamp_lessp): New. New primitive for + comparing timestamps correctly (half-space algorithm). + + * events.c (Fevent_modifier_bits): Doc fix. + + * events.c (Fevent_modifiers): Major doc addition. + * events.c (event_x_y_pixel_internal): Typo fix. + * events.c (syms_of_events): Declare new primitives. + + * events.h: + Update long comment for button modifiers, timestamps. + + * events.h (struct event_stream): + New current_event_timestamp method. + + * extents.c: + * extents.c (extent_in_region_p): + * extents.c (decode_extent): + * extents.c (Fset_extent_parent): + * extents.c (decode_map_extents_flags): + Fix gcc warnings. + [9]. + + * extents.c (struct extent_at_arg): + * extents.c (decode_extent_at_flag): + * extents.c (extent_at_mapper): + * extents.c (extent_at_bytind): + * extents.c (Fextent_at): Adapt to new lower-level interface. [9]. + * extents.c (Fextents_at): New primitive. [9]. + * extents.c (symbol_to_glyph_layout): [9]. + Support new primitive `extents-at'. + + + * extents.c (get_text_property_bytind): + extent_at_bytind has another arg. + [9]. + + * extents.c (syms_of_extents): New primitive. + + * file-coding.c (Fmake_coding_system): [1]. + * file-coding.c (subsidiary_coding_system): fix gcc warning + * file-coding.c (syms_of_file_coding): [2]. + + * fileio.c (Fexpand_file_name): + * fileio.c (Fsysnetunam): + * fileio.c (Ffile_exists_p): + * fileio.c (Ffile_executable_p): + * fileio.c (Fverify_visited_file_modtime): + Clean up GCPROing. + + * fileio.c (syms_of_fileio): [2]. + + * filelock.c (lock_file_1): + * filelock.c (current_lock_owner): + * filelock.c (lock_if_free): + * filelock.c (lock_file): + * filelock.c (unlock_file): + Clean up GCPROing. + + * fns.c (concat): Fix gcc warning. + + * fns.c (Fmember): + * fns.c (Fold_member): + * fns.c (Fmemq): + * fns.c (Fold_memq): + * fns.c (memq_no_quit): + * fns.c (Fassoc): + * fns.c (Fold_assoc): + * fns.c (Fassq): + * fns.c (Fold_assq): + * fns.c (assq_no_quit): + * fns.c (Frassoc): + * fns.c (Fold_rassoc): + * fns.c (Frassq): + * fns.c (Fold_rassq): + * fns.c (rassq_no_quit): + * fns.c (Fdelete): + * fns.c (Fold_delete): + * fns.c (Fdelq): + * fns.c (Fold_delq): + * fns.c (delq_no_quit): + * fns.c (Fremassoc): + * fns.c (Fremassq): + * fns.c (remassq_no_quit): + * fns.c (Fremrassoc): + * fns.c (Fremrassq): + * fns.c (remrassq_no_quit): + * fns.c (Freverse): + * fns.c (mapcar1): + [1]. + + * frame-msw.c (mswindows_init_frame_1): + * frame-msw.c (mswindows_delete_frame): + Register popups with dialog code so keyboard traversing works. + + * frame-tty.c (tty_raise_frame_no_select): [1]. + + * frame-x.c: + * frame-x.c (x_set_frame_text_value): + * frame-x.c (x_set_frame_properties): + * frame-x.c (x_create_widgets): + [7]. + + * frame.c: + * frame.c (Fmouse_pixel_position): Minor doc fixes. + + * frame.h (wrap_frame): New. + Macro like wrap_device. + + * general.c: + * general.c (SYMBOL): + * general.c (syms_of_general): + Major reorg. This is now just a wrapper and symbols themselves + are listed in general-slots.h. + + * glyphs-eimage.c (tiff_instantiate): Need cast to fix warning. + * glyphs-msw.c (mswindows_resource_instantiate): [5]. + + * glyphs-msw.c (mswindows_native_layout_instantiate): + Add DS_CONTROL so keyboard traversal will work. + + * glyphs-widget.c: + * glyphs-widget.c (syms_of_glyphs_widget): + Move some symbols to general-slots.h. + + * glyphs-x.c: + * glyphs-x.c (xbm_instantiate_1): + * glyphs-x.c (x_xbm_instantiate): + * glyphs-x.c (x_xface_instantiate): + * glyphs-x.c (autodetect_instantiate): + * glyphs-x.c (cursor_font_instantiate): + * glyphs-x.c (x_update_widget): + * glyphs-x.c (x_widget_instantiate): + * glyphs.c (bitmap_to_lisp_data): + * glyphs.c (pixmap_to_lisp_data): + [7]. + + * glyphs.c (syms_of_glyphs): + [2]. + + * gui-x.c: + * gui-x.c (print_widget_value): + * gui-x.c (menu_separator_style_and_to_external): + * gui-x.c (add_accel_and_to_external): + * gui-x.c (button_item_to_widget_value): + * gui-x.c (gui_items_to_widget_values_1): + * gui-x.c (gui_items_to_widget_values): + * gui-x.c (syms_of_gui_x): + * gui-x.c (vars_of_gui_x): + Mule-ize entire file. Move menu-no-selection-hook to gui.c. + [9]. + + * gui-x.h: + Muleize, prototype changes matching gui-x.c. + + * gui.c: + * gui.c (separator_string_p): + * gui.c (gui_item_add_keyval_pair): + * gui.c (make_gui_item_from_keywords_internal): + * gui.c (signal_too_long_error): + * gui.c (parse_gui_item_tree_item): + * gui.c (syms_of_gui): + * gui.c (vars_of_gui): + * gui.h: + menu-no-selection-hook moved here (used by MSWin). + Move some symbols to general-slots.h. + [6]. + [9]. + + * insdel.c (get_buffer_pos_char): + * insdel.c (get_buffer_range_char): + Add GC comments. + + * keymap.c (keymap_lookup_directly): + * keymap.c (keymap_store): + * keymap.c (ensure_meta_prefix_char_keymapp): + * keymap.c (describe_map): + * keymap.h: + Support new button modifiers. + + * lisp-disunion.h (wrap_object): + * lisp-disunion.h (XSETOBJ): + Rename make_obj to wrap_object. + + * lisp-union.h: + * lisp-union.h (make_int): + * lisp-union.h (make_char): + Support wrap_object. + + * lisp.h: + * lisp.h (LIST_LOOP): + * lisp.h (EXTERNAL_LIST_LOOP): + * lisp.h (LIST_LOOP_2): + * lisp.h (EXTERNAL_LIST_LOOP_1): + * lisp.h (EXTERNAL_LIST_LOOP_2): + * lisp.h (EXTERNAL_LIST_LOOP_3): + * lisp.h (EXTERNAL_LIST_LOOP_4_NO_DECLARE): + * lisp.h (PRIVATE_EXTERNAL_LIST_LOOP_6): + * lisp.h (GET_EXTERNAL_LIST_LENGTH): + * lisp.h (EXTERNAL_ALIST_LOOP_5): + * lisp.h (EXTERNAL_ALIST_LOOP_6): + * lisp.h (EXTERNAL_ALIST_LOOP_6_NO_DECLARE): + * lisp.h (EXTERNAL_PROPERTY_LIST_LOOP_5_NO_DECLARE): + * lisp.h (EXTERNAL_PROPERTY_LIST_LOOP_7): + * lisp.h (struct Lisp_Symbol): + * lisp.h (maybe_continuable_error_with_frob): + Fix up section comments. + Add new types for char to indicate usage. + Delete symbols auto-generated from general-slots.h. + Add prototypes for structured error functions. + Add long comments describing looping macros and change interface + so that lvalues are automatically declared. + Add NO_DECLARE macro in case callers want to declare lvalues + themselves. + + * lread.c (read_syntax_error): + * lread.c (continuable_read_syntax_error): + * lread.c (read_structure): + * lread.c (sequence_reader): + * lread.c (read_list_conser): + * lread.c (read_compiled_function): + Rename syntax_error and continuable_syntax_error to avoid clash + with same-named structured error functions. + + * menubar-msw.c (mswindows_translate_menu_or_dialog_item): + * menubar-msw.c (populate_menu_add_item): + * menubar-msw.c (populate_or_checksum_helper): + [5]. + [9]. + + * menubar-x.c: + * menubar-x.c (menu_item_descriptor_to_widget_value_1): + Mule-ize whole file. + + * menubar.c (Fnormalize_menu_item_name): Add optimization. + + * mule-charset.c (Fmake_charset): + * mule-wnnfns.c (Fwnn_set_param): + [1]. + + * ntproc.c (create_child): + * ntproc.c (Fwin32_set_current_locale): + Add comments portending doom. + + * objects-msw.c: + * objects-msw.c (old_font_enum_callback_2): + * objects-msw.c (font_enum_callback_1): + * objects-msw.c (mswindows_enumerate_fonts): + [5]. + + * objects-x.c: + * objects-x.c (allocate_nearest_color): + * objects-x.c (x_parse_nearest_color): + * objects-x.c (x_initialize_color_instance): + * objects-x.c (x_print_color_instance): + * objects-x.c (x_finalize_color_instance): + * objects-x.c (x_valid_color_name_p): + * objects-x.c (x_initialize_font_instance): + * objects-x.c (x_print_font_instance): + * objects-x.c (valid_x_font_name_p): + * objects-x.c (truename_via_FONT_prop): + * objects-x.c (truename_via_random_props): + * objects-x.c (truename_via_XListFonts): + * objects-x.c (x_font_truename): + * objects-x.c (x_font_instance_truename): + * objects-x.c (x_font_instance_properties): + * objects-x.c (x_list_fonts): + * objects-x.c (x_find_charset_font): + Mule-ize entire file. + [7]. + + * objects-x.h: + Mule-verify. + + * print.c: + * print.c (std_handle_out_external): + * print.c (debug_print_no_newline): + * print.c (syms_of_print): + Output to all debugger kinds in debug-print. + Fix console-output code under MSWin to actually work. + + * process-nt.c (send_signal): + * process-nt.c (nt_create_process): + Use newer Unicode macros. + + * process-unix.c (unix_create_process): + * process-unix.c (unix_canonicalize_host_name): + * process-unix.c (unix_open_network_stream): + [7]. + + * scrollbar-x.c: + Mule-verify. + + * search.c (syms_of_search): + [2]. + + * select-msw.c (mswindows_destroy_selection): + Use LIST_LOOP_2. + + * select-x.c (symbol_to_x_atom): + [7]. + + * select.c (syms_of_select): + [2]. + + * sound.c (Fplay_sound_file): + [7]. + + * specifier.c: + * specifier.c (decode_specifier_type): + * specifier.c (Fvalid_specifier_locale_type_p): + * specifier.c (check_valid_locale_or_locale_type): + * specifier.c (decode_locale): + * specifier.c (decode_locale_type): + * specifier.c (decode_locale_list): + * specifier.c (check_valid_domain): + * specifier.c (decode_specifier_tag_set): + * specifier.c (Fcanonicalize_tag_set): + * specifier.c (Fdefine_specifier_tag): + * specifier.c (Fspecifier_tag_predicate): + * specifier.c (check_valid_inst_list): + * specifier.c (check_valid_spec_list): + * specifier.c (decode_how_to_add_specification): + * specifier.c (check_modifiable_specifier): + * specifier.c (specifier_add_spec): + * specifier.c (boolean_validate): + * specifier.c (display_table_validate): + [9]. + + * specifier.c (syms_of_specifier): + Move some symbols to general-slots.h. + [2]. + + * symbols.c: + * symbols.c (Fmapatoms): + * symbols.c (Fapropos_internal): + Add GCPROs. + + * symbols.c (set_default_buffer_slot_variable): + * symbols.c (set_default_console_slot_variable): + [1]. + + * symbols.c (defsymbol_massage_name_1): + * symbols.c (defkeyword_massage_name): + * symbols.c (deferror_1): + * symbols.c (deferror): + * symbols.c (deferror_massage_name_and_message): + * symeval.h: + * symeval.h (DEFSYMBOL): + Support DEFSYMBOL*, DEFKEYWORD, DEFERROR + + * symbols.c (syms_of_symbols): + [2]. + + * symsinit.h: + * symsinit.h (init_win32): New. + Also new is syms_of_dialog_mswindows. + + * syswindows.h: + Add new Unicode macros, missing Cygwin wide-char functions, + convenience conversion macros for Qmswindows_tstr, macros for + encapsulating required MSWin <-> Cygwin filename conversions, + prototype for dynamically-extracted (not in NT 3.51) functions. + + * toolbar-x.c: + Mule-verify. + + * tooltalk.c (Fadd_tooltalk_message_arg): + * tooltalk.c (Fadd_tooltalk_pattern_attribute): + * tooltalk.c (Fadd_tooltalk_pattern_arg): + [7]. + + * tooltalk.c (syms_of_tooltalk): + [2]. + + * unexnt.c: + * unexnt.c (unexec): + Fix up headers, declaration of unexec() to be more standard. + +2000-07-20 Martin Buchholz + + * offix.h: Revert change to guard macros - they're used in offix.c! + +2000-07-18 Kirill 'Big K' Katsnelson + + * lisp.h: Defsubred Fdelete. + + * console-msw.h: (msprinter_default_printer): Added. + + * console-msw.c (msprinter_canonicalize_console_connection): + (msprinter_canonicalize_device_connection): Added. + + * device-msw.c (msprinter_default_printer): + (Fmswingows_get_default_printer): + (signal_enum_priner_error): + (Fmswingows_printer_list): Added. + +2000-07-19 Martin Buchholz + + * XEmacs 21.2.35 is released. + +2000-07-19 Martin Buchholz + + * select-x.c (x_handle_selection_request): + Text selected in xemacs and pasted into xterm failed to appear. + Spelling fixes and cosmetic changes. + +2000-07-18 Kirill 'Big K' Katsnelson + + * event-msw.c (mswindows_drain_windows_queue): Correctly check for + XEmacs frame (fix for doubling chars in dialog boxes). + +2000-07-17 Alastair J. Houghton + + * select.c (select_convert_in, select_convert_out): + Don't call intern() every time. + + * select.c (Qselect_convert_in, Qselect_convert_out): New. + * select.c (vars_of_select): Initialise them. + +2000-07-18 Alastair J. Houghton + + * select.c (selection-coercible-types): New. + + * select.c (own-selection-internal): + * select.c (get-selection-internal): + MULE bug fix - these should default to COMPOUND_TEXT and not + STRING for MULE. I think. + + * select.c (select_convert_out): Use selection-coercible-types + to find types that we can attempt to perform coercions on. + +2000-07-18 Martin Buchholz + + * mule-wnnfns.c: + * mule-canna.c: + Add coding: cookie to identify encoding. + + * mule-canna.c (CANNA_mode_keys): make static. + Use proper prototypes, even for functions of no arguments. + Remove external prototype for Fding(). + + * symsinit.h: Add missing prototype for reinit_vars_of_mule_wnn. + + * select.c (syms_of_select): Add missing DEFSUBR. + +2000-07-18 Alastair J. Houghton + + * select.c (get_selection_internal, own_selection_internal): + Make the type default to STRING, rather than placing a nil type + into Vselection_alist. + +2000-07-17 Alastair J. Houghton + + * gpmevent.c (tty_selection_exists_p): + * gpmevent.c (tty_own_selection): + Updated parameter lists. + +2000-07-15 Alastair J. Houghton + + * select.h (selection-alist): Removed declaration. + + * select.h (get_local_selection): + * select.c (get_local_selection): + Made static. + + * select.h (convert_selection): Removed declaration. + * select.c (convert_selection): Removed. + This function belongs in Lisp. + + * select.h (select_convert_in): Declare. + * select.h (select_convert_out): Declare. + * select.c (select_convert_in): New. + * select.c (select_convert_out): New. + New conversion functions for other files to call. + + * select.h (select_notify_buffer_kill): Declare. + * select.c (select_notify_buffer_kill): New. + New functions that get called from kill-buffer. + + * buffer.c (kill-buffer): Call select_notify_buffer_kill, rather than + X-specific lisp code. + + * select.h: Declare some of the lisp-visible functions for + external use. + + * select.c (clean_local_selection_data): Removed. This was + a disgusting function, and previously should have been in + select-x.c in any case. The functionality is now provided + in select-convert-from-integer (select.el). + + * select.c (available-selection-types): Fixed stupidity where + INTEGER and ATOM got added twice. Also add STRING when we see an + extent. + + * select.c (get-selection-internal): Removed symbol stripping. No + longer causes conversion when data comes from the internal cache. + + * select.c (syms_of_select): Added new functions. + + * select-x.c (motif_clipboard_cb): Use select_convert_out. Rewrote + error checking - previously this called abort! + + * select-x.c (x_own_selection): Changed comment. + + * select-x.c (x_handle_selection_request): Use select_convert_out. + Don't mess with selection-alist; it's an internal variable of select.c. + + * select-x.c (x_get_foreign_selection): Use select_convert_in. + + * select-x.c (x_handle_selection_clear): Use get-selection-timestamp, + rather than messing with selection-alist. + + * select-msw.c (mswindows_get_foreign_selection): + Use TO_INTERNAL_FORMAT rather than hacking. + +2000-07-14 Martin Buchholz + + * process-unix.c (unix_open_multicast_group): + (unix_open_multicast_group): Remove useless casts. + +2000-07-13 Martin Buchholz + + * sound.c (Fplay_sound): Fix `unused variable' warning. + + * emacs.c (main): Use correct type for _environ on SCO5. + +2000-07-12 Alastair J. Houghton + + * console.h (own_selection_method): + * console.h (selection_exists_p_method): + * console.h (available_selection_types_method): New. + * console.h (register_selection_data_type_method): New. + * console.h (selection_data_type_name): New. + + * console-msw.h (mswindows_destroy_selection): Declare it. New + function & alist to track GlobalAlloc()'d handles that need + releasing when the clipboard data gets replaced or emptied. + + * event-msw.c (mswindows_wnd_proc): Call it. + + * lisp.h, general.c (Qappend): New symbol representing a + `how-to-add' mode. + + * select.c (own-selection-internal): + * select.c (selection-exists-p): + * select.c (available-selection-types): New. + * select.c (register-selection-data-type): New. + * select.c (selection-data-type-name): New. New functions to deal + with device-specific selection data formats. + * select.c (selection-converter-out-alist): Renamed. + * select.c (selection-converter-in-alist): New. + * select.c (selection-appender-alist): New. Added new alists. + * select.c (syms_of_select, vars_of_select): Added new symbols & + variables. + * select.c (get_local_selection): Split. + * select.c: Removed spurious type checking - selections may now be + of any type, not just strings. + * select.c (own-selection-internal): + + * select.h, select.c (convert_selection): New. Created + convert_selection() function based on get_local_selection(). + * select.h, select.c (QCF_*): New symbols representing mswindows + clipboard formats. + * select.h, select.c (Qreplace_all, Qreplace_existing): New + symbols representing `how-to-add' modes. + + * select-msw.c (x_sym_p): New. + * select-msw.c (symbol_to_ms_cf): New. + * select-msw.c (ms_cf_to_symbol): New. New functions to deal with + symbols & clipboard formats. Can also handle string names. + * select-msw.c (mswindows_own_selection): + * select-msw.c (mswindows_selection_exists_p): + Added `data-type' parameter. Use it. + * select-msw.c (mswindows_available_selection_types): New. + * select-msw.c (mswindows_register_selection_data_type): New. + * select-msw.c (mswindows_selection_data_type_name): New. + * select-msw.c (mswindows_own_selection): + * select-msw.c (mswindows_get_foreign_selection): + * select-msw.c (mswindows_selection_exists_p): Rewrote. + * select-msw.c (console_create_select_mswindows): Added new methods. + * select-msw.c (mswindows_destroy_selection): New. + * select-msw.c (Vhandle_alist): New list. + * select-msw.c (mswindows_own_selection): + + * select-x.c (x_own_selection): + * select-x.c (x_selection_exists_p): + * select-x.c: Added some comments about maybe using new + functionality. + * select-x.c (x_own_selection): + + * specifier.c: Remove definition of Qappend (now in general.c) + * specifier.c (syms_of_specifier): Remove Qappend. + +2000-07-12 Martin Buchholz + + * config.h.in: Add socklen_t. + + * s/decosf4-0.h: No special compiler flags needed or desired. + In particular, undefine _BSD for DEC OSF 4.0. + +2000-07-07 Kirill 'Big K' Katsnelson + + * redisplay-msw.c (msprinter_frame_output_end): Added. + (console_type_create_redisplay_mswindows): Referred the above. + + * frame.c (setup_frame_without_minibuffer): Do not create a + default minibuffer frame on a printer device. + + * frame-msw.c (apply_dc_geometry): Added. + (msprinter_start_page): + (msprinter_init_frame_3): + (msprinter_eject_page): Use it. + + * console-msw.h (struct msprinter_frame): Added pix_left and top, + and removed residual duplex and orientation properties. + +2000-07-11 Martin Buchholz + + * eval.c (function_argcount): Work around a DEC CC compiler bug. + + * unexalpha.c: Remove system prototypes from C sources! + +2000-07-09 Adrian Aichner + + * eval.c: Remove references to M-x edit-options in DEFUNs for + `defvar' and `defconst'. + +2000-07-09 Martin Buchholz + + * config.h.in: Remove SMART_INCLUDE hackery. + + PostgreSQL hacking: + * config.h.in: Don't use SMART_INCLUDE. + + * postgresql.h: Include libpq-fe.h here. Fix typo. + * inline.c: Simply #include "postgresql.h" + * postgresql.c: + - Don't use SMART_INCLUDE + - Use simply "const". + - Use standard doc string conventions. + - Use correct type for result of PQstatus. + +2000-07-09 Martin Buchholz + + * glyphs-x.c (x_xface_instantiate): Fix C++ compilation warnings. + + C++ compilation changes. + * config.h.in (EXTERN_C): Define. + * config.h.in (not): This is also a C++ keyword. + * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Enable C++ compilation. + * cm.c: Use EXTERN_C. + * redisplay-tty.c: Use EXTERN_C. + * sysdep.c: Use EXTERN_C. Remove Gould support. + +2000-07-09 Martin Buchholz + + * general.c: Remove duplicate definition for Qfunction. + +2000-07-08 Ben Wing + + * device-msw.c (msprinter_init_device): + * device-msw.c (sync_printer_with_devmode): + * device-msw.c (handle_devmode_changes): + * device-msw.c (print_dialog_worker): + * device-msw.c (Fmsprinter_apply_settings): + * device-msw.c (hash_devmode): + * device-msw.c (Fmsprinter_settings_despecialize): + use Qmswindows_tstr, not Qctext. + + * vm-limit.c (check_memory_limits): + avoid infinite loop printing warning messages. + +2000-07-05 Craig Lanning + + * Makefile.in.in: Add support for including the Windows resources + when building with the cygwin and mingw targets. + + * buffer.c: from Dan Holmsand, on Windows $PWD is most likely either + not set or not correct. + (directory_is_current_directory): Don't compile for WIN32_NATIVE. + (init_initial_directory): Don't try to use $PWD on the + WIN32_NATIVE target. + + * s\cygwin32.h: + [[Add -mwindows to eliminate console window.]] not required --ben + (HAVE_NATIVE_SOUND): removed; now handled by configure. + (MAIL_USE_POP): removed; now handled by configure. + + * s\mingw32.h: [[Add -mwindows to eliminate console window.]] not in + C_SWITCH_SYSTEM or it will affect lib-src progs. --ben + (HAVE_NATIVE_SOUND): removed; now handled by configure. + (MAIL_USE_POP): removed; now handled by configure. + (ENCAPSULATE_STAT): from Dan Holmsand, added. + (ENCAPSULATE_FSTAT): from Dan Holmsand, added. + (DIRECTORY_SEP): from Dan Holmsand, use lisp variable instead of + constant string. + (HAVE_TIMEVAL): from Dan Holmsand, added; struct timeval is picked + up from via systime.h. + (HAVE_GETPAGESIZE): from Dan Holmsand, added. + (getpagesize): from Dan Holmsand, added. + Added #endif which was left dangling by Ben's mega patch; added + comment to help prevent this in the future. + + * sysdll.c: added #include for WIN32_NATIVE case. + +2000-07-05 Kirill 'Big K' Katsnelson + + * console-msw.h (struct mswindows_device): Removed unnecessary + cached device geometry values. + Added update_tick and an accessor macro. + (Lisp_Devmode): Added lrecord declaration. + (struct msprinter_device): Contain devmode as a Lisp object. + Added mswindows_get_selected_frame_hwnd(); + + * console.h (struct console_methods): Indentation nitpicking. + + * device-msw.c (mswindows_init_device): Do not initialize geometry + cache. Initialize update tick. + (mswindows_device_system_metrics): Ask the device for its geometry. + (global_free_2_maybe): + (devmode_to_hglobal): + (handle_printer_changes): + (ensure_not_printing): + (print_dialog_worker): + (Fmsprinter_print_setup_dialog): + (Fmsprinter_print_dialog): + (plist_get_margin): + (plist_set_margin): + (Fmsprinter_page_setup_dialog): Added functions. + (sync_printer_with_devmode): + (handle_devmode_changes): + (Fmsprinter_get_settings): + (Fmsprinter_select_settings): + (Fmsprinter_apply_settings): + (allocate_devmode): + (Fmsprinter_settings_copy): + (Fmsprinter_settings_despecialize): + (print_devmode): + (finalize_devmode): + (equal_devmode): + (hash_devmode): Added functions + (syms_of_device_mswindows): Init devmode lrecord class. + + * device.h: Added an exfun for find-device. + + * event-msw.c (mswindows_wnd_proc): Do not update the cached + geometry; although, recreate the device compatible DC. + + * frame-msw.c (mswindows_get_selected_frame_hwnd): Added. + (msprinter_init_frame_3): + (msprinter_frame_property): + (msprinter_internal_frame_property_p): + (msprinter_frame_properties): + (msprinter_set_frame_properties): Removed 'orientation and 'duplex + print job properties (will move to device settings). + + * lisp.h: Added symbols. + + * general.c (syms_of_general): Declared them. + + * hash.c (string_hash): Added. + + * lrecord.h (lrecord_type): Added devmode lrecord type. + +2000-07-02 Mike Sperber + + * s/freebsd.h (INTERRUPTIBLE_OPEN): open *is* interruptible on + FreeBSD 4.0. + +2000-06-07 MORIOKA Tomohiko + + * doprnt.c (emacs_doprnt_1): Fix problem with %0XXd for a negative + integer. + +2000-06-07 MORIOKA Tomohiko + + * data.c (Fstring_to_number): Don't recognize floating point if + base is not 10. + +2000-06-22 Martin Buchholz + + * glyphs-widget.c (tab_control_query_geometry): + (widget_query_geometry): + (button_query_geometry): + * glyphs.c (text_query_geometry): + Enforce type correctness. + +2000-06-18 Martin Buchholz + + * s/decosf4-0.h (_etext): Use portable _etext instead of etext. + * s/decosf4-0.h (_edata): Use portable _edata instead of edata. + +2000-06-17 Martin Buchholz + + * s/decosf4-0.h: Never #include "/usr/include/FOO.h" because this + conflicts with gcc's fixincluded version of FOO.h. + + * glyphs.h (image_instance_geometry): Remove trailing `,' + +2000-06-08 Mike Alexander + + (MAX_SHOVE_BUFFER_SIZE): Change to 512 to match stream buffer size + (shove_thread): Don't write the same output twice + (make_ntpipe_output_stream): Increase priority of shove thread + (ntpipe_shove_writer): Call SwitchToThread to give shove thread a + chance to run + (ntpipe_shove_closer): Don't delete the pipe until we're done with + it. + +2000-06-12 Ben Wing + + * s\mingw32.h (sigset): + * s\windowsnt.h (sigset): + rename msw_ to mswindows_ for consistency with general convention. + +2000-06-12 Ben Wing + + * console-msw.c: + * console-msw.c (mswindows_get_console_hwnd): + * console-msw.c (mswindows_ensure_console_allocated): + * console-msw.c (mswindows_hide_console): + * console-msw.c (mswindows_show_console): + * console-msw.c (mswindows_ensure_console_buffered): + * console-msw.c (mswindows_output_console_string): + * console-msw.c (mswindows_windows9x_p): + * console-msw.h: + * device-msw.c (mswindows_get_workspace_coords): + * device-msw.c (mswindows_device_system_metrics): + * dialog-msw.c (mswindows_popup_dialog_box): + * event-msw.c (mswindows_wnd_proc): + * frame-msw.c (mswindows_size_frame_internal): + * menubar-msw.c (mswindows_translate_menu_or_dialog_item): + * menubar-msw.c (displayable_menu_item): + * menubar-msw.c (mswindows_char_is_accelerator): + * nt.c: + * nt.c (mswindows_sigset): + * nt.c (mswindows_sigrelse): + * nt.c (mswindows_sigpause): + * nt.c (mswindows_raise): + * nt.c (timer_proc): + * ntproc.c: + * ntproc.c (find_child_console): + * ntproc.c (sys_kill): + * print.c: + * print.c (std_handle_out_external): + * process-nt.c (find_child_console): + * process-nt.c (send_signal_the_95_way): + * process-nt.c (ensure_console_window_exists): + * process-nt.c (nt_create_process): + * syssignal.h: + rename msw_ to mswindows_ for consistency with general convention. + + * emacs.c: + * dumper.c: + include nt.h, not syswindows.h. + + * nt.c (mswindows_fstat): + * nt.c (mswindows_stat): + prefix mswindows_ instead of attempting to directly override the + library functions. fix declarations. + + * nt.h: + include syswindows.h. move some sysdep.h stuff here. + + * ntheap.h: + include syswindows.h, not . + + * ntplay.c: + clean up headers. + + * sysdep.c: + clean up headers. + + * sysdep.c (sys_fstat): + * sysdep.c (sys_stat): + call mswindows versions when appropriate. + + * sysdep.h: + move mswin decls to nt.h. + + * syswindows.h: + add long comment describing appropriate use of the various windows + headers. + +2000-06-11 Ben Wing + + * device-x.c: Correct doc string for sixth arg of x-get-resource. + +2000-06-10 Ben Wing + + * Makefile.in.in (release): + Correction to make sure xemacs.exe always dumped when correct. + + * alloca.c: + * balloon_help.c: + [[[[3]]]]: Conditionalize on actual problem, not WINDOWSNT. + + * buffer.c (set_buffer_internal): + [[[[2]]]]: Remove HAVE_FEP code. + + * buffer.c (init_initial_directory): + [3]. + + * bytecode.c: + [[[[4]]]]: limits.h standardly included in lisp.h; remove from + individual files. + + * callproc.c: + * callproc.c (call_process_cleanup): + * callproc.c (Fold_call_process_internal): + * callproc.c (child_setup): + * callproc.c (getenv_internal): + * callproc.c (init_callproc): + * callproc.c (vars_of_callproc): + [[[[1]]]]: WINDOWSNT -> WIN32_NATIVE. + __CYGWIN32__ -> CYGWIN. + DOS_NT -> WIN32_NATIVE. + Remove MSDOS support/references, converting to WIN32_NATIVE + where correct. + __MINGW32__ -> MINGW. + Fix windows.h includes. + Remove bogus HAVE_NTGUI. + + * config.h.in: + [2]. + + * console-msw.c: + mswindows_message_outputted added for use in allowing startup + errors on the console to be seen. + + * console-msw.c (msw_ensure_console_allocated): + * console-msw.c (msw_output_console_string): + * console-msw.c (DHEADER): + * console-msw.c (DOPAQUE_DATA): + * console-msw.c (DEVENT): + * console-msw.c (DCONS): + * console-msw.c (DCONSCDR): + * console-msw.c (DSTRING): + * console-msw.c (DVECTOR): + * console-msw.c (DSYMBOL): + * console-msw.c (DSYMNAME): + Fix warnings. + + * console-stream.c (stream_init_console): + Fix text/binary problems. + + * device-msw.c: + * device-msw.c (mswindows_finish_init_device): + * device-msw.c (mswindows_delete_device): + [1]. + + * device.c (handle_asynch_device_change): + [3]. + + * dgif_lib.c: + * dgif_lib.c (DGifOpenFileName): + * dgif_lib.c (DGifOpenFileHandle): + * dgif_lib.c (DGifGetLine): + * dgif_lib.c (DGifGetPixel): + Added config.h/lisp.h, fix up includes. + [1]. + + * dired-msw.c: + [4]. + + * dired.c: + * dired.c (file_name_completion): + * dired.c (Ffile_attributes): + * dired.c (syms_of_dired): + [1]. + + * dumper.c: + * dumper.c (pdump_file_unmap): + * dumper.c (pdump_load): + [1]. + + * editfns.c: + * editfns.c (Ftemp_directory): + * editfns.c (user_login_name): + * editfns.c (Fuser_real_login_name): + * editfns.c (get_home_directory): + [1]. + + * elhash.c (finish_marking_weak_hash_tables): + [[[[5]]]]: Fix GCC warnings. + + * emacs.c: + * emacs.c (mswindows_handle_hardware_exceptions): + * emacs.c (make_arg_list_1): + * emacs.c (main_1): + * emacs.c (Fkill_emacs): + * emacs.c (Fdump_emacs): + [1]. + Fix problems with nested crashes, add long comment. + + * event-Xt.c (init_event_Xt_late): + [1]. + + * event-msw.c: + * event-msw.c (mswindows_dde_callback): + * event-msw.c (mswindows_handle_sticky_modifiers): + * event-msw.c (mswindows_wnd_proc): + [1]. + [5]. + + * events.c (character_to_event): + [1]. + + * fileio.c: + * fileio.c (Ffile_name_directory): + * fileio.c (Ffile_name_nondirectory): + * fileio.c (directory_file_name): + * fileio.c (Fexpand_file_name): + * fileio.c (Fsubstitute_in_file_name): + * fileio.c (Ffile_name_absolute_p): + * fileio.c (check_executable): + * fileio.c (Ffile_readable_p): + * fileio.c (Ffile_accessible_directory_p): + * fileio.c (Ffile_modes): + * fileio.c (Funix_sync): + * fileio.c (vars_of_fileio): + [1]. [4]. + + [[[[7]]]]: Move CORRECT_DIR_SEPS to s\windowsnt.h. + + Expand getdefdir defn. + Fix bogus rename() comment. + + [[[[6]]]]: Fix Windows includes w.r.t. removed nt\inc. Attempt + to use standard XEmacs include files, e.g. sysfile.h, rather + than system-specific includes. + + * fns.c: + * fns.c (Fsubseq): + [5]. [6]. + + * frame.c (vars_of_frame): + [1]. + + * getloadavg.c: + * getloadavg.c (getloadavg): + [1]. [6]. + #ifdef XEMACS not defined on Cygwin. Remove this; no need for it. + (We don't use it elsewhere in the code; just add a comment.) + + * gif_io.c: + [6]. + Add config.h. + + * glyphs-msw.c: + * glyphs-msw.c (mswindows_resource_instantiate): + [1]. + + * glyphs-x.c (x_native_layout_instantiate): + [5]. + + * gui-msw.c (Fmswindows_shell_execute): + [1]. + + * insdel.c: + [4]. + + * lisp.h: + [4]. [5]. + + * lread.c (locate_file_in_directory_mapper): + [1]. + + * lstream.c: + [4]. + + * mem-limits.h: + * mem-limits.h (get_lim_data): + [1]. + + * menubar-msw.c: + [4]. + + * ndir.h: + [1]. + + * nt.c: + * nt.c (getwd): + * nt.c (closedir): + * nt.c (rva_to_section): + * nt.c (mswindows_executable_type): + [1]. [6]. + Fix closedir() defn. + + * nt.h: + [[[[8]]]]: *_OK defs moved to sysfile.h. + + * ntproc.c: + [6]. [7]. + + * objects-x.c: + [4]. + + * print.c: + * print.c (std_handle_out_external): + [1]. [4]. + + * process-nt.c: + * process-nt.c (nt_create_process): + [6]. + try to fix process quoting somewhat. + + * process-unix.c (unix_create_process): + [1]. + + * process.c: + * process.c (vars_of_process): + Add Vnull_device. + + * process.h: + [1]. + + * realpath.c: + * realpath.c (xrealpath): + [1]. + + * redisplay-tty.c (init_tty_for_redisplay): + [3]. + + * redisplay.c: + [4]. [6]. + + * scrollbar-msw.c: + [4]. + + * sheap.c: + * sheap.c (more_static_core): + * sheap.c (report_sheap_usage): + [5]. [6]. + + * signal.c: + * signal.c (alarm_signal): + [1]. [6]. + + * sound.c: + [6]. + + * strftime.c: + * strftime.c (zone_name): + [1]. [5]. + + * symsinit.h (init_sunpro): + [1]. + + * syscommctrl.h: + commctrl.h not in Cygwin b20.1. + + * sysdep.c: + * sysdep.c (endif): + * sysdep.c (sys_subshell): + * sysdep.c (init_baud_rate): + * sysdep.c (emacs_get_tty): + * sysdep.c (emacs_set_tty): + * sysdep.c (tty_init_sys_modes_on_device): + * sysdep.c (init_system_name): + * sysdep.c (sys_open): + * sysdep.c (interruptible_open): + * sysdep.c (sys_fopen): + * sysdep.c (sys_mkdir): + * sysdep.c (sys_rename): + * sysdep.c (get_process_times_1): + [1]. [6]. + + * sysdep.h: + [1]. + + * sysdir.h: + * sysdir.h (DIRENTRY_NONEMPTY): + [1]. [6]. + + * sysdll.c (dll_init): + * sysdll.h: + [1]. + + * sysfile.h: + [1]. [6]. [8]. + added text/binary defs. + + * sysfloat.h: + [1]. + + * sysproc.h: + * sysproc.h (EDESTADDRREQ): + * sysproc.h (poll_fds_for_input): + [1]. [6]. + + * syspwd.h: + [6]. + + * syssignal.h: + [1]. + + * systime.h: + [1]. [6]. + + * systty.h: + [1]. + + * syswindows.h: + [1]. + Always define WIN32_LEAN_AND_MEAN. + + * unexcw.c (unexec): + [5]. + + * unexec.c: + * unexec.c (copy_text_and_data): + * unexec.c (adjust_lnnoptrs): + [1]. + + * unexnt.c: + * unexnt.c (_start): + [1]. + +2000-06-07 Ben Wing + + * mule-mcpath.c, mule-mcpath.h: Removed. Old, crufty code that + was used only as a model. We've long since extracted any useful + logic or code out of this. (I just did an exhaustive search.) + + * s\msdos.h: Removed. + + * s\windows95.h: Removed. + +2000-06-10 Ben Wing + + * s\cygwin32.h: + [1]. [5]. + Don't use extern with fun defs. + + * s\mingw32.h: + [1]. [7]. + Remove nt\inc include. + Remove getdisk, getdefdir. (The former is unused, the latter + expanded in fileio.h.) + + * s\windowsnt.h: + * s\windowsnt.h (WIN32_NATIVE): + * s\windowsnt.h (HAVE_STRCASECMP): + [1]. [7]. + Add long comment about preprocessor changes. + Remove getdisk, getdefdir. (The former is unused, the latter + expanded in fileio.h.) + +2000-06-10 Ben Wing + + * m\arm.h: + * m\delta.h: + * m\intel386.h: + * m\sequent.h: + * m\template.h: + * m\windowsnt.h: + [1]. + Remove bogus/unused NO_SOCK_SIGIO. + +2000-06-08 Hrvoje Niksic + + * lisp.h (set_string_char): Call set_string_byte with a Bufbyte, + not an Emchar. + +2000-06-04 Mike Sperber + + * casetab.c (set_case_table): For `set-standard-case-table', + actually deposit the new case tables where the rest of XEmacs can + see them. + +2000-06-05 Yoshiki Hayashi + + * data.c (Faset): Don't cast XCHAR() to unsigned char. + +2000-06-05 Ben Wing + + * callproc.c (child_setup): Don't do close_load_descs() under + MS Windows. Put in a comment explaining why. + +2000-05-28 Adrian Aichner + + * process-nt.c: Reverting patch "Fixing nt_create_process for MKS + Toolkit shell" which breaks `kill-compilation' on Windows NT + native, retaining STDERR handling improvements. + +2000-06-01 Andreas Jaeger + + * s/s390.h: Support for S390, based on a patch by Martin + Schwidefsky . + +2000-05-30 Andy Piper + + * window.c (allocate_window): + (make_dummy_parent): + (Fset_window_configuration): use new hashtable type. + + * glyphs.h (IMAGE_UNSPECIFIED_GEOMETRY): + (struct image_instantiator_methods): + (struct Lisp_Image_Instance): make instance geometry signed. + + * glyphs.c (instantiate_image_instantiator): + (image_instance_query_geometry): + (image_instance_layout): + (image_instance_layout): + (query_string_geometry): + (text_query_geometry): + (image_instantiate): + (image_instantiate): + (cache_subwindow_instance_in_frame_maybe): + (subwindow_query_geometry): make instance geometry signed. + + * glyphs-widget.c (widget_query_geometry): + (widget_layout): + (button_query_geometry): + (tree_view_query_geometry): + (tab_control_query_geometry): + (layout_query_geometry): + (layout_layout): + (native_layout_layout): make instance geometry signed. + +2000-05-29 Olivier Galibert + + * lisp.h: Add Qfull_assoc symbol and WEAK_LIST_FULL_ASSOC + constant. + + * general.c (syms_of_general): Add Qfull_assoc symbol. + + * data.c (finish_marking_weak_lists): Mark full-assoc lists + correctly. + (decode_weak_list_type): Decode full-assoc type. + (encode_weak_list_type): Encode full-assoc type. + (Fmake_weak_list): Update doc string. + +2000-05-30 Andy Piper + + * elhash.h (hash_table_weakness): new KEY_VALUE weak hashtable. + + * elhash.c (print_hash_table): new KEY_VALUE weak hashtable. + (decode_hash_table_weakness): ditto. + (Fhash_table_weakness): ditto. + (Fhash_table_type): ditto. + (finish_marking_weak_hash_tables): ditto. + (hash_table_weakness_validate): ditto. + (syms_of_elhash): ditto. + +2000-05-28 Martin Buchholz + + * XEmacs 21.2.34 is released. + +2000-05-22 Jan Vroonhof + + * redisplay.c (VERTICAL_CLIP): No longer reset when updating line + start cache. + (updating_line_start_cache): Gone. + (regenerate_window): Replace resetting of VERTICAL_CLIP by + generic code to force a minimum of 1 line laid out in the + CMOTION_DISP case. + +2000-05-22 Jan Vroonhof + + * glyphs.c (instantiate_image_instantiator): Check for initialized + height & width no longer special cases IMAGE_NOTHING. + (nothing_instantiate): Set height and width of instance. + +2000-05-24 Yoshiki Hayashi + + * unexelf.c (unexec): Search for ".data" section. + Initialize new_data2_offset from old_data_index. + Remove redundant check for ElfW. + +2000-05-23 Andy Piper + + * glyphs.c (get_image_instantiator_governing_domain): allow more + specific domains as the governing domain rather than expecting an + exact match. This fixes problems with layouts. + +2000-05-22 Andy Piper + + * redisplay-output.c (compare_runes): check for non-images + + * glyphs.c (set_glyph_dirty_p): ditto. + (update_glyph_cachel_data): ditto. + + * glyphs-widget.c (layout_post_instantiate): ditto. + (layout_post_instantiate): ditto. + + * event-msw.c (mswindows_wnd_proc): warning removal. + +2000-05-12 Craig Lanning + + * s\mingw32.h: Added #undef for CLASH_DETECTION. + + * syswindows.h: Moved PBS_SMOOTH definition to syscommctrl.h. + + * syscommctrl.h (PBS_SMOOTH): Moved from syswindows.h. + + * nt.c (rva_to_section): mingw32 needs rva_to_section. + (mswindows_executable_type): mingw32 now has enough headers for + this to work. + +2000-05-20 Andy Piper + + * console-msw.c (mswindows_output_last_error): ; -> , + +2000-05-12 Andy Piper + + * console-msw.c (FROB): compare ints with ints. + +2000-05-11 Andy Piper + + * glyphs-x.c (x_finalize_image_instance): make minimal build + happy. + +2000-05-20 Ben Wing + + * event-Xt.c: + * event-Xt.c (vars_of_event_Xt): + move modifier-keys-are-sticky to event-stream.c. + + * event-msw.c: + * event-msw.c (mswindows_enqueue_mouse_button_event): + * event-msw.c (key_needs_default_processing_p): + * event-msw.c (XEMSW_LCONTROL): + * event-msw.c (mswindows_handle_sticky_modifiers): + * event-msw.c (FROB): + * event-msw.c (clear_sticky_modifiers): + * event-msw.c (output_modifier_keyboard_state): + * event-msw.c (output_alt_keyboard_state): + * event-msw.c (mswindows_wnd_proc): + * event-msw.c (mswindows_modifier_state): + * event-msw.c (emacs_mswindows_handle_magic_event): + implement sticky modifiers. + + * event-stream.c: + * event-stream.c (vars_of_event_stream): + move modifier-keys-are-sticky here. + + * lisp.h: + add CHECK_FUNCTION. + + * rangetab.c: + implement map-range-table. + + +2000-05-17 Yoshiki Hayashi + + * redisplay-tty.c (reset_tty_modes): + (tty_redisplay_shutdown): Adjust argument type to + tty_frame_output_end. + +2000-05-11 Yoshiki Hayashi + + * eval.c (Fbacktrace): Don't output a line with only right + parenthesis. + +2000-05-17 Kenji Itoh + + * postgresql.c (Fpq_connect_poll): Replace `PS' with `polling_status'. + (Fpq_reset_poll): Ditto. + +2000-05-16 Katsumi Yamaoka + + * redisplay-tty.c: Replace tty_output_end with tty_frame_output_end. + +2000-05-16 Ben Wing + + * buffer.c: + * buffer.c (dfc_convert_to/from_internal_format): + * buffer.c (reinit_vars_of_buffer): + Fix conversion functions to allow reentrancy. + + * console-msw.c: + * console-msw.c (mswindows_output_last_error): + New fun, generally useful -- output a human-readable + version of GetLastError() on the console. + + * console-msw.h: + * console-msw.h (struct mswindows_frame): + Changes for DeferWindowPos. Declare mswindows_output_last_error(). + + * console-stream.c (stream_output_begin): + * console-stream.c (stream_output_end): + * console-stream.c (stream_output_vertical_divider): + * console-stream.c (stream_clear_region): + * console-stream.c (stream_flash): + * console-stream.c (console_type_create_stream): + Delete blank stream methods, not needed. + + * console.h (struct console_methods): + Split begin/end methods into window and frame. + + * event-msw.c: + * event-msw.c (mswindows_handle_paint): + * event-msw.c (output_alt_keyboard_state): + * event-msw.c (mswindows_wnd_proc): + * event-msw.c (vars_of_event_mswindows): + Comment about problems with ignored-expose. + Define mswindows-debug-events; not really implemented. + + * frame-msw.c (mswindows_init_frame_1): + random cleanups. + + * glyphs-msw.c: + * glyphs-msw.c (begin_defer_window_pos): + * glyphs-msw.c (mswindows_unmap_subwindow): + * glyphs-msw.c (mswindows_map_subwindow): + * glyphs-msw.c (mswindows_resize_subwindow): + Use DeferWindowPos to reduce flashing when mapping/unmapping. + + * glyphs.c (make_image_instance_1): + Fix crash. + + * gutter.c (Fredisplay_gutter_area): + Use new begin/end methods. + + * lisp.h (Dynarr_new2): + New creation fun. + + * redisplay-msw.c: + * redisplay-msw.c (mswindows_frame_output_begin): + * redisplay-msw.c (mswindows_frame_output_end): + * redisplay-msw.c (console_type_create_redisplay_mswindows): + New begin/end methods -- handle DeferWindowPos. + + * redisplay-output.c (redisplay_move_cursor): + * redisplay-output.c (redraw_cursor_in_window): + * redisplay-output.c (redisplay_update_line): + * redisplay-output.c (redisplay_output_window): + New begin/end methods. + + * redisplay-tty.c: + * redisplay-tty.c (tty_frame_output_begin): + * redisplay-tty.c (tty_frame_output_end): + * redisplay-tty.c (console_type_create_redisplay_tty): + New begin/end methods. + + * redisplay-x.c: + * redisplay-x.c (x_window_output_begin): + * redisplay-x.c (x_window_output_end): + * redisplay-x.c (console_type_create_redisplay_x): + New begin/end methods. + + * redisplay.c (redisplay_frame): + * redisplay.c (Fredisplay_echo_area): + New begin/end methods. + use MAYBE_DEVMETH for clear_frame; it may not exist. + + * window.h (WINDOW_XFRAME): + WINDOW_XFOO macros -- get locale and decode struct pointer. + + +2000-05-12 Ben Wing + + * emacs.c: + * emacs.c (ensure_no_quitting_from_now_on): + * emacs.c (fatal_error_signal): + * emacs.c (mswindows_handle_hardware_exceptions): + * emacs.c (main): + * emacs.c (Fkill_emacs): + * emacs.c (shut_down_emacs): + * emacs.c (assert_failed): + various improvements in fatal error handling. + + * eval.c: + move preparing_for_armageddon to emacs.c. + + * lisp.h: + declare fatal_error_in_progress. + + * print.c: + * print.c (std_handle_out_external): + * print.c (std_handle_out_va): + * print.c (stderr_out): + * print.c (stdout_out): + use console under mswin when no standard output. + don't do code conversion during fatal error. + + * scrollbar.c (Fscrollbar_page_up): + * scrollbar.c (Fscrollbar_page_down): + fix missing else. reindent. + +2000-05-11 Jan Vroonhof + + Emergency fix. + + * glyphs.h (GLYPH_CACHEL_DESCENT): + (GLYPH_CACHEL_DESCENT): + (GLYPH_CACHEL_DESCENT): + * glyphs.h (GLYPH_CACHEL_ASCENT): Match parameters to variables + used in case these are inline functions. + Use more absurd values to error check. + + include window.h for error check functions. + +2000-05-11 Ben Wing + + * cmdloop.c (Freally_early_error_handler): + Display message box under windows; otherwise, message will disappear + before it can be viewed. + + * console-msw.c: + * console-msw.c (Fmswindows_message_box): + * console-msw.c (FROB): + * console-msw.c (syms_of_console_mswindows): + Define new fun `mswindows-message-box'. + #### I will merge this into `popup-dialog-box'; just give me + a bit of time. + + * general.c: + * general.c (syms_of_general): + Some new symbols used in `mswindows-message-box'. + + * glyphs.c: + * glyphs.c (Fset_image_instance_property): + put warning in this fun. + + * glyphs.h: + * glyphs.h (GLYPH_CACHEL_WIDTH): + * glyphs.h (GLYPH_CACHEL_ASCENT): + * glyphs.h (GLYPH_CACHEL): + * glyphs.h (GLYPH_CACHEL_GLYPH): + define error-checking versions to try to catch a bug i've seen -- + redisplay gets in an infinite loop because the glyph width of the + continuation glyph is 65535. + + * lisp.h: + Extern message-box stuff. + + * window.c (allocate_window): + * window.c (make_dummy_parent): + * window.c (Fset_window_configuration): + Use EQUAL not EQ for subwindow caches to make them work a bit + better. (Something is still very broken.) + + +2000-05-11 Yoshiki Hayashi + + * glyphs.c (image_instantiate): Suppress gcc warnings. + (Fmake_image_instance): Fix doc string. + * specifier.c (Fmake_specifier): Ditto. + +2000-05-02 Yoshiki Hayashi + + * paths.h.in (PATH_LOCK): Removed. + * config.h.in (LOCKDIR_USER_DEFINED): Removed. + * emacs.c (complex_vars_of_emacs): Remove configure-lock-directory. + +2000-05-08 Yoshiki Hayashi + + * fns.c (Ffeaturep): Update e-mail address in doc-string. + Document (featurep '(and xemacs 21.02)). + +2000-05-09 Ben Wing + + * buffer.c (complex_vars_of_buffer): + update modeline-format doc. + + * device.h: + comment about how DFW_DEVICE should be merged with DOMAIN_DEVICE. + + * emacs.c: + timeline of all released versions of Emacs, for use in creating + authorship comments and in synching up. + + * glyphs-widget.c (image_instantiator_buttons): + * glyphs-widget.c (image_instantiator_edit_fields): + * glyphs-widget.c (image_instantiator_combo_box): + * glyphs-widget.c (image_instantiator_scrollbar): + * glyphs-widget.c (image_instantiator_progress_guage): + * glyphs-widget.c (image_instantiator_tree_view): + * glyphs-widget.c (image_instantiator_tab_control): + * glyphs-widget.c (image_instantiator_labels): + * glyphs-widget.c (image_instantiator_layout): + * glyphs-widget.c (image_instantiator_native_layout): + rename decode_domain method to governing_domain. + + * glyphs.c: + * glyphs.c (Fvalid_image_instantiator_format_p): doc update. + * glyphs.c (add_entry_to_device_ii_format_list): + make sure we don't put an entry more than once into the list. + * glyphs.c (check_instance_cache_mapper): + ************************************************************* + allow for nil. THIS SHOULD FIX A REAL CRASH THAT MANY PEOPLE + HAVE BEEN GETTING. + ************************************************************* + * glyphs.c (get_image_instantiator_governing_domain): + clean up, expand on new concept of governing domain. + * glyphs.c (instantiate_image_instantiator): + * glyphs.c (allocate_image_instance): + use governing_domain instead of cache_domain in naming. + * glyphs.c (Fvalid_image_instance_type_p): fix docs. + * glyphs.c (make_image_instance_1): + * glyphs.c (Fmake_image_instance): + allow for any domain (not just device), and process the + governing domain correctly. very big doc fix. + * glyphs.c (Fimage_instance_domain): + new primitive, to retrieve the governing domain of an image instance. + * glyphs.c (image_instantiate): + use new governing_domain stuff. this fixes a crash you could get + by instantiating certain widget glyphs in frame locales. (should + signal an error instead of crashing.) + * glyphs.c (Fimage_specifier_p): move doc to make-image-specifier. + * glyphs.c (Fglyphp): clean up doc. + * glyphs.c (subwindow_governing_domain): renamed from *_decode_domain. + * glyphs.c (syms_of_glyphs): + declare Fimage_instance_domain, remove unused Qlayout_image_instance_p. + * glyphs.c (image_instantiator_format_create): add some comments about + bogus code. + * glyphs.c (specifier_vars_of_glyphs): totally rewrite the doc string + for current-display-table. (Apparently Hrjove implemented in 1998 a + design I wrote up in 1996, but didn't update the doc string.) + + * glyphs.h: clean up a doc string. + * glyphs.h (governing_domain): + * glyphs.h (struct image_instantiator_methods): + changes for governing_domain stuff. + + * gutter.c: + * gutter.c (Fgutter_specifier_p): + * gutter.c (Fgutter_size_specifier_p): + * gutter.c (Fgutter_visible_specifier_p): + * objects.c: + * objects.c (Fcolor_specifier_p): + * objects.c (Ffont_specifier_p): + * objects.c (Fface_boolean_specifier_p): + doc strings moved to make-*-specifier. + + * redisplay.c (add_disp_table_entry_runes_1): + * redisplay.c (generate_fstring_runes): + * redisplay.c (screen): + add random comments and doc strings. + + * specifier.c: + * specifier.c (Fmake_specifier): + major overhaul of this doc string. + + * specifier.c (Fvalid_specifier_domain_p): + comment about the bogosity of image instances being domains. + * specifier.c (decode_domain): + now non-static, used in glyphs.c. + * specifier.c (specifier_instance): + comment about the bogosity of image instances being domains. + * specifier.c (Fgeneric_specifier_p): + move doc string to make-generic-specifier. + * specifier.c (VALID_SINGLE_DISPTABLE_INSTANTIATOR_P): + rebackslashify. + + * specifier.h: + * specifier.h (DOMAIN_FRAME): + * specifier.h (DOMAIN_LIVE_P): + * specifier.h (DOMAIN_XDEVICE): + rebackslashify. + add comments about problems with these macros. + prototype for decode_domain. + + * toolbar.c: + * toolbar.c (Ftoolbar_specifier_p): + move doc string to `make-toolbar-specifier'. + + * window.c (window_unmap_subwindows_cache_mapper): + ************************************************************* + allow for nil. THIS SHOULD FIX A REAL CRASH THAT MANY PEOPLE + HAVE BEEN GETTING. + ************************************************************* + +2000-05-09 Andy Piper + + * glyphs.h: declare reset_frame_subwindow_instance_cache. + + * window.c (Fset_window_configuration): reset the frame subwindow + cache and re-initialize the window subwindow caches. + + * glyphs.c (reset_frame_subwindow_instance_cache): new function. + +2000-05-09 Ben Wing + + * ntheap.c (recreate_heap): Changed unknown (VC6 only?) SIZE_T to + DWORD. + +2000-04-26 Mike Woolley + + * ntheap.c: Changed recreate_heap to limit the amount reserved + for the heap to that which is actually available. Also now + displays a message box (with some dignostics) in the event that + it still can't start. + +2000-05-07 Jan Vroonhof + + * callproc.c (Fold_call_process_internal): GCPRO path + +2000-05-08 Jan Vroonhof + + Patch by Bill Perry. + + * scrollbar.c (Fscrollbar_page_up): Conditionalize on type of call + back data instead of #ifdef. + (Fscrollbar_page_down): ditto. + +2000-05-07 Ben Wing + + * buffer.h: + Kludge for defining Qmswindows_tstr. + + * nt.c: + * nt.c (open_input_file): + * nt.c (open_output_file): + * nt.c (rva_to_section): + * nt.c (mswindows_executable_type): + Move all memory-mapped-file routines here (some were in unexnt.c, + which is bad because they are used by process-nt.c, and unexnt + won't be around when portable dumping). Synched the above routines + with FSF 20.6. + + * nt.h: + Removed ifdef'd out bogus code. + Fixed some prototypes. + + * nt.h (file_data): + * nt.h (OFFSET_TO_RVA): + * nt.h (RVA_TO_OFFSET): + * nt.h (RVA_TO_PTR): + Moved the memory-mapped-file structures, macros and prototypes + here, to parallel nt.c. ntheap.h should really be removed + entirely, and it's a non-portable-dumper specific file. + + * ntheap.h (round_to_next): + Moved the memory-mapped-file structures, macros and prototypes + to nt.h. + + * ntproc.c (compare_env): + Moved rva_to_section and mswindows_executable_type to nt.c. + Moved compare_env to process-nt.c. + ntproc.c will die, one day. + + * ntproc.c (sys_spawnve): + Account for win32_ -> mswindows_. + + * process-nt.c: + * process-nt.c (struct nt_process_data): + * process-nt.c (ensure_console_window_exists): + * process-nt.c (compare_env): + * process-nt.c (nt_create_process): + * process-nt.c (nt_kill_process_by_pid): + * process-nt.c (syms_of_process_nt): + * process-nt.c (vars_of_process_nt): + Introduce variable `mswindows-quote-process-args', from FSF 20.6. + Copy argument quoting code from FSF 20.6 (with appropriate Mule-ization + changes). Eliminate our old `nt-quote-process-args' mechanism. + Synch up nt_create_process with FSF 20.6 sys_spawnve. + Move compare_env here from ntproc.c. + + * process.c (Fprocess_send_region): + Takes an optional fourth argument, BUFFER, which should fix some + problems with call-process. + + * syscommctrl.h: + Move ICC_BAR_CLASSES here from syswindows.h, to avoid a warning. + + * syswindows.h: + Move ICC_BAR_CLASSES to syscommctrl.h. + Add preliminary macros for MSWindows/Mule. More to come. + + * unexnt.c: + * unexnt.c (unexec): + open_output_file moved to nt.c. + + +2000-05-05 Andy Piper + + * window.c (window_unmap_subwindows_cache_mapper): remove the dead + instance from the frame cache also since GC may catch up too late + to make frame deletion sane. + +2000-05-04 Andy Piper + + * glyphs-x.c (x_widget_instantiate): gcpro widget callbacks. + (x_finalize_image_instance): ungcpro on deletion. + + * glyphs.c (image_instantiator_format_create): give pointers a + query geometry method so that the geometry is at least set. + + * glyphs-x.c (image_instantiator_format_create_glyphs_x): only + initialize layouts if using widgets. + +2000-05-03 Andy Piper + + * nt.c: remove bogus reference to sysmmsystem.h + + * gui-x.c (popup_selection_callback): fix no selection abort. + +2000-05-02 Andy Piper + + * glyphs-msw.c (mswindows_update_widget): cope with nil text. + (mswindows_widget_instantiate): ditto. + + * glyphs-widget.c (initialize_widget_image_instance): initialize + children correctly. + (widget_instantiate): cope with children and items in the same + instance. + + * glyphs.c (mark_image_instance): cope with children as a first + class member. + (image_instance_equal): ditto. + (image_instance_hash): ditto. + (image_instance_changed): ditto. + +2000-04-30 Andy Piper + + * glyphs.c (subwindow_query_geometry): new function. Return some + defaults. + (subwindow_instantiate): don't assign dimensions if none have been + given. + (image_instantiator_format_create): add subwindow_query_geometry. + (print_image_instance): cope with layouts as widgets. + +2000-04-29 Andy Piper + + * frame.c (delete_frame_internal): call + free_frame_subwindow_instance_cache so that all subwindows are + finalized before their parent. + (mark_frame): remove subwindow_cachels. + (Fmake_frame): remove subwindow_cachel manipulation. + (allocate_frame_core): subwindow_instance_cache is a weak list. + (delete_frame_internal): set subwindow_instance_cache to nil. + + * glyphs-msw.c (mswindows_finalize_image_instance): make double + finalization safe. + (mswindows_finalize_image_instance): use the device + not the domain as the domain may have died already. + + * glyphs-x.c (x_finalize_image_instance): ditto. + (x_subwindow_instantiate): remove SUBWINDOW_WIDTH & + HEIGHT. + + * redisplay-output.c (redisplay_unmap_subwindows): update for + subwindow instance cache as a weak list. + (redisplay_unmap_subwindows_maybe): ditto. + (redisplay_unmap_subwindows_except_us): ditto. + + * glyphs.c (unmap_subwindow): error checking will check the domain + so don't deal with it here. Don't use cachels anymore. + (map_subwindow): ditto. + (update_subwindow_cachel_data): remove old accessor names. + (subwindow_instantiate): remove SUBWINDOW_WIDTH & HEIGHT. + (Fresize_subwindow): don't update cachel. + (mark_subwindow_cachels): + (update_subwindow_cachel_data): + (add_subwindow_cachel): + (get_subwindow_cachel_index): + (update_subwindow_cachel): + (reset_subwindow_cachels): + (mark_subwindow_cachels_as_not_updated): deleted. + (cache_subwindow_instance_in_frame_maybe): new function. Add a + subwindow instance to the frame cache. + (find_matching_subwindow): update for subwindow instance cache as + a weak list. + (update_widget_instances): ditto. + (image_instance_type_to_mask):inlined. + (free_frame_subwindow_instance_cache): new function. finalize all + subwindows that are instantiated. + + * glyphs.h (struct Lisp_Image_Instance): add display_data instead + of cachel information. + (IMAGE_INSTANCE_DISPLAY_X): + (IMAGE_INSTANCE_DISPLAY_Y): + (IMAGE_INSTANCE_DISPLAY_WIDTH): + (IMAGE_INSTANCE_DISPLAY_HEIGHT): + (XIMAGE_INSTANCE_DISPLAY_X): + (XIMAGE_INSTANCE_DISPLAY_Y): + (XIMAGE_INSTANCE_DISPLAY_WIDTH): + (XIMAGE_INSTANCE_DISPLAY_HEIGHT): new accessors. + remove subwindow_cachel structure and function references. + (image_instance_type_to_mask): inline from glyphs.c + + * redisplay.c (redisplay_frame): remove subwindow_cachel + references. + + * frame.h (struct frame): remove subwindow_cachels. + (FRAME_SUBWINDOW_CACHE): access subwindow_instance_cache. + + * frameslots.h: add subwindow_instance_cache. + + * window.c (replace_window): check subwindow cache of replacement. + (window_unmap_subwindows_cache_mapper): + (window_unmap_subwindows): new functions. Unmap all subwindows + cached on this window. + (mark_window_as_deleted): unmap all subwindows. + +2000-04-27 Andy Piper + + * glyphs.h (IIFORMAT_METH_OR_GIVEN): cope with null meths. + + * glyphs-widget.c (widget_layout): return something. + (layout_layout): return something. Fail if not initialized. + (layout_query_geometry): ditto. + (image_instantiator_native_layout): new function. Initialized the + native layout type. + (widget_instantiate): don't do layout stuff here. + + * glyphs.c (instantiate_image_instantiator): reorded calling or + instantiate and post_instantiate with layout in between. + (image_instance_layout): be more selective about deciding whether + the layout has been done or not. + + * glyphs.h (struct image_instantiator_methods): return a value + from layout_method. + +2000-04-26 Andy Piper + + * glyphs.c (allocate_image_instance): make initial width and + height unspecified. Set initialized to 0. + + * syscommctrl.h new file. Encapsulates commctrl.h. + + * syswindows.h new file. Encapsulates windows.h. + + * ntplay.c: use new syswindows.h and syscommctrl.h header. + * nt.c: ditto. + * console-msw.h: ditto. + + * redisplay-tty.c (tty_output_display_block): remove layout references. + + * glyphs-msw.c (mswindows_widget_instantiate): use the domain + window handle rather than just the frame. + + * glyphs.c (mark_image_instance): remove layout references. + (print_image_instance): ditto. + (image_instance_equal): ditto. + (image_instance_hash): ditto. + (decode_image_instance_type): ditto. + (encode_image_instance_type): ditto. + (image_instantiate): ditto. + (allocate_glyph): ditto. + (Fimage_instance_height): ditto. + (Fimage_instance_width): ditto. + (update_subwindow): ditto. + + * redisplay-x.c (x_output_display_block): recode for layouts as + widgets. + + * redisplay-output.c (redisplay_output_layout): recode for layouts + as widgets. + (compare_runes): remove layout references. + + * redisplay-msw.c (mswindows_output_display_block): recode for + layouts as widgets. + + * glyphs-widget.c (image_instantiator_layout): remove + layout_possible_dest_types. + (layout_possible_dest_types): deleted. + + * glyphs.h (image_instance_type): remove layout references. + (struct Lisp_Image_Instance): ditto. Add initialized flag. + (IMAGE_INSTANCE_INITIALIZED): new accessor. + (XIMAGE_INSTANCE_INITIALIZED): ditto. + +2000-04-25 Andy Piper + + * glyphs-widget.c (image_instantiator_buttons): + (image_instantiator_edit_fields): + (image_instantiator_combo_box): + (image_instantiator_scrollbar): + (image_instantiator_progress_guage): + (image_instantiator_tree_view): + (image_instantiator_tab_control): + (image_instantiator_labels): + (image_instantiator_layout): call default post_instantiate method. + (widget_post_instantiate): new function. Simply lays out the + widgets. + + * glyphs.h (struct image_instantiator_methods): add + post_instantiate method. + + * glyphs.c (instantiate_image_instantiator): add post_instantiate + method calls. + +2000-04-23 Andy Piper + + * glyphs.h (struct image_instantiator_methods): add + decode_domain_method. + (struct Lisp_Image_Instance): remove subwindow frame - it can be + derived from the domain. + (IMAGE_INSTANCE_FRAME): new accessor. + (XIMAGE_INSTANCE_FRAME): ditto. + + * glyphs.c (print_image_instance): use IMAGE_INSTANCE_FRAME + instead of _SUBWINDOW_FRAME. + (finalize_image_instance): ditto. + (Fimage_instance_foreground): ditto. + (Fimage_instance_background): ditto. + (image_instantiate): ditto. + (update_subwindow_cachel): ditto. + (update_subwindow): ditto. + (unmap_subwindow): ditto. + (map_subwindow): ditto + (subwindow_instantiate): ditto. + * glyphs-msw.c (mswindows_update_widget): ditto. + (mswindows_progress_gauge_instantiate): ditto. + (mswindows_tab_control_update): ditto. + * glyphs-x.c (x_update_widget): ditto. + (x_widget_instantiate): ditto. + (x_tab_control_instantiate): ditto. + (x_tab_control_update): ditto. + * event-msw.c (mswindows_wnd_proc): ditto + + * glyphs-widget.c (image_instantiator_layout): use + subwindow_decode_domain. + (image_instantiator_buttons): ditto. + (image_instantiator_edit_fields): ditto. + (image_instantiator_combo_box): ditto. + (image_instantiator_scrollbar): ditto. + (image_instantiator_progress_guage): ditto. + (image_instantiator_tree_view): ditto. + (image_instantiator_tab_control): ditto. + (image_instantiator_labels): ditto. + (image_instantiator_layout): ditto. + + * glyphs.c: add instance error checking to many functions. + (instantiate_image_instantiator): decode device from cache_domain. + (image_instantiate): partially rewrite by using + decode_image_instantiator_domain to determine what domain the + instance needs to be cached in. + (decode_image_instantiator_domain): new function. Determine what + domain the image needs to be cached in. + (check_window_subwindow_cache): new error checking function. + (check_instance_cache_mapper): ditto. + (check_image_instance_structure): ditto. + (subwindow_decode_domain): new function. Encodes a window as a + subwindow's cache domain. + (image_instantiator_format_create): use it for text and + subwindows. + +2000-04-21 Andy Piper + + * glyphs.c (image_instance_device): new function. + (image_instance_frame): new function. + (image_instance_window): new function. + (image_instance_live_p): new function. + + * window.c (mark_window_as_deleted): reset the subwindow_instance_ + cache to nil. + + * glyphs.h (struct Lisp_Image_Instance): device->domain. + (IMAGE_INSTANCE_DOMAIN): new accessor. + (XIMAGE_INSTANCE_DOMAIN): ditto. + + * glyphs-x.c (x_finalize_image_instance): device->domain. + + * glyphs-msw.c (init_image_instance_geometry): device->domain. + (mswindows_finalize_image_instance): ditto. + + * glyphs-eimage.c (jpeg_instantiate): device->domain. + (gif_instantiate): ditto. + (png_instantiate): ditto. + (tiff_instantiate): ditto. + + * glyphs.c (instantiate_image_instantiator): use domain rather + than device. + (mark_image_instance): device -> domain. + (print_image_instance): ditto. + (finalize_image_instance): ditto. + (image_instance_equal): ditto. + (allocate_image_instance): ditto. + (Fcolorize_image_instance): ditto. + (query_string_geometry): ditto. + (image_instantiate): ditto + (query_string_font): ditto. + (image_instantiate): ditto. + (update_subwindow): ditto. + (unmap_subwindow): ditto. + (map_subwindow): ditto. + (subwindow_instantiate): ditto. + + * specifier.h (DOMAIN_DEVICE): new, semantically correct, decoder. + (DOMAIN_FRAME): ditto. + (DOMAIN_WINDOW): ditto. + (DOMAIN_LIVE_P): ditto. + (XDOMAIN_DEVICE): ditto. + (XDOMAIN_FRAME): ditto. + (XDOMAIN_WINDOW): ditto. + + * specifier.c (Fvalid_specifier_domain_p): add image instances as + a valid specifier domain. + +2000-04-19 Andy Piper + + * glyphs-widget.c (syms_of_glyphs_widget): remove + widget-callback-current-channel. + (vars_of_glyphs_widget): ditto. + * glyphs.h: ditto + + * gui.c (get_gui_callback): revert to previous behaviour. + +2000-04-18 Andy Piper + + * glyphs.h (struct Lisp_Image_Instance): add margin_width. + (IMAGE_INSTANCE_MARGIN_WIDTH): new. + (XIMAGE_INSTANCE_MARGIN_WIDTH): new. + + * glyphs.c (image_instance_equal): add margin_width. + (image_instance_hash): ditto. + + * glyphs-widget.c (widget_instantiate): deal with margin-width. + (layout_query_geometry): ditto. + (layout_layout): ditto. + (syms_of_glyphs_widget): add margin-width. + (image_instantiator_layout): allow margin-width. + + * glyphs.c (update_widget_instances): make a normal function. + (syms_of_glyphs): remove Qupdate_widget_instances. + * glyphs.h: ditto. + + * gui-x.c (popup_selection_callback): use enqueue_magic_eval_event + so that we don't corrupt ideas about the last event or + command. Remove widget-callback-current-channel fiddling. + * gui-msw.c (mswindows_handle_gui_wm_command): ditto. + +2000-05-01 Martin Buchholz + + * XEmacs 21.2.33 is released. + +2000-05-01 Yoshiki Hayashi + + * make-src-depend: Allow dots in header file name. + +2000-05-01 Yoshiki Hayashi + + * mule-charset.h (struct charset_lookup): Add + next_allocated_1_byte_leading_byte and + next_allocated_2_byte_leading_byte. + * mule-charset.c: Move above two variables so that those values + will be dumped. + +2000-04-26 Yoshiki Hayashi + + * insdel.c (find_charsets_in_bufbyte_string): Add Vcharset_ascii + when string length is zero. + (find_charsets_in_emchar_string): Ditto. + +2000-04-29 Bjrn Torkelsson + + * lisp.h: extern Qdialog and Qmenubar. + + * gui-x.c: added events.h. + also fixed typo which made the file uncompilable. + + * general.c: Added Qmenubar and Qdialog + +2000-04-28 Ben Wing + + * frame-msw.c (mswindows_init_frame_1): + * frame-msw.c (mswindows_mark_frame): + * event-msw.c (mswindows_enqueue_dispatch_event): + * console-msw.h: + * console-msw.h (struct mswindows_frame): + * console-msw.h (FRAME_MSWINDOWS_WIDGET_HASH_TABLE1): + there are now three hash tables for callbacks. + mswindows_enqueue_dispatch_event is no longer static. + + * dialog-x.c (maybe_run_dbox_text_callback): + * dialog-x.c (dbox_descriptor_to_widget_value): + switch to new cons3 form for callbacks. + + * glyphs-msw.c (mswindows_register_gui_item): + * glyphs-msw.c (mswindows_widget_instantiate): + * glyphs-msw.c (add_tree_item): + * glyphs-msw.c (add_tab_item): + new image instance parameter, so it can be passed to callback-ex. + respect :callback-ex as well as :callback. + + * glyphs-widget.c (VALID_GUI_KEYWORDS): + add :callback-ex. + + * glyphs.c (print_image_instance): + prettify, e.g. now prints widget type. + + * gui-x.h: + certain funs have new image instance parameter. + + * gui.c: + * gui.c (get_gui_callback): + * gui.c (gui_item_add_keyval_pair): + * gui.c (gui_item_init): + * gui.c (gui_add_item_keywords_to_plist): + * gui.c (mark_gui_item): + * gui.c (gui_item_hash): + * gui.c (gui_item_equal): + * gui.c (copy_gui_item): + * gui.c (syms_of_gui): + recognize callback-ex in a number of places. + also, fix the annoying "can't get out of yes-no dialog" bug. + + * gui.h: + * gui.h (struct Lisp_Gui_Item): + recognize callback-ex in a number of places. + + * menubar-x.c (menu_item_descriptor_to_widget_value_1): + new parameter in button_item_to_widget_value. + + * glyphs-x.c (x_update_widget): + * glyphs-x.c (x_button_instantiate): + * glyphs-x.c (x_button_update): + * glyphs-x.c (x_progress_gauge_instantiate): + * glyphs-x.c (x_edit_field_instantiate): + * glyphs-x.c (x_combo_box_instantiate): + * glyphs-x.c (x_tab_control_instantiate): + * glyphs-x.c (x_label_instantiate): + new image instance parameter in various places. + + * event-Xt.c: + * event-Xt.c (enqueue_Xt_dispatch_event): + this fun gets exported. + + * gui-msw.c: + * gui-msw.c (mswindows_handle_gui_wm_command): + handle both :callback and :callback-ex, and generate our own + event because it's one of the callback-ex arguments. + + * gui-x.c: + * gui-x.c (popup_selection_callback): + handle both :callback and :callback-ex, and generate our own + event because it's one of the callback-ex arguments. + * gui-x.c (button_item_to_widget_value): + * gui-x.c (gui_items_to_widget_values_1): + * gui-x.c (gui_item_children_to_widget_values): + * gui-x.c (gui_items_to_widget_values): + new image instance parameter in various places. + + * fns.c (Freplace_list): + fix small typo in doc string. + + * lisp.h: + declare enqueue_Xt_dispatch_event. + +2000-04-28 Ben Wing + + * buffer.c: + * buffer.c (Frecord_buffer): + * buffer.c (syms_of_buffer): + delete record-buffer-hook. + + * fns.c: + * fns.c (Freplace_list): + * fns.c (syms_of_fns): + new primitive replace-list. + + * frameslots.h: + slot for old buffer-alist. + + * lisp.h: + exfun replace-list. + + * redisplay.c: + * redisplay.c (redisplay_frame): + * redisplay.c (syms_of_redisplay): + * redisplay.c (vars_of_redisplay): + new hook buffer-list-changed-hook. + call it. + +2000-04-27 Ben Wing + + * extents.h: extern in_modeline_generation. + + * redisplay.c (generate_formatted_string_db): set + in_modeline_generation. + + * extents.c (extent_changed_for_redisplay): don't mark redisplay + flags if in modeline generation. otherwise frame-modified-tick + is ticked far too often. + Declare in_modeline_generation. + +2000-04-26 Ben Wing + + * emacs.c (vars_of_emacs): document quick-build "error-checking" + option. + (vars_of_emacs): add quick-build as an error-checking option. + A bit kludgy, but there doesn't seem much point in creating + a real var for this. + + * config.h.in: put in an entry for QUICK_BUILD; remove NO_DOC_FILE. + +2000-04-14 IKEYAMA Tomonori + + * redisplay.h (struct display_line): Add a new variable, + line_continuation. + + * redisplay.c (create_text_block): Set dl->line_continuation if + the line continues. + (create_string_text_block): Ditto. + (regenerate_window_incrementally): Use line_continuation instead + of searching continuation glyph. + (add_margin_runes): Call add_glyph_rune. + (add_glyph_rune): Handle margin glyph. + +2000-04-20 Martin Buchholz + + * filelock.c (fill_in_lock_file_name): + ANSIfy. + Check for IS_ANY_SEP instead of '/'. + (lock_file_1): + Avoid generating gratuitous garbage. Call user_login_name() directly. + Never check errno without first seeing that system call failed. + (unlock_file): Add GCPRO. + (Flock_buffer): Fix docstring. + (Ffile_locked_p): Fix docstring. Add GCPRO. + +2000-04-19 Martin Buchholz + + * sysdep.c (get_pty_max_bytes): + Fix hangs on DEC OSF 4.0 when (process-send-string) sends + strings longer than 252 bytes. + + * md5.c: Unconditionally include ANSI header + + * glyphs-x.c (convert_EImage_to_XImage): + * lisp-union.h (union Lisp_Object): + Use consistently the syntax #ifdef FEATURE, not #if FEATURE. + +2000-04-13 Yoshiki Hayashi + + * filelock.c (current_lock_owner): Remove unused variable o, p. + +2000-04-17 Norbert Koch + + * callint.c: Remove multiply defined symbol Qlet + (syms_of_callint): ditto. + +2000-04-14 Andy Piper + + * general.c (syms_of_general): add last-command, this-command, let + and funcall. + + * lisp.h: declare various symbols. + + * glyphs.h: declare Qwidget_callback_current_channel; + + * glyphs-widget.c (syms_of_glyphs_widget): add + Qgui_callback_current_channel. + (vars_of_glyphs_widget): add Vgui_callback_current_channel. + + * gui-msw.c (mswindows_handle_gui_wm_command): bind + widget-callback-current-channel when invoking the interactive + arg. Also bind last-command and next-command when invoking the + widget updates. + * gui-x.c (popup_selection_callback): ditto. + + * gui.c (get_gui_callback): massage args so that we are always + calling eval. This allows us to add our own variable bindings + outside. + + * glyphs-x.c (x_button_instantiate): use + gui_items_to_widget_values since this is GC safe. + (x_progress_gauge_instantiate): ditto. + (x_edit_field_instantiate): ditto. + (x_label_instantiate): ditto. + + * event-Xt.c (emacs_Xt_handle_magic_event): remove old printfs. + (emacs_Xt_event_widget_focus_out): new function + (emacs_Xt_event_widget_focus_in): new function. Set the keyboard + focus. + (emacs_Xt_event_add_widget_actions): new function. add focus + functions as actions. + (init_event_Xt_late): use it. + +2000-04-14 Hrvoje Niksic + + * event-stream.c (Fdispatch_event): Doc fix. + +2000-03-29 SL Baur + + * postgresql.c: Remove all references to PQsetenv*. + + * postgresql.h: Remove references to PGsetenvHandler object. + * lrecord.h (lrecord_type): Ditto. + +2000-04-11 Kirill 'Big K' Katsnelson + + * glyphs-msw.h (struct mswindows_image_instance_data): Added + real_heigh and real_width members, and accessor macros for these. + + * glyphs-msw.c (init_image_instance_geometry): New function. + (init_image_instance_from_dibitmap): Use it. + (mswindows_resource_instantiate): Use it. + (init_image_instance_from_xbm_inline): Use it. + (mswindows_initialize_image_instance_mask): Use real bitmap + geometry. + (mswindows_create_resized_bitmap): Ditto. + (mswindows_create_resized_mask): Ditto. + + * redisplay-msw.c (mswindows_output_dibitmap): Stretch real mask + and bitmap to their surface size. + +2000-04-11 Jan Vroonhof + + * process-unix.c (unix_send_process): Guard against process MIA + after Faccept_process_output. + +2000-04-11 Ben Wing + + * eval.c (unbind_to_hairy): fix brokenness introduced by + nanosecond speed improvements. + +2000-04-07 Raymond Toy + + * sunplay.c (init_device): To play sounds correctly, the device + apparently needs to be initialized at least once by XEmacs. Make + it so. + +2000-04-10 IKEYAMA Tomonori + + * redisplay.c (add_margin_runes): Add text image glyph + handling. + +2000-04-06 Yoshiki Hayashi + + * lisp.h (DOESNT_RETURN): Don't declare as volatile when + gcc is newer than 2.5. + +2000-04-06 Colin Rafferty + + * lisp.h (FLEXIBLE_ARRAY_STRUCT_SIZEOF): Created. + + * fns.c (size_bit_vector): + * alloc.c (size_vector): + (make_vector_internal): + (make_bit_vector_internal): + (sweep_bit_vectors_1): + Replace calls to offsetof with FLEXIBLE_ARRAY_STRUCT_SIZEOF macro. + +2000-04-06 Andy Piper + + * gmalloc.c (malloc): undo previous change. + (malloc): ditto. + (free): ditto. + (realloc): ditto. + +2000-04-06 IKEYAMA Tomonori + + * line-number.c (buffer_line_number): Revert to former version. + +2000-04-06 Andy Piper + + * gmalloc.c (malloc): add error checking. + (malloc): ditto. + (free): ditto. + (realloc): ditto. + + * dialog-x.c (dbox_descriptor_to_widget_value): add extra + button_item_to_widget_value arg. + + * glyphs-x.c (x_button_instantiate): add extra + button_item_to_widget_value arg. + (x_progress_gauge_instantiate): ditto. + (x_edit_field_instantiate): ditto. + (x_label_instantiate): ditto. + + * gui-x.c (gui_items_to_widget_values_1): add extra + button_item_to_widget_value arg. + (button_item_to_widget_value): add extra menu_item_p arg. + + * gui-x.h: change signature of button_item_to_widget_value. + + * menubar-x.c (menu_item_descriptor_to_widget_value_1): add extra + button_item_to_widget_value arg. + +2000-04-03 Yoshiki Hayashi + + * buffer.h (struct buffer): auto_save_modified should be long. + +2000-04-05 Andy Piper + + * glyphs-widget.c (widget_instantiate): pixwidth != pixheight + type. + (button_query_geometry): give a little more room so that athena + buttons fit. + +2000-04-05 Andy Piper + + * faces.c (complex_vars_of_faces): The widget face should inherit + the font of the gui-element face. + +2000-04-04 Andy Piper + + * glyphs-x.c (x_button_update): new function. unconditionally + update a button's state when the instance is dirty. + (image_instantiator_format_create_glyphs_x): add x_button_update. + (x_widget_instantiate): remove old resize cruft. + +2000-04-02 Andy Piper + + * frame.c (change_frame_size_1): The introduction of gutters means + that we need to allow 0 as a potential frame dimension. + +2000-04-02 IKEYAMA Tomonori + + * redisplay.c (add_glyph_rune): Don't set 0 to bufpos for text + image glyph if allow_cursor. + (add_hscroll_rune): Don't allow cursor to border glyph. + (create_text_block): Ditto. + + * redisplay-output.c (redisplay_move_cursor): Do nothing even if + text not in buffer. + (redisplay_output_layout): Call ensure_face_cachel_complete for + text image glyph. + + +2000-03-16 IKEYAMA Tomonori + + * redisplay.c (add_glyph_rune): Adding text image as text runes. + + * redisplay-output.c (redisplay_move_cursor): NO_CURSOR if text + not in buffer + + * redisplay-tty.c (tty_output_display_block): Delete the routine + for text image glyph + * redisplay-x.c (x_output_display_block): ditto + * redisplay-msw.c (mswindows_output_display_block): ditto + +2000-02-02 Mike Alexander + + Note: Some of these were committed by accident as part of other + patches. + + * regex.c (regex_compile): Avoid compiler warnings. + + * ntproc.c (sys_spawnve): Avoid compiler warnings. + + * nt.h: Declare term_ntproc correctly. + + * nt.c: Remove incorrect declaration of get_home_directory which + is declared correctly in lisp.h. + + * keymap.c (get_keyelt): Avoid compiler warnings. + (raw_lookup_key_mapper): Avoid compiler warnings. + + * gutter.c (gutter_was_visible): Add return statement to avoid warning. + + * glyphs-eimage.c (png_instantiate): Avoid compiler warnings. + + * filemode.c (mode_string): Avoid compiler warnings. + + * file-coding.c (Fcoding_system_aliasee): Add return statement to + avoid warning. + + * events-mod.h: Undef some things that winuser.h defines differently. + + * data.c (Faset): Avoid compiler warnings. + + * alloc.c (Fmake_byte_code): Avoid compiler warnings. + +2000-03-03 Jan Vroonhof + + * sound.c (Fplay_sound_file): Wrap ESD in start/stop_interrupts. + Fall through to simple beep on error. + Replace "extern" by real header file. + + * linuxplay.c: Use nativesound.h + (play_sound_data): Return error code. Be less verbose on error. + + * sunplay.c: Use nativesound.h + (play_sound_data): Return error code. Be less verbose on error. + + * ntplay.c: Use nativesound.h + (play_sound_data): Return fake error code + + * sgiplay.c: Use nativesound.h + (play_sound_data): Return error code + + * hpplay.c: Use nativesound.h, partially implement + new error code. Break compilation until finished. + (play_sound_data): error code. + + * nativesound.h (play_sound_file): + (play_sound_data): Prototype in new header. + +2000-03-31 Andy Piper + + * glyphs-widget.c: (button_query_geometry): new function. Adjust + for toggle and radio buttons. + (image_instantiator_buttons): use it. + +2000-03-03 Jan Vroonhof + + * scrollbar-x.c (x_update_vertical_scrollbar_callback): + (x_update_horizontal_scrollbar_callback): Return if no mirror was + found. Scrollbar event probably belonged to some old config. + +2000-03-31 Andy Piper + + * glyphs-widget.c (widget_instantiate): use LAYOUT_VERTICAL rather + than 1. + (initialize_widget_image_instance): default layout to + LAYOUT_HORIZONTAL rather than 0. + (widget_instantiate): reverse the item list at the end rather than + every iteration. + (layout_layout): re-code for the border text at the front of the + item list rather than at the end. + (layout_query_geometry): ditto. Pick up fixed and dynamic sizes + provided by the user. + (widget_query_geometry): comment. + +2000-03-30 Andy Piper + + * glyphs-widget.c (image_instantiator_layout): allow standard + widget keywords in layouts. + + * gutter.c (output_gutter): cope with nil gutter contents. + + * frame.c (Fset_frame_properties): add gutter docs. + +2000-03-29 Andy Piper + + * toolbar-msw.c (TBSTYLE_FLAT): add. + (mswindows_output_toolbar): minor fiddling. + +2000-03-29 Andy Piper + + * gutter.c (output_gutter): force gutter size recalculation if + what we are trying to display won't fit. + (update_gutter_geometry): new function. A per-gutter version of + update_frame_gutter_geometry. + (update_frame_gutter_geometry): use it. + (redraw_exposed_gutter): add extra debugging output. + +2000-03-28 Mike Alexander + + * dumper.c: Declare pdump_hFile and pdump_hMap (Windows only) + (pdump_file_unmap): Implement it on Windows + (pdump_file_get): Save alocated handles for pdump_file_unmap + +2000-03-28 Andy Piper + + * gui.c (get_gui_callback): treat Quit specially. + +2000-03-27 Andy Piper + + * glyphs.c (image_instantiate): be careful to check in the same + way we assigned. + +2000-03-27 Didier Verna + + * config.h.in: define the proper SMART_INCLUDE macro. + handle renaming of `foo_h_path' to `foo_h_file'. + + * database.c: ditto. + + * emacs.c: ditto. + + * linuxplay.c: ditto. + + * terminfo.c: ditto. + + * tooltalk.h: ditto. + +2000-03-27 Andy Piper + + * glyphs-msw.c (mswindows_update_widget): make sure the widget + gets updated whenever the face might have changed. + +2000-03-26 Mike Alexander + + * dumper.c (pdump_resource_free): Fix the comment. + +2000-03-21 Olivier Galibert + + * input-method-xlib.c (XIM_init_frame): Remove painful warning. + +2000-03-22 Mike Alexander + + * dumper.c: Include Windows headers on Windows + (pdump_resource_free): Add a body to the function + (pdump_load): exe_name -> exe_path and add some comments. + +2000-03-25 Mike Alexander + + * gui.c (copy_gui_item_tree): Return a value in all cases + +2000-03-21 Didier Verna + + * config.h.in: move INCLUDE_GLUE_1 and INCLUDE_GLUE_2 here from + lwlib/config.h.in. + (SMART_INCLUDE): new macro. + (POSTGRES_INCLUDE): new macro to include postgresql headers from + the proper location. + + * postgresql.c: use it. + + * inline.c: ditto. + +2000-03-24 Andy Piper + + * gutter.c (redraw_exposed_gutters): must be "in display" when we + do this. + +2000-03-24 Andy Piper + + * redisplay-output.c (compare_runes): use image_instance_changed + to detect changes. Do not depend on glyphs_changed, only depend on + dirtiness. + (redisplay_output_layout): add debug messages. + (compare_runes): ditto. + + * glyphs.h: declare new functions. + (struct Lisp_Image_Instance): remove percent and associated + accessors. + + * gui.h: declare new copying functions. + + * gui.c (copy_gui_item_tree): new function. + (copy_gui_item): new function. + (gui_item_id_hash): revert to standard hash. + (gui_item_hash): ditto. + (gui_item_hash_internal): deleted. + (mark_gui_item): mark value. + (gui_item_add_keyval_pair): add value. + (gui_item_init): ditto. + (gui_add_item_keywords_to_plist): ditto. + (gui_item_equal): ditto. + (syms_of_gui): add Q_value. + + * glyphs-x.c (x_progress_gauge_update): use pending items and + value for setting the state. + (x_update_widget): don't set items from pending here. + + * glyphs-widget.c (update_widget): update items here. + (progress_gauge_set_property): use items for storing value. Put + new value in pending items. + + * glyphs-msw.c (mswindows_progress_gauge_update): use pending + items for new value. Convert percent -> value. + (mswindows_tab_control_update): don't update items here. + + * glyphs.c (Fupdate_widget_instances): use image_instance_changed. + (update_subwindow): ditto. + (image_instance_changed): new function. Compare hash values and + past and present widget items. + (image_instantiate): We more careful about where we instantiate + things. + (image_instantiate): add error checking. + + * gutter.c (syms_of_gutter): use -hook. + +2000-03-20 Yoshiki Hayashi + + * console-tty.c (Fset_console_tty_input_coding_system): Use + Qkeyboard. + (Fset_console_tty_output_coding_system): Use Qterminal. + (tty_init_console): Use Qkeyboard and Qterminal. + +2000-03-21 Ben Wing + + * ntproc.c (create_child): remove bogus HAVE_NTGUI's. + From Mike Alexander . + +2000-03-21 Ben Wing + + * event-msw.c (mswindows_need_event): Horrible kludge to fix + process brokenness. Proper implementation to come. + * callproc.c: + Rename call-process-internal to old-call-process-internal. + New impl. in process.el. + +2000-03-21 Martin Buchholz + + * Makefile.in.in: Coalesce HAVE_NATIVE_SOUND code fragments. + +2000-03-20 Andy Piper + + * glyphs.c (full_list_hash): make hashes of the same elements in + different orders return different values. + +2000-03-20 Martin Buchholz + + * XEmacs 21.2.32 is released. + +2000-03-20 Martin Buchholz + + * buffer.h (DFC_ALLOCA_USE_CONVERTED_DATA): + (DFC_MALLOC_USE_CONVERTED_DATA): + Add aliasing-safe casts to allow use with char* or unsigned char* + lvalues. + + * eldap.c (Fldap_open): + (Fldap_search_basic): + (Fldap_add): + (Fldap_modify): + Make C++-compilable. + Make sure GCPRO'ed variables are initialized. + Use temp variables to avoid repeated calls to Flength. + +2000-03-16 Martin Buchholz + + * sysfile.h: + Make sure PATH_MAX is always defined. + Include limits.h for PATH_MAX. + Deprecate use of MAXPATHLEN. + +2000-03-10 Martin Buchholz + + * emacs.c: Add reinit_vars_of_fileio. + * symsinit.h: Add reinit_vars_of_fileio. + * fileio.c (reinit_vars_of_fileio): New. + * fileio.c (Fmake_temp_name): + Initialize temp_name random number from microseconds to make + collisions even less likely. Initialize always at process startup + time. (make-temp-name) used to return the same file name twice in + a row when PDUMP. + Random stylistic fiddling. + Comment fixes. + +2000-03-20 Andy Piper + + * glyphs.c (image_instantiate): allow text glyphs to be + instantiated in the minibuffer window. + +2000-03-19 Andy Piper + + * glyphs.c (image_instance_hash): be careful about which items we + hash on. + + * glyphs-widget.c (tab_control_set_property): record into pending + items rather than the actual items. + + * glyphs-x.c (x_update_widget): use pending items to update with. + + * glyphs-msw.c (mswindows_tab_control_update): use pending items + to update with. + + * glyphs.c (mark_image_instance): mark pending items. + + * window.c (Fset_window_configuration): record the buffer. + (Fselect_window): totally revert previous change which breaks many + things. + +2000-03-18 Andy Piper + + * glyphs-msw.c (mswindows_tab_control_update): force selected + item. + + * glyphs.c (image_instantiate): don't allow the minibuffer as a + window domain cache, otherwise we get inconsistencies at + startup. There is something fishy at startup which can lead to the + minibuffer being the selected window when the gutter content is + instantiated. + + * gui.c (parse_gui_item_tree_list): add probably unnecessary + gcpros. + (parse_gui_item_tree_children): ditto. + (parse_gui_item_tree_item): ditto. + + * glyphs.c (Fupdate_widget_instances): return something. + +2000-03-18 Yoshiki Hayashi + + * window.c (Fselect_window): Undo 2000-03-17 change. + +2000-03-17 SL Baur + + * postgresql.c (Fpq_setenv): Remove this turkey when linking + against v7.0 libraries. Insta-coredump city until the postgres + folks fix it. + +2000-03-17 Andy Piper + + * faces.c (complex_vars_of_faces): don't give the widget face an + inherited background pixmap. + + * glyphs-msw.c (mswindows_tab_control_instantiate): select the + selected item. + + * event-stream.c (Fdispatch_non_command_events): return something. + + * gutter.c (output_gutter): use widget face. + (clear_gutter): ditto. + + * NEWS: adjust again. + + * window.c (Fselect_window): make sure this runs to completion to + avoid oddities with Fset_window_configuration. + (Fcurrent_window_configuration): in general do not save the + minibuffer as the selected window. + + * glyphs.h (IMAGE_INSTANCE_HASH_DEPTH): increase. + +2000-03-16 Olivier Galibert + + * emacs.c (Frunning_temacs_p): Revert previous patch. + (main_1): Reinitialize running_temacs_argc if pdump_load succeeds. + +2000-03-16 Andy Piper + + * glyphs-x.c (x_tab_control_update): if no widget values then + return. + + * NEWS: update for new features. + + * event-Xt.c (emacs_Xt_force_event_pending): new function. Post a + synthetic event to the native system. + (reinit_vars_of_event_Xt): set force_event_pending to + emacs_Xt_force_event_pending. + + * events.h (struct event_stream): add force_event_pending. + + * specifier.c (recompute_one_cached_specifier_in_window): add + comment. + + * redisplay.c (redisplay_frame): don't call + update_frame_subwindows. Reset subwindow cachels when + subwindows_changed, removing this was an optimization too far. + + * redisplay-output.c (compare_runes): reorganize so that we catch + glyph changes when we want them. Set optimize_output when this + would help layouts. + (redisplay_output_layout): remove frame_really_changed, use + optimize_output instead. + + * redisplay-msw.c (mswindows_output_display_block): reset + optimize_output after outputting a glyph. + * redisplay-x.c (x_output_display_block): ditto. + * redisplay-tty.c (tty_output_display_block): ditto. + + * gutter.c: (specifier_vars_of_gutter): use new spec changed + functions. + (gutter_specs_changed): do specific gutter positions. + (top_gutter_specs_changed): new function. Only update the + specified gutter specs. + (bottom_gutter_specs_changed): ditto. + (left_gutter_specs_changed): ditto. + (right_gutter_specs_changed): ditto. + + * gui.c (gui_item_hash_internal): new function, does a real hash. + (gui_item_id_hash): use it. + (gui_item_hash): hash the eval'ed gui_item. + + * gui-x.c (popup_selection_callback): send an eval event to call + Fupdate_widget_instances. + + * gui-msw.c (mswindows_handle_gui_wm_command): send an eval event + to call Fupdate_widget_instances. + + * glyphs.h (struct Lisp_Image_Instance): add optimize_output flag. + (IMAGE_INSTANCE_OPTIMIZE_OUTPUT): access it. + + * glyphs.c: (update_frame_subwindows): deleted. + (Fupdate_widget_instances): new function for updating the dirty + state of widgets that might have changed. + (syms_of_glyphs): add Qupdate_widget_instances. + (full_list_hash): hash a list completely. + (image_instance_hash): use it for items and properties. + + * frame-msw.c (mswindows_size_frame_internal): remove unused + variable. + + * faces.h (struct face_cachel): fix comment. + + * event-stream.c (Fdispatch_non_command_events): new + function. Process non-command events, forcing an event cycle + beforehand. + (syms_of_event_stream): declare. + (event_stream_force_event_pending): new function. Force an event + on the native event queue so that an event cycle will occur next + time we check. + + * event-msw.c: + (struct ntpipe_shove_stream): + (mswindows_enqueue_dispatch_event): + (mswindows_dequeue_dispatch_event): + (mswindows_cancel_dispatch_event): + (mswindows_pump_outstanding_events): + (mswindows_drain_windows_queue): + (mswindows_handle_paint): + (mswindows_wnd_proc): + (mswindows_key_to_emacs_keysym): + (get_process_input_waitable): + (emacs_mswindows_delete_stream_pair): re-indent file. + (mswindows_need_event): do not process further fds if the windows + fd is set, otherwise you get endless XM_BUMPQUEUE cycles. This + fixes the 100% cpu problem. + (reinit_vars_of_event_mswindows): set force_event_pending to 0. + +2000-03-15 Olivier Galibert + + * alloc.h: New. + * dumper.h: New. + * dumper.c: New. + + * emacs.c: Moved dump file searching to dumper.c. + (Frunning_temacs_p): Fixed. + + * alloc.c: Moved everything pdump-related to dumper.c. Removed + last_lrecord_type_index_assigned. + +2000-02-20 Olivier Galibert + + * symsinit.h: Added reinit parameter to init_console_stream + declaration. + + * lisp.h: Added file parameter to pdump_load declaration. + + * emacs.c (main_1): Added -nd/--nodump-file and -sd/--show-dump-id + support. Added dump file searching. + + * config.h.in: Added EMACS_PROGNAME. + + * console-stream.c (init_console_stream): Fix reinitialisation + when running from temacs. + + * alloc.c (pdump): Add id support. + (pdump_load): Add file parameter and signature/id support. + + * Makefile.in.in: Add full pdump support. + +2000-03-15 SL Baur + + * postgresql.c: Update documentation to reflect latest code + status. + (print_result): Show tuple counts in printed representation when + appropriate. + (Fpq_put_nbytes): MULE-ize. + (Fpq_get_line_async): Ditto. + +2000-03-14 SL Baur + + * postgresql.c (Fpq_lo_import): Fix return value. + Suggested by: Kenji Itoh . + +2000-03-13 Ben Wing + + * alloc.c (pdump_load): + Fix compile warning under mswin. + +2000-03-14 SL Baur + + * postgresql.c: Mule-ization, bug fixes. + Use PG_CODING to encapsulate coding system name changes. + Backport a version of TO_EXTERNAL format for 21.1/InfoDock. + (pg-coding-system): Create. + + (Fpq_conn_defaults): Mule-ize. + (Fpq_connectdb): Mule-ize & bug fix. + (Fpq_connect_start): Mule-ize. + (Fpq_set_client_encoding): Mule-ize. + (Fpq_finish): Document `DEAD' connection status. + (Fpq_clear): Ditto. + (Fpq_pgconn): Mule-ize. + (Fpq_exec): Mule-ize & bug fix. + (Fpq_send_query): Ditto. + (Fpq_get_result): Ditto. + (Fpq_res_status): Mule-ize. + (Fpq_result_error_message): Mule-ize. + (Fpq_ntuples): fix comments. + (Fpq_fname): Mule-ize. + (Fpq_fnumber): Mule-ize. + (Fpq_ftype): fix comments. + (Fpq_get_value): Mule-ize. + (Fpq_cmd_status): Ditto. + (Fpq_cmd_tuples): Ditto. + (Fpq_oid_value): Ditto. + (Fpq_notifies): Ditto. + (Fpq_lo_import): Ditto. + (Fpq_lo_export): Ditto. + (Fpq_get_line): Ditto. + (Fpq_put_line): Mule-ize and bug fix. + (syms_of_postgresql): Fix ifdef'ing, add pg-coding-system. + +2000-03-10 SL Baur + + * postgresql.c (vars_of_postgresql): Mule-ize. + (Fpq_conn_defaults): Ditto. + +2000-03-12 Ben Wing + + * alloc.c (Fmake_byte_code): + * alloc.c (debug_string_purity_print): + * alloc.c (pdump_backtrace): + * alloc.c (pdump_get_indirect_count): + * alloc.c (pdump_register_sub): + * alloc.c (pdump_register_object): + * alloc.c (pdump_register_struct): + * alloc.c (pdump_dump_data): + * alloc.c (pdump_reloc_one): + Minor cleanups. + + * console-msw.c: + * console-msw.c (GetConsoleHwnd): + * console-msw.c (msw_hide_console): + * console-msw.c (msw_show_console): + * console-msw.c (msw_ensure_console_buffered): + * console-msw.c (msw_output_console_string): + * console-msw.c (console_type_create_mswindows): + + a) Added functions to manipulate the console window for use with + shell support. + + b) Added support for writing text to the console, which is now + used under Windows when xemacs is not being run non-interactively, + to write text that would otherwise be destined for stdout because + under these circumstances, text written to stdout tends to + disappear and not be seen. + + * console-msw.h: + * event-Xt.c: + * event-Xt.c (x_event_to_emacs_event): + * event-Xt.c (describe_event_window): + * events-mod.h (XEMACS_MOD_CONTROL): + * events.c: + * events.c (Fmake_event): + * events.c (character_to_event): + * events.c (event_to_character): + * events.c (format_event_object): + * events.c (Fevent_modifiers): + * events.h: + * events.h (struct key_data): + * events.h (struct button_data): + * events.h (struct misc_user_data): + * frame-x.c (Fcde_start_drag_internal): + * frame-x.c (Foffix_start_drag_internal): + * gpmevent.c (Freceive_gpm_event): + * keymap.c: + * keymap.c (bucky_sym_to_bucky_bit): + * keymap.c (control_meta_superify): + * keymap.c (make_key_description): + * keymap.c (keymap_lookup_directly): + * keymap.c (create_bucky_submap): + * keymap.c (keymap_store): + * keymap.c (define_key_check_and_coerce_keysym): + * keymap.c (define_key_parser): + * keymap.c (define_key_alternate_name): + * keymap.c (Fdefine_key): + * keymap.c (raw_lookup_key_mapper): + * keymap.c (struct map_keymap_unsorted_closure): + * keymap.c (map_keymap_unsorted_mapper): + * keymap.c (map_keymap_sort_predicate): + * keymap.c (map_keymap_sorted): + * keymap.c (accessible_keymaps_mapper_1): + * keymap.c (where_is_recursive_mapper): + * keymap.c (describe_map_mapper): + * keymap.c (describe_map_sort_predicate): + * keymap.c (describe_map): + * keymap.c (complex_vars_of_keymap): + And a number of other files, the key modifier preprocessor + constants that xemacs uses have names that conflict with constants + defined under MS Windows for other purposes, so they were renamed + to begin with the prefix XEMACS_. The variables that hold such + modifiers were changed to consistently be of type int to fix + various compile warnings. + + * console.c (complex_vars_of_console): + * device.c: + * device-msw.c: + * device-msw.c (mswindows_finish_init_device): + * device-msw.c (msw_get_workspace_coords): + * device-msw.c (mswindows_device_system_metrics): + and various other files, added support for a new + device property called offset-workspace which returns the position + of the upper left corner of the workspace area and goes along with + the existing size-workspace property. + + * dialog-msw.c: + * dialog-msw.c (push_bufbyte_string_as_unicode): + * dialog-msw.c (mswindows_popup_dialog_box): + Added support for XEmacs-style accelerator specifications in + button text. Note: I didn't add support for this under X Windows, + and somebody needs to do this. + + * dialog.c: + * dialog.c (Fpopup_dialog_box): + Documented the support for accelerators that was just mentioned. + + editfns.c (get_home_directory): Changed behavior under Windows + when HOME not defined; former behavior was irretrievably broken. + + * emacs.c: + * emacs.c (main_1): + * emacs.c (main): + * minibuf.c (clear_echo_area_internal): + * minibuf.c (echo_area_append): + * print.c: + * print.c (std_handle_out_external): + * print.c (std_handle_out_va): + * print.c (fatal): + * print.c (write_string_to_stdio_stream): + * print.c (output_string): + * print.c (debug_print): + * print.c (debug_backtrace): + * print.c (debug_short_backtrace): + Cleaned up the code that prints text to stdout so that this can be + changed to output into a console window instead under MS Windows, + as described above. + + * eval.c: + * eval.c (DEFEND_AGAINST_THROW_RECURSION): + * eval.c (internal_catch): + * eval.c (unwind_to_catch): + * eval.c (throw_or_bomb_out): + * eval.c (condition_case_1): + * eval.c (signal_1): + * eval.c (check_error_state_sanity): + * eval.c (call_with_suspended_errors_1): + * eval.c (call_with_suspended_errors): + * eval.c (reinit_vars_of_eval): + Added code to catch throw loops and check for a pesky bug that may + be gone now. + + * event-msw.c: + * event-msw.c (key_needs_default_processing_p): + * event-msw.c (mswindows_wnd_proc): + * event-msw.c (mswindows_modifier_state): + * event-msw.c (emacs_mswindows_quit_p): + * event-msw.c (vars_of_event_mswindows): + a) Added support for using the alt key to select menu items as is + standard under MS Windows. This is controlled using the variable + menu-accelerator-enabled, just like under X Windows. There is an + option on the options menu to turn this support on. I really + think that it should be on by default under Windows, but I'm not + going to make this change yet. + + b) Added support for dynamic display size changes under Windows. + + * event-stream.c: + * event-stream.c (maybe_echo_keys): + * event-stream.c (Fnext_event): + * event-stream.c (command_builder_find_leaf): + * event-stream.c (lookup_command_event): + * event-stream.c (execute_command_event): + * event-stream.c (pre_command_hook): + * event-stream.c (post_command_hook): + * event-stream.c (syms_of_event_stream): + * event-stream.c (vars_of_event_stream): + * event-stream.c (complex_vars_of_event_stream): + * events.h (struct command_builder): + + a) Tried to clean up a little bit the horribly written x-specific + accelerator code that crept into this file. I moved this code + into menubar-x.c where it belongs. I also needed to move the + command builder structure into the file events.h because it is + accessed directly by this accelerator code. What I didn't do, but + which should be done at some point, is to properly abstract this + code using device methods instead of the kludgy way that it + currently hooks into the event code. + + b) Added the lisp variables this-command-properties and + last-command- properties, which should be used to synchronize two + adjacent commands in preference to playing games with the variable + this-command, which is typically what happens. + + c) Added some slightly nasty code to hook into the lisp support + for shifted- motion-key selection. This is actually necessary for + somewhat complicated reasons, which are described in + simple.el. (NB: I think the proper thing would be to have the code + that calls the pre and post command hooks also call out to generic + lisp functions in simple.el, where all built-in stuff could be + added. I will think about this more.) + + * event-unixoid.c (poll_fds_for_input): + * lread.c (readchar): + * redisplay-tty.c (tty_clear_frame): + * redisplay-x.c (x_get_gc): + * signal.c (interrupt_signal): + And a whole bunch of other files: fixed up places that printed + directly to stderr to instead call the function stderr_out so that + the changes I made under Windows work correctly. + + * filemode.c (mode_string): + Warning fixes. + + * frame-msw.c: + * frame-msw.c (mswindows_size_frame_internal): + Fixed the computation of frame size and position to keep the frame + within the workspace area, rather than within the physical + dimensions of the screen, so that the frame doesn't overlap window + manager decorations, such as the start menu and toolbar, typically + at the bottom of the screen. + + * frame.c (vars_of_frame): + Changed the default frame title format under MS Windows to consist + of buffername-XEmacs, which is standard under MS Windows. I think + it might be a good idea to change this everywhere because I think + it is superior to the current frame title format, but this is the + kind of change that is likely to cause some people to get annoyed, + so I'm not making it. + + * glyphs-eimage.c (png_instantiate): Fixed some compile warnings. + + * gui-msw.c (mswindows_handle_gui_wm_command): + Fixed compile warnings. + + * gui-x.c: + * gui-x.c (strdup_and_add_accel): + * gui-x.c (button_item_to_widget_value): + * gui-x.h: + Added code to automatically put an accelerator onto the beginning + of menu items that don't have one as is now the standard, and is + described more later. Also fixed things so that the menu item + name can be an evaluated expression, again a new standard. + + * gui.c: + * gui.c (gui_item_add_keyval_pair): + * gui.c (make_gui_item_from_keywords_internal): + * gui.c (gui_add_item_keywords_to_plist): + * gui.c (gui_item_accelerator): + * gui.c (gui_name_accelerator): + * gui.c (gui_item_included_p): + * gui.c (gui_item_display_flush_left): + * gui.c (gui_item_display_flush_right): + * gui.c (parse_gui_item_tree_item): + * gui.c (parse_gui_item_tree_children): + * gui.c (parse_gui_item_tree_list): + Mule-ized. Cleanup. GCPRO addition. + + * line-number.c (buffer_line_number): + * lisp.h: + * lisp.h (EMACS_INT_MAX): + Added the manifest constant EMACS_INT_MIN corresponding to the + existing constant EMACS_INT_MAX. This is partially to fix compile + warnings under Windows, and partly for cleanliness. + + * menubar-msw.c: + * menubar-msw.c (REPLACE_ME_WITH_GLOBAL_VARIABLE_WHICH_CONTROLS_RIGHT_FLUSH): + * menubar-msw.c (msw_translate_menu_or_dialog_item): + * menubar-msw.c (displayable_menu_item): + * menubar-msw.c (populate_menu_add_item): + * menubar-msw.c (populate_or_checksum_helper): + * menubar-msw.c (populate_menu): + * menubar-msw.c (update_frame_menubar_maybe): + * menubar-msw.c (prune_menubar): + * menubar-msw.c (msw_char_is_accelerator): + * menubar-msw.c (unsafe_handle_wm_initmenu_1): + * menubar-msw.c (mswindows_handle_wm_command): + * menubar-msw.c (mswindows_handle_wm_initmenupopup): + * menubar-msw.c (mswindows_handle_wm_initmenu): + * menubar-msw.c (mswindows_update_frame_menubars): + * menubar-msw.c (mswindows_free_frame_menubars): + * menubar-msw.c (mswindows_popup_menu): + Fixed a bug in handling accelerators where an extra character + would be displayed in the menu item. Also generalized the + function displayable_menu_item because it is now used by the + dialog box code as well. And finally, added code in the functions + that create the menubar to extract a list of accelerators for the + top level menubar, which is used in the event code to determine + whether a particular alt-key combination should be used to invoke + a menu item, or should be passed through to access the standard + XEmacs keymap binding for this key combination. + + Much needed GCPROing. + + * menubar-x.c: + * menubar-x.c (menu_item_descriptor_to_widget_value_1): + * menubar-x.c (menu_item_descriptor_to_widget_value): + * menubar-x.c (restore_in_menu_callback): + * menubar-x.c (x_popup_menu): + * menubar-x.c (menu_move_up): + * menubar-x.c (menu_move_down): + * menubar-x.c (menu_move_left): + * menubar-x.c (menu_move_right): + * menubar-x.c (menu_select_item): + * menubar-x.c (command_builder_operate_menu_accelerator): + * menubar-x.c (menu_accelerator_junk_on_error): + * menubar-x.c (command_builder_find_menu_accelerator): + * menubar-x.c (Faccelerate_menu): + * menubar.h: + Moved a whole bunch of code here that was previously in + event-stream.c as described above. There is also code connected + to the new standard of adding an accelerator to the beginning of + menu items that don't have one as described above and below. + + * menubar.c: + * menubar.c (menu_parse_submenu_keywords): + * menubar.c (Fmenu_find_real_submenu): + * menubar.c (Fnormalize_menu_item_name): + * menubar.c (syms_of_menubar): + * menubar.c (vars_of_menubar): + * menubar.c (complex_vars_of_menubar): + + a) Cleaned up a bunch of documentation and improved it. + + b) XEmacs now automatically adds an accelerator onto the beginning + of any menu items that don't have one. I did this because there + will inevitably be some menu items on the main menubar that don't + have accelerators on them because the package that adds that + particular menu item hasn't yet been fixed up to have accelerators + in them and it looked rather strange to have some items with and + some items without accelerators, especially since even in items + without accelerators, you can, at least under windows, still + access the item through an accelerator corresponding to the first + character in the item's name. If people don't like this behavior, + I can add a variable to turn it off optionally, but I'm not sure + this is a good idea because we really do need to have accelerators + on all of the menu items, and if a package doesn't like the + accelerators being put on the first character, then it should put + the accelerators where they belong. + + c) I made a behavior change, which is that the descriptor that + specifies the text of the menu item, which formerly was just a + string, can now also be an evaluated expression. This makes this + descriptor parallel with all of the others, which could also be + evaluated expressions. This also obviates the need for the + keyword :label, which was previously listed in the documentation + as unimplemented, and which was for the same purpose. + + d) GCPROing. + + * ntproc.c: + * ntproc.c (new_child): + * ntproc.c (sys_spawnve): + * ntproc.c (find_child_console): + * ntproc.c (sys_kill): + Fixed compile warnings. By the way, this file should really go + away entirely, and this will happen as soon as Kirill makes his + final round of process cleanups, which affect the function + call-process. + + * process-nt.c: + * process-nt.c (struct nt_process_data): + * process-nt.c (find_process_from_pid): + * process-nt.c (send_signal_the_nt_way): + * process-nt.c (enable_child_signals): + * process-nt.c (find_child_console): + * process-nt.c (send_signal_the_95_way): + * process-nt.c (nt_finalize_process_data): + * process-nt.c (ensure_console_window_exists): + * process-nt.c (nt_create_process): + * process-nt.c (nt_kill_child_process): + * process-nt.c (nt_kill_process_by_pid): + * process-nt.c (nt_open_network_stream): + * process-nt.c (vars_of_process_nt): + Copied over code from Emacs 20.5 to correctly send signals to sub- + processes under Windows 95. Also added code to automatically + create and hide console window when a sub-process is created under + Windows 95, which obviates the need for the separate runemacs.exe + executable, and finally implemented some variables that were + implemented in Emacs 20.5, but previously not in XEmacs. These + include mswindows- start-process-share-console and + mswindows-start-process-inherit-error-mode. (Both of these only + apply to Windows 95.) + + * regex.c (regex_compile): Fixed a compile warning. + + * select-msw.c: + * select-msw.c (mswindows_own_selection): + * select-msw.c (mswindows_get_foreign_selection): + * select-msw.c (mswindows_disown_selection): + * select-msw.c (console_type_create_select_mswindows): + * select-msw.c (syms_of_select_mswindows): + Cleaned up the file and implemented the device method + selection_exists_p, which had accidentally been left out. Also + removed four lisp functions that were remnants from before the + time when the selection code was properly device abstracted. + These functions are no longer needed because there are generic + equivalents, and because they were added recently and don't exist + in FSF Emacs, I don't think there's any problem with just deleting + them. + + * sysdep.c: + * sysdep.c (sys_subshell): + Fixed a compile warning, although in this case there's probably + something wrong with this code, and it ought to be looked into + more thoroughly by somebody who understands it. + + * window.c: + * window.c (Fwindow_text_area_height): + * window.c (Fwindow_width): + * window.c (Fwindow_full_width): + * window.c (Fwindow_pixel_width): + * window.c (debug_print_window): + * window.c (syms_of_window): + Added functions window-text-area-height and window-full-width, + which are functions for returning various width and height + characteristics of a window. (One of these functions is necessary + for making the file dialog box work correctly, and the other one + was added for completeness.) Also added a table to the + documentation for window-height which describes the entire scheme + for accessing width and height characteristics of a window. + +2000-03-12 Kirill 'Big K' Katsnelson + + * nt.c (fstat): Added a comment for another problem with + non-encapsulated [f]stat(), reported by Adrian Aichner + . + +2000-03-11 Andy Piper + + * window.c (make_dummy_parent): initialize subwindow instance + cache. + (Fset_window_configuration): zero extent_modiff. + +2000-03-10 Andy Piper + + * redisplay.c (Fredraw_frame): reset the changed_set flags so that + more changes can be triggered. + (Fredisplay_frame): ditto. + (Fredraw_device): ditto. + (Fredisplay_device): ditto. + (redisplay_frame): make non-static. + (redisplay_frame): call update_frame_gutter_geometry outside of + display proper. + + * gutter.h: declare update_frame_gutter_geometry. + + * redisplay.h: declare redisplay_frame. + + * gutter.c (update_frame_gutter_geometry): move geometry changes + in update_frame_gutters here. Geometry changes can only occur + outside of redisplay. + (update_frame_gutters): remove geometry change code. + (Fredisplay_gutter_area): make sure that we are in display when we + update and that we have flushed any size changes. + +2000-03-11 Andy Piper + + * alloc.c (pdump_dump_data): remove i & count shadows. + +2000-02-27 Mike Alexander + + * sysdep.h: Declare pdump_read_file + + * sysdep.c (pdump_read_file): New function + + * alloc.c (pdump_load): Call pdump_read_file to get the portable + dump data + +2000-03-10 SL Baur + + * lrecord.h: add `lrecord_type_pgsetenv'. + +2000-03-08 SL Baur + + * symsinit.h: declare (vars|syms)_of* functions. + * lrecord.h: add `lrecord_type_pgconn' and 'lrecord_type_pgresult'. + +2000-03-06 SL Baur + + * config.h.in: Add symbols HAVE_POSTGRESQL and HAVE_POSTGRESQLV7 + + * inline.c: Include postgresql.h lrecord stuffs to placate buggy + GCCs. + + * emacs.c (main_1): Call postgres initialization code. + + * postgresql.h: New file. PostgreSQL RDBMS support. + * postgresql.c: New file. + +2000-03-08 Yoshiki Hayashi + + * redisplay-output.c (redisplay_output_display_block): Disable + redundant code. + +2000-03-09 Yoshiki Hayashi + + * mule-canna.c (Fcanna_henkan_region): Translate doc-string. + (Fcanna_henkan_next): Ditto. + (Fcanna_bunsetu_henkou): Ditto. + (Fcanna_henkan_kakutei): Ditto. + (Fcanna_henkan_end): Ditto. + (Fcanna_henkan_quit): Ditto. + (Fcanna_henkan_next): Set retun value correctly. + (c2mu): Use unsigned char instead of signed char. + +2000-03-09 Yoshiki Hayashi + + * emacs.c (main_1): Always call syms_of_gui. + * inline.c: include gui.h + +2000-03-09 Yoshiki Hayashi + + * redisplay.c (Vvisible_bell): Renamed from visible_bell and + converted to Lisp_Object. + (Qtop_bottom): New variable. + (syms_of_redisplay): Initialize it. + * redisplay.h (Vvisible_bell): Ditto. + * sound.c (ding): Ditto and check if Vvisible_bell is nil. + * redisplay-x.c (x_flash): When Vvisible_bell is top-bottom, + only flash top and bottom. + +2000-03-08 Andy Piper + + * buffer.c (Frename_buffer): record new buffer name the right way. + +2000-03-08 Andy Piper + + * glyphs.c (update_subwindow): increase hash depth so that widget + items get picked up properly. + + * redisplay-output.c (compare_runes): increase hash depth so that + widget items get picked up properly. + +2000-03-08 Andy Piper + + * gutter.c (output_gutter): add some debug. + + * glyphs.h (struct Lisp_Image_Instance): add display_hash. + (IMAGE_INSTANCE_DISPLAY_HASH): new macro. + (XIMAGE_INSTANCE_DISPLAY_HASH): ditto. + + * redisplay-output.c (compare_runes): use display_hash to + determine if glyphs really are not the same. + + * glyphs.c (update_subwindow): check display_hash to see if + anything really needs to be updated. If not then do + nothing. Record the display_hash after updating. + (image_instance_equal): compare the image_instance face also. + +2000-03-07 Yoshiki Hayashi + + * redisplay.h: Fix comment style. + +2000-03-08 Jonathan Harris + + * consle-msw.h (struct mswindows_frame): + Added new member paint_pending to indicate whether a WM_PAINT + magic event has been queued for this frame. + + * event-msw.c (mswindows_drain_windows_queue): + Don't queue a WM_PAINT magic event if one is already queued. + (emacs_mswindows_handle_magic_event): clear paint_pending flag. + + * frame-msw.c (mswindows_init_frame_1): initialise paint_pending flag. + +2000-03-07 Didier Verna + + * dired.c: #include `regex.h' after `sysfile.h'. + +2000-03-06 Martin Buchholz + + * sound.c (init_nas_sound): Fix compiler warning. + + * alloc.c (ALIASING_VOIDPP_DEREFERENCE): New. + (FREE_STRUCT_P): + (MARK_STRUCT_AS_FREE): + (MARK_STRUCT_AS_NOT_FREE): + Make `gcc -fstrict-aliasing' work properly. + +2000-03-07 Jonathan Harris + + * device-msw.c (mswindows_finish_init_device): Call CoInitialize(). + (mswindows_delete_device): Call CoUnnitialize(). + + * event-msw.c (mswindows_wnd_proc): WM_DROPFILES: Decode Shortcuts. + +2000-02-25 + + * process-nt.c: MinGW now has , but still needs + . + + * sysdep.c: This extern declaration for environ prevents MinGW + from finding the variable in CRTDLL.DLL. + + * s\mingw32.h (PBS_SMOOTH): Removed, now defined in cygwin's + windows headers. + (SHGFI_EXETYPE): .. + (WM_MOUSEWHEEL): .. + (_WIN32_IE): Added, needed to get the TCS_BOTTOM and TCS_VERTICAL + definitions. + (MMRESULT): Removed, now defined in cygwin's windows headers. + (TIMECAPS): .. + (uid_t,gid_t,pid_t,ssize_t): .. + (_timeb): Removed, MinGW defines both _timeb and timeb. + (HAVE_H_ERRNO): Added. + (HAVE_TZNAME): Added, configure is not detecting this. + +2000-02-03 IKEYAMA Tomonori + + * chartab.h (XCHAR_TABLE_VALUE_UNSAFE): New macro. + * syntax.c (syntax_match): Use it. + + * cmds.c: Import auto-fill-chars from FSF Emacs. + (Vauto_fill_chars): New variables. + (internal_self_insert): Check Vauto_fill_chars. + (vars_of_cmds): + Declare auto-fill-chars as a Lisp variable and initialize it. + +2000-03-05 Jonathan Harris + + * fileio.c (Fmake_symbolic_link): + (Ffile_symlink_p): + Run handlers even if local machine doesn't have symlinks. + +2000-03-05 Jonathan Harris + + * event-msw.c (mswindows_drain_windows_queue): + Don't generate paint magic events for non-XEmacs frames. + +2000-03-05 Andy Piper + + * redisplay.c (redisplay_frame): generate_displayable_area and + friends assumes that we are not in GC, we therefore have to make + sure that this doesn't happen. + + * gutter.c (calculate_gutter_size): generate_displayable_area + assumes that we are not in GC, we therefore have to make sure that + this doesn't happen. + +2000-03-05 Martin Buchholz + + * opaque.c (DEFINE_LRECORD_IMPLEMENTATION): opaque_ptr ==> opaque-ptr + +2000-03-03 Jan Vroonhof + + * redisplay.c (regenerate_window): Make sure we set a sane value + for end_pos even if we jump out of the loop. + (regenerate_window): Answer Ben's question :-). + (start_end_of_last_line): Add may_error argument. + (start_of_last_line): + (end_of_last_line): Pass may_error = 0. + (end_of_last_line_may_error): New function. + (pixel_to_glyph_translation): Use it, so we don't crash in + event_to_glyph. + +2000-03-04 Andy Piper + + * window.h (struct window): add gutter_extent_modiff. + + * window.c (allocate_window): zero out gutter_extent_modiff. + + * redisplay.h: declare sync_display_line_structs. + + * redisplay.c (add_glyph_rune): add a better comment. + + * redisplay-output.c (sync_display_line_structs): made non-static. + (compare_runes): remove unneccesary glyph cachel access. + + * gutter.h: declare gutter_extent_signal_changed_region_maybe. + + * gutter.c (output_gutter): don't output the gutter if extent + changes only involve extents in buffers. use 4 sets of display + lines. + (gutter_extent_signal_changed_region_maybe): new function. Mark + extents in gutters as changed. + (update_frame_gutters): use 4 sets of display lines. + (reset_gutter_display_lines): ditto. + (free_frame_gutters): ditto. + (redraw_exposed_gutter): force output of gutters. + + * frame.h (struct frame): add 4 sets of gutter display lines. + + * extents.c: (extent_changed_for_redisplay): signal changes to + extents in strings in the gutter as well as extents in buffers. + +2000-03-02 Andy Piper + + * gutter.c (specifier_vars_of_gutter): cosmetic changes. + + * frame.c (Fmake_frame): make sure the gutters get initialized + after the frame is visible. + (set_frame_selected_window): re-arrange compilation macros a + little. + (change_frame_size_1): mark gutters changed. + + * device.c (Fset_device_class): mark gutters changed. + +2000-03-01 Andy Piper + + * window.c (window_top_frame_gutter_height): deleted. + (window_bottom_frame_gutter_height): ditto. + (window_left_frame_gutter_height): ditto. + (window_right_frame_gutter_height): ditto. + (window_top_gutter_height): don't use them. + (window_bottom_gutter_height): ditto. + (window_left_gutter_width): ditto. + (window_right_gutter_width): ditto. + (Fsplit_window): ditto. + (Fwindow_pixel_edges): don't use border dimensions here. + + * scrollbar.c (update_scrollbar_instance): don't take gutters into account. + (update_scrollbar_instance): ditto. + + * redisplay.c (generate_modeline): don't take gutters into account. + (generate_modeline): ditto. + (redisplay_frame): small gutter display optimization. + + * redisplay-x.c (x_output_vertical_divider): don't take gutters into account. + + * redisplay-msw.c (mswindows_output_vertical_divider): don't take + gutters into account. + + * gutter.h (WINDOW_REAL_*_GUTTER_BOUNDS): remove bogus checks + for window position and type. + + * gutter.c (get_gutter_coords): fix for frame gutters. + (update_frame_gutters): update frame geometry if the gutters have + changed. + (init_frame_gutters): record current gutter geometries. + + * glyphs-msw.c (mswindows_subwindow_instantiate): remove unused + var. + (mswindows_widget_instantiate): ditto. + + * frame.h (struct frame): add current_gutter_bounds. + + * frame.c (change_frame_size_1): position window and minibuffer + appropriately taking into account the frame gutters. + + * frame-x.c: (x_initialize_frame_size): take into account the + frame gutters. + +2000-02-29 Stephen J. Turnbull + + * emacs.c (data-directory): Xref `locate-data-file' in docstring. + +2000-02-29 Stephen J. Turnbull + + * alloc.c (dumpopaquevec): Increase dimension for --with-canna. + +1999-12-30 Yoshiki Hayashi + + * file-coding.c (reset_decoding_stream): Clear previous + detection state when autodetect. + +2000-02-29 Didier Verna + + * extents.c (set_extent_glyph_1): don't require extents to be + attached. + +2000-02-27 Andy Piper + + * gutter.c (Fset_default_gutter_position): don't default left and + right gutter visibility to t. + (Fset_default_gutter_position): run + default-gutter-position-changed-hook. + (syms_of_gutter): add default-gutter-position-changed-hook. + +2000-02-26 Andy Piper + + * specifier.c (Fmake_specifier): add gutter references. + + * gutter.h (RAW_WINDOW_GUTTER): new macro. + + * lisp.h: declare Fvalid_plist_p. + + * gutter.c (gutter_geometry_changed_in_window): mark the modeline + as changed. + (default_gutter_visible_p_changed_in_window): invalidate gutter as + well as its visibility so that it gets reconstructed. + (construct_window_gutter_spec): new function. Construct a string + to be displayed in the gutter from a plist of strings. Take care + to only use elements that are declared as visible. + (calculate_gutter_size): use RAW_WINDOW_GUTTER instead of + WINDOW_GUTTER. + (gutter_validate): allow plists of strings in the specifier. + (gutter_specs_changed): construct the real_gutter from the gutter + specs using construct_window_gutter_spec. + (gutter_visible_validate): gutter-visible is a new specifier type. + (Fgutter_visible_specifier_p): new function for the new specifier. + (syms_of_gutter): declare gutter-visible and + Fgutter_visible_specifier_p. + (specifier_type_create_gutter): intitalize new gutter-visible + specifier. + (reinit_specifier_type_create_gutter): ditto. + (specifier_vars_of_gutter): use new specifier type for gutter + visibility. + (init_frame_gutters): construct real_gutter correctly. + (Fgutter_specifier_p): beef up documentation. + (Fgutter_size_specifier_p): ditto. + + * winslots.h: add real_gutter slots. + +2000-02-25 Andy Piper + + * device-msw.c: Be kind to older cygwin versions. From Raymond + Toy . + + * gui-msw.c (Fmswindows_shell_execute): Remove things unknown to + earlier cygwins. From Raymond Toy . + +2000-02-25 Martin Buchholz + + * elhash.c (MARK_OBJ): Practice macro hygiene. + +2000-02-24 Martin Buchholz + + * miscplay.c: s/__inline__/inline/g; + * glyphs-msw.c (set_mono_pixel): INLINE ==> static inline + (get_device_compdc): INLINE ==> static inline + * *.[ch]: Change INLINE to INLINE_HEADER globally. + find -name '*.h' | \ + xargs global-replace \ + 's/(^|(?<=[^A-Za-z0-9_]))INLINE((?=[^A-Za-z0-9_])|$)/INLINE_HEADER/g' + +2000-02-25 Andy Piper + + * window.c (window_top_frame_gutter_height): new function. + (window_top_window_gutter_height): ditto. + (window_top_gutter_height): use them. + (window_bottom_frame_gutter_height): new function. + (window_bottom_window_gutter_height): ditto. + (window_bottom_gutter_height): use them. + (window_left_window_gutter_width): new function. + (window_left_frame_gutter_width): ditto. + (window_left_gutter_width): use them. + (window_right_window_gutter_width): new function. + (window_right_frame_gutter_width): ditto. + (window_right_gutter_width): use them. + (window_pixel_height): new function. calulate window pixel height + with frame gutter involvement. + (Fsplit_window): calculate new sizes taking frame gutters into + account. + (window_char_height_to_pixel_height): don't include frame gutters. + (window_char_height): use window_pixel_height. + (window_pixheight): rename from window_pixel_height. + (change_window_height): use it. + (window_pixel_height_to_char_height): don't include frame gutters. + (window_char_width_to_pixel_width): ditto. + +2000-02-25 Andy Piper + + * glyphs.h (IMAGE_INSTANCE_FACE): glyph might be nil, don't crash + if it is. + +2000-02-24 Martin Buchholz + + * alloc.c (staticpro): + (staticpro_nodump): + (dumpstruct): + (dumpopaque): + (pdump_wire): + (pdump_wire_list): + (compact_string_chars): + (pdump_dump_wired): + Convert: if (foo) abort(); ==> assert (! foo); + + * eldap.c (Fldap_search_basic): + (Fldap_add): + (Fldap_modify): + (Fldap_delete): + Fix compiler warnings, and possible crashes if (random) return + value were to be used. + +2000-02-21 Kirill 'Big K' Katsnelson + + * device-msw.c: Workaround ResetDC failure. + + * frame-msw.c (msprinter_init_frame_3): Added an assertion before + applying a devmode. + + * redisplay-msw.c (get_frame_dc): Added start_page_p. + (mswindows_text_width): Do not start printer page. + + * console-msw.h (CHECK_MSGDI_DEVICE): Added this and friends. + + * glyphs-msw.c: Added image methods to msprinter console and + msprinter-specific image instantiation. + +2000-02-20 Mike Alexander + + * select-msw.c (Fmswindows_set_clipboard): GC protect more things + to avoid crashes when selection-sets-clipboard is on + (mswindows_own_selection): ditto + +2000-02-19 Kirill 'Big K' Katsnelson + + * glyphs-msw.c: + * redisplay-msw.c (get_frame_dc): + (get_frame_compdc): + * console-msw.h: + * device-msw.c (mswindows_init_device): + (mswindows_delete_device): + (msprinter_init_device): + (msprinter_delete_device): + * frame-msw.c (mswindows_init_frame_1): + (mswindows_delete_frame): + (msprinter_init_frame_3): + (msprinter_delete_frame): Move compatible DC to device object from + frame object, for both mswindows and msprinter. Only one at a time + is needed, it is a real waste to have one per frame! + +2000-02-23 Andy Piper + + * glyphs.c: add dynamic width and height elements. + (image_instance_equal): ditto. + + * glyphs-widget.c (widget_query_geometry): calculate width and + height dynamically if required. + (initialize_widget_image_instance): initialize dynamic dimensions. + (widget_instantiate): pick-up dynamic dimensions. + + * glyphs.h (struct Lisp_Image_Instance): add width and height for + dynamic determination. Add appropriate macros. + + * gutter.h (WINDOW_GUTTER_BORDER_WIDTH): make non-integer + dimensions safe. + (WINDOW_GUTTER_SIZE): ditto. + (WINDOW_GUTTER_SIZE_INTERNAL): ditto. + + * redisplay-msw.c (get_frame_compdc): gcc can't cope with this + inline. + (get_frame_dc): ditto. + + * redisplay.h (GLOBAL_RESET_CHANGED_FLAGS): don't reset faces + here. + +2000-02-23 Martin Buchholz + + * XEmacs 21.2.31 is released. + +2000-02-22 Ben Wing + + * ntheap.c (allocate_heap): Make sure `ptr' is initialized. + +2000-02-22 Andy Piper + + * glyphs-x.c (x_widget_instantiate): don't explicitly resize here. + +2000-02-21 Mike Sperber + + * .dbxrc: + * .gdbinit: + * Makefile.in.in: Remove obsolete EMACSBOOTSTRAP... environment + variables. + +2000-02-21 Mike Sperber + + * s/aix4.h: Declare getaddrinfo broken for AIX 4, which it is. + +2000-02-21 Martin Buchholz + + * XEmacs 21.2.30 is released. + +2000-02-20 Martin Buchholz + + Performance hacking. + * *.c (syms_of_*): + Add INIT_LRECORD_IMPLEMENTATION macros, paired with + DEFINE_LRECORD_IMPLEMENTATION macros in the same file. + * emacs.c (main_1): + * lisp.h (DEFUN): + * console.c (DEFVAR_CONSOLE_LOCAL_1): + * buffer.c (DEFVAR_BUFFER_LOCAL_1): + * symeval.h (DEFVAR_SYMVAL_FWD): + * symbols.c (guts_of_unbound_marker): + Make all c_readonly objects also lisp_readonly and marked for life. + * lrecord.h (struct lrecord_implementation): + Document flags better. + * lrecord.h (DEFINE_LRECORD_SEQUENCE_IMPLEMENTATION_WITH_PROPS): + * lrecord.h (DECLARE_LRECORD): + * lrecord.h (XSETRECORD): + * lrecord.h (RECORDP): + * lrecord.h (RECORD_TYPEP): + * lrecord.h (RECORD_MARKER): New. + * lrecord.h (error_check_*): + * lrecord.h (CONCHECK_NONRECORD): + * lrecord.h (MAKE_LRECORD_IMPLEMENTATION): + * lrecord.h (INIT_LRECORD_IMPLEMENTATION): New. + * lrecord.h (set_lheader_implementation): + * lrecord.h (enum lrecord_type): New. + * symeval.h (SYMBOL_VALUE_MAGIC_P): + * alloc.c (disksave_object_finalization_1): + * alloc.c (mark_object): + * alloc.c (lrecord_type_index): + * alloc.c (tick_lcrecord_stats): + * alloc.c (Fgarbage_collect): + * alloc.c (init_alloc_once_early): + * alloc.c (pdump_load): + * alloc.c (GC_CHECK_LHEADER_INVARIANTS): New. + * alloc.c (lrecord_type_index): Delete. + Make lisp object type indexes be constant. + Makes (byte-compile) 5% faster. + Put all marker functions into their own array. + Makes (garbage-collect) 5% faster. + Optimize SYMBOL_VALUE_MAGIC_P. + Makes (byte-compile) 2-3% faster. + * config.h.in (gc_checking_assert): New. + * alloc.c: Use gc_checking_assert(). + * .dbxrc: Make compatible with new object type implementation. + * .gdbinit: Make compatible with new object type implementation. + * alloc.c: Delete all symbols defined only for debugging, such as + Lisp_Type_Vector and lrecord_charset. + +2000-02-21 Andy Piper + + * gui-msw.c (Fmswindows_shell_execute): fix file location + problems. + + * buffer.c (Fkill_buffer): remove buffer from alist buffer + unshowing so that set_window_buffer doesn't undo + kill_buffer_hook's hard work. + + * glyphs-widget.c (tab_control_query_geometry): don't count the + first item when calculating geometry. + + * glyphs.c (map_subwindow): remove redundant code. + (update_frame_subwindows): be more circumspect about when to + update subwindows. + + * glyphs-x.c (x_update_widget): Properly fix sizing bug. Fix bug + when items haven't changed. Update faces if faces have changed as + well as just the widget face. + (x_tab_control_update): Update faces if faces have changed as well + as just the widget face. + +2000-02-21 Jonathan Harris + + * device-msw.c: (mswindows_delete_device): Remove redundant DDE + registration. + (build_syscolor_string): Use mswindows_color_to_string to try to + get a named color. + (mswindows_device_system_metrics): Reverse the foreground and + background colors so that they match the documentation. + + * objects-msw.c: (mswindows_X_color_map): tweak some values so + they match the default Windows palette. + (mswindows_color_to_string): New function. + +2000-02-21 Jonathan Harris + + * s/windowsnt.h: Only use __declspec(noreturn) with MSVC>=6. + +2000-02-18 Olivier Galibert + + * m/*, s/*: Removed obsolete DATA_SEG_BITS, PURE_SEG_BITS, + WORD_MACHINE, SIGN_EXTEND_CHAR and EXPLICIT_SIGN_EXTEND. + + * symbols.c (init_symbols_once_early): Removed obsolete + DATA_SEG_BITS related kludge. + (defvar_magic): Ditto. + + * malloc.c: Removed obsolete DATA_SEG_BITS + * ralloc.c: Ditto. + * mem-limits.h: Ditto. + + * Makefile.in.in: Removed obsolete HAVE_SHM + * emacs.c: Ditto. + +2000-02-13 Jonathan Harris + + * device-msw.c (mswindows_delete_device): Free DDE string + handles. + +2000-02-16 Kirill 'Big K' Katsnelson + + * keymap.c (get_keyelt): + * unexnt.c (unexec): + * vm-limit.c (memory_warnings): + * ntheap.c (recreate_heap): + * ntheap.h (UNINIT_PTR): + * select-msw.c (Fmswindows_get_clipboard): + (Fmswindows_set_clipboard): + * objects-msw.h (MSWINDOWS_BAD_HFONT): + * objects-msw.c: + * menubar-msw.c (displayable_menu_item): + * glyphs-msw.c: + * glyphs-msw.h (IMAGE_INSTANCE_MSWINDOWS_MASK): + * sysdep.c (sys_subshell): + * process-nt.c (nt_create_process): + * nt.c (normalize_filename): + (dostounix_filename): + (unixtodos_filename): + * ntproc.c (win32_executable_type): + * ntplay.c (play_sound_data_1): + (play_sound_file): + * editfns.c (get_home_directory): + * event-msw.c (struct winsock_stream): + (mswindows_dde_callback): + * device-msw.c (msprinter_init_device): + (msprinter_get_devmode_copy): Frobbed syntax frivolities. + + * toolbar-msw.c (mswindows_free_frame_toolbars): Paramters to + mswindows_clear_toolbar were swapped! + + * objects-msw.c:(colormap_t): + (fontmap_t): + * emacs.c (struct standard_args): Fixed const jumble. + + * glyphs-widget.c (update_widget): Fixed comparison notation. + + * event-msw.c (mswindows_dde_callback): Removed extraneous ';'. + + * s\windowsnt.h (DOESNT_RETURN): Defined to support the MSVC + __declspec(noreturn) syntax. + +2000-02-19 Martin Buchholz + + * eldap.c (Fldap_open): + (Fldap_search_basic): + (Fldap_add): + (Fldap_modify): + Use new coding system conversion macros. + +2000-01-06 Yoshiki Hayashi + + * console-tty.c (tty_init_console): Change MULE to FILE_CODING. + +1999-11-27 Oscar Figueiredo + + * eldap.h (Fldap_search) Renamed from Fldap_search_internal: + (Fldap_add, Fldap_modify, Fldap_delete): New functions + + * eldap.c (Qadd, Qreplace): New constant symbols + (Fldap_open): Use the LDAP_OPT_RESTART option to avoid + interruptions by XEmacs signals + Remove unnecessary calls to slow_down_interrupts and + speed_up_interrupts + (Fldap_search_basic): Renamed from Fldap_search_internal + Added new optional parameter VERBOSE that triggers the + display of progress messages + Remove unnecessary calls to slow_down_interrupts and + speed_up_interrupts + LDAP result code analysis rewritten + (Fldap_add, Fldap_modify, Fldap_delete): New functions + (syms_of_eldap): Define the new symbols and functions + + +2000-02-17 Martin Buchholz + + * realpath.c: Determine PATH_MAX maximally portably. + + * insdel.c (bytecount_to_charcount): Optimize. + The function used to be optimized for entirely ASCII sequences. + Now it is optimized for successive characters from the same + charset. This also wins big for _mostly_ ASCII sequences. + + * fileio.c (Ffile_truename): convert return from realpath() using + Qfile_name, not Qbinary. Fixes obvious bug with non-ASCII symlinks. + - Rewrite GCPROing slightly. + + * sysdep.c (sys_open): Do filename conversion, like all other + sys_* functions. Fixes bug: + (let ((file-name-coding-system 'iso-8859-2)) + (write-region x y latin2-name)) + ==> writes filename using internal encoding. + +2000-02-18 Martin Buchholz + + * buffer.c (DEFVAR_BUFFER_LOCAL_1): Turn on c_readonly. Always const. + * console.c (DEFVAR_CONSOLE_LOCAL_1): Turn on c_readonly. Always const. + * symeval.h (DEFVAR_SYMVAL_FWD): Turn on c_readonly. Always const. + * eval.c (lrecord_subr): Remove this_one_is_unmarkable. + * symbols.c (lrecord_symbol_value_forward): Remove this_one_is_unmarkable. + * symbols.c (guts_of_unbound_marker): Turn on c_readonly. + * lrecord.h (UNMARKABLE_LRECORD_HEADER_P): Delete. + (CONST_IF_NOT_DEBUG): Delete. + * alloc.c (this_one_is_unmarkable): Delete. + (mark_object): Don't check for this_one_is_unmarkable. Use the + c_readonly flag instead. + * lisp.h (DEFUN): Define a Lisp_Subr as c_readonly. + +2000-02-18 Jonathan Harris + + * event-msw.c (mswindows_drain_windows_queue): + (emacs_mswindows_handle_magic_event): Remove attempt to optimise + away redundant repaint events. + +2000-02-17 Andy Piper + + * redisplay.h: declare mark_redisplay_structs. + + * redisplay.c (redisplay_window): + (redisplay_frame): don't check subwindows_state_changed. + (mark_redisplay): mark gutters here. + + * glyphs.c: (instantiate_image_instantiator): always layout if we + haven't done so already. + (allocate_image_instance): don't mark as dirty. + (update_subwindow): bind inhibit_quit. + + * gutter.c (mark_gutters): new function. + + * glyphs-x.c (x_update_widget): Always resize to get round a + widget bug. + + * glyphs-msw.c (mswindows_tab_control_update): remove `;' that was + breaking absolutely everything. + + * gutter.h: declare mark_gutters. + +2000-02-16 Martin Buchholz + + * XEmacs 21.2.29 is released. + +2000-02-15 Olivier Galibert + + * fns.c (size_bit_vector): Fix computation of the size. + +2000-02-15 Martin Buchholz + + * *.[ch]: Change CONST to const globally. + find -name '*.[ch]' | \ + xargs global-replace \ + 's/(^|(?<=[^A-Za-z0-9_]))CONST((?=[^A-Za-z0-9_])|$)/const/g' + - Remove vestigial references to CONST_IS_LOSING + +2000-02-13 Jonathan Harris + + * event-msw.c (mswindows_drain_windows_queue): Remove hack to + bailout early on quit. Enqueue WM_PAINT events as XEmacs magic + events instead of dispatching them directly. + (mswindows_handle_paint): New function to do repainting. + (mswindows_wnd_proc): + (emacs_mswindows_handle_magic_event): Call above function. + +2000-02-13 Jonathan Harris + + * objects-msw.c (mswindows_create_font_variant): Return the new + font handle. + (initialize_font_instance): Get font metrics from the underlined + variant of the font to cope with the case where the underlined + font has a bigger descent. + +2000-02-08 Daiki Ueno + + * gui.c (gui_item_accelerator): Return the first underlined + character in item name. + +2000-02-11 Kirill 'Big K' Katsnelson + + * lisp.h: Added Qprinter. + + * general.c (syms_of_general): Initialized it. + + * redisplay-msw.c (get_frame_dc): Conditionally start a new page. + (get_frame_dc): + (get_frame_compdc): Made inline. + + * console.h (struct console_methods): Added eject_page method. + + * frame.h: Added FRAME_DISPLAY_P and friends. + Aligned backslahes in many macros in more readable fashion. + Added page_number to struct frame, and an accessor macro + for it. + + * defice.h: Added DEVICE_DISPLAY_P and friends. + + * device.c (Fdevice_printer_p): Used these. + + * frame.c (allocate_frame_core): Initialize page number. + (Fprint_job_page_number): + (Fprint_job_eject_page): Implemented. + + * frame-msw.c (msprinter_eject_page): Added method. + (msprinter_start_page): Added. + + * window.c (Fwindow_truncated_p): Fixed docstring. + (Fwindow_last_line_visible_height): Implemented. + +2000-02-09 Yoshiki Hayashi + + * frame.c (change_frame_size_1): Undo 2000-02-03 change. + +1999-12-20 Yoshiki Hayashi + + * syntax.c (scan_words): Always advance at least one character. + +2000-02-13 Andy Piper + + * redisplay.c (add_glyph_rune): call get_glyph_cachel_index here + to make sure the glyph is in the cachels. + + * glyphs.h (struct Lisp_Image_Instance): make layout_changed a + global image instance flag. + (IMAGE_INSTANCE_NEEDS_LAYOUT): new macro. + (XIMAGE_INSTANCE_NEEDS_LAYOUT): ditto. + + * glyphs.c (allocate_image_instance): set dirty bits correctly. + (Fset_image_instance_property): mark layout as changed. + (invalidate_glyph_geometry_maybe): mark layout as changed. + (glyph_width): use new NEEDS_LAYOUT macro. + (glyph_ascent): ditto. + (glyph_descent): ditto. + (glyph_height): ditto. + (image_instance_layout): mark layout as clean after laying out. + (update_subwindow): don't mark layout as clean here. + + * glyphs-x.h (IMAGE_INSTANCE_X_WIDGET_ID): undo C++ changes, they + should no longer be needed. + + * glyphs-x.c (x_update_widget): sanitize asserts. + (x_finalize_image_instance): sanitize assignment to widgets. + + * glyphs-widget.c (widget_instantiate): don't need to clear the + layout flag here. + +2000-02-13 Martin Buchholz + + * sysdep.c (getcwd): Use standard prototype. + * sysdep.h (getcwd): Use standard prototype. + + * fns.c (Fsubseq): Change parameters to more natural ANSI Lisp + (sequence, start, end). + Remove redundant type checking. + (Fmapconcat): Remove useless GCPRO, a wrong-headed attempt (in + view of `caller-protects') to avoid a crash where the real fix was + found elsewhere. + +2000-02-12 Martin Buchholz + + * glyphs-x.c (x_finalize_image_instance): Compile error fixes. + + * s/sol2.h: Remove feature macro initialization. + + * alloc.c (alloc_lcrecord): Add more type checking assertions. + (vector_hash): New. Code from internal_hash. + * lrecord.h: + Fix up allocation subsystem comments. + + * config.h.in: Add __EXTENSIONS__ for Solaris. + + * systime.h (EMACS_GETTIMEOFDAY): New. + (EMACS_GET_TIME): Use EMACS_GETTIMEOFDAY. + Remove Solaris-specific code. + Use void* for the (ignored) second arg for gettimeofday(). + + * elhash.c (hash_table_hash): Implement it, finally. + * elhash.c: Use hashcode_t. + + * linuxplay.c (sighandler): Fix prototypes to use SIGTYPE. + * sunplay.c (sighandler): Fix prototype to use SIGTYPE. + + * lisp.h (STRETCHY_STRUCT_SIZEOF): Delete. + * fns.c (size_bit_vector): + * alloc.c (size_vector): + (make_vector_internal): + (make_bit_vector_internal): + (sweep_bit_vectors_1): + Replace calls to STRETCHY_STRUCT_SIZEOF with offsetof expression. + +2000-02-10 Martin Buchholz + + * s/aix4.h: #define MAP_FAILED if sys/mman.h didn't. + Include strings.h to avoid warnings for bzero and strcasecmp. + +2000-02-10 Olivier Galibert + + * alloc.c: Move STRETCHY_STRUCT_SIZEOF from here... + * lisp.h (STRETCHY_STRUCT_SIZEOF): ...to here + + * fns.c (size_bit_vector): New. Declare bit vectors as a + sequence. + +2000-02-10 Olivier Galibert + + * symeval.h (struct symbol_value_magic): Remove "next" kludge and + use a value field instead. + (symbol_value_forward_forward): Use value field. + (DEFVAR_SYMVAL_FWD): Use value field. + (DEFVAR_SYMVAL_FWD_INT): Added. Dumps the int with dumpopaque. + (DEFVAR_INT): Use DEFVAR_SYMVAL_FWD_INT. + (DEFVAR_CONST_INT): Ditto. + (DEFVAR_BOOL): Ditto. + (DEFVAR_CONST_BOOL): Ditto. + (DEFVAR_INT_MAGIC): Ditto. + (DEFVAR_BOOL_MAGIC): Ditto. + + * symbols.c (guts_of_unbound_marker): Use value field. + * console.c (DEFVAR_CONSOLE_LOCAL_1): Ditto. + * buffer.c (DEFVAR_BUFFER_LOCAL_1): Ditto. + + * lisp.h: Declare dumpopaque and noninteractive1. + + * alloc.c (dumpopaque): Added. + (pdump_dump_opaquevec): Added. + (pdump): Call pdump_dump_opaquevec to dump opaque data. + (pdump_load): Reload opaque data. Sync noninteractive1 with + noninteractive. + +2000-02-10 Andy Piper + + * glyphs.c (image_instance_layout): if the size changes, mark it + as such. + + * redisplay-output.c (redisplay_output_layout): Update the + subwindow here. + (redisplay_output_subwindow): ditto. + + * glyphs.c (update_subwindow): make sure we reset flags for + layouts as well as everything else. + + * glyphs-widget.c (layout_layout): don't need to set the instances + dimensions here. + +2000-02-09 Martin Buchholz + + * device-x.c (x_init_device): Wrap calls to dll_* in HAVE_SHLIB, + not HAVE_DLOPEN, which is a lower-level thing. + + * .cvsignore: Ignore gmon.out + +2000-02-09 Hamish Macdonald + + * .cvsignore: Ignore portable dumper xemacs.dmp file + +2000-02-09 Andy Piper + + * redisplay-output.c (redisplay_output_layout): be more clever + about when we output based on the changed flags. + + * glyphs.h (struct image_instantiator_methods): add update_method. + (struct Lisp_Image_Instance): add changed flags. Declare new + macros for manipulating them. + + * glyphs.c (allocate_image_instance): renamed glyph -> parent. + (image_instance_parent_glyph): find an image_instance's parent + glyph or image_instance. + (image_instance_layout): mark the size as changed. + (set_image_instance_dirty_p): new function. mark an image + instance, plus all of its parents, as dirty. + (Fset_image_instance_property): use it. + (Fglyph_animated_timeout_handler): use it. + (update_subwindow): call update_widget and device methods for + update_subwindow. Mark all changed flags as clean. + (Fresize_subwindow): mark size as changed. + + * glyphs-x.c (x_finalize_image_instance): try and detect gc + failures. + (x_update_subwindow): only resize subwindows here. + (x_update_widget): new function. Update all changed properties of + a widget. + (x_resize_subwindow): deleted. + (x_widget_set_property): deleted. + (x_progress_gauge_set_property): deleted. + (x_progress_gauge_update): new function. Implement recorded + changes. + (x_tab_control_update): ditto. + (x_tab_control_set_property): deleted. + (console_type_create_glyphs_x): declare new functions. + (image_instantiator_format_create_glyphs_x): ditto. + + * glyphs-widget.c (widget_set_property): mark text changed. + (update_widget): new function. Update properties of a widget. + (widget_instantiate): for layouts make sure we set their + children's parent correctly. + (tab_control_set_property): new function. Record changes that will + take place under redisplay's control. + (progress_gauge_set_property): ditto. + (image_instantiator_progress_guage): declare new functions. + (image_instantiator_tab_control): ditto. + + * glyphs-msw.c (mswindows_update_subwindow): just do resizing here + now. + (mswindows_update_widget): new function. Update all properties on + a widget that have changed. + (mswindows_button_update): new function. Update a button's set + state. + (mswindows_tab_control_update): new function. Update the items in + a tab. + (mswindows_tab_control_set_property): deleted. + (mswindows_progress_gauge_update): new function. Update the + progress gauge's progress. + (mswindows_widget_set_property): deleted. This is all done + asynchronously now. + (mswindows_progress_gauge_set_property): ditto. + (console_type_create_glyphs_mswindows): declare new methods. + (image_instantiator_format_create_glyphs_mswindows): ditto. + + * frame-msw.c (msprinter_init_frame_1): Remove unused variables. + (msprinter_set_frame_properties): ditto. + + * console.h (struct console_methods): Add update_widget_method. + +2000-02-09 Andy Piper + + * gui-msw.c (Fmswindows_shell_execute): Make + mswindows-shell-execute industrial strength. + +2000-02-08 Martin Buchholz + + * lrecord.h: Make macro argument `props' match member function `plist'. + * fns.c (Fget): + * fns.c (Fput): + * fns.c (Fremprop): + * fns.c (Fobject_plist): + * alloc.c: + * symbols.c: + Object property list frobbing cleanup. + - Allow any lisp object (compared with `eq'), not just symbols, as + keys in object plists. + - Move symbol plist frobbing into symbols.c, where it belongs. + - Move string plist frobbing into alloc.c, where it belongs. + - Everything's an lrecord now, so no need to test for symbolp, etc. + - Fix up doc strings to refer to PROPERTY, not PROPNAME. + + * extents.c: Reorder code to remove declarations. + + * frame.h (store_in_alist): Remove useless declaration. + +2000-02-07 Martin Buchholz + + * event-Xt.c (x_has_keysym): Use XConvertCase only if available. + * config.h.in: Add HAVE_XCONVERTCASE. + +2000-02-07 Andy Piper + + * glyphs.c (image_instance_layout): undo 2000-01-29 change since + it breaks many things. + +2000-02-07 Jan Vroonhof + + * src/syntax.h (SYNTAX_START_P): Check whether the two chars + actually can start a common comment type. + * src/syntax.h (SYNTAX_END_P): ditto for end. + 2000-02-07 Martin Buchholz * XEmacs 21.2.28 is released. @@ -15,26 +9878,26 @@ * minibuf.c (echo_area_append): Workaround egcs-20000131 c++ compiler bug - * ExternalShell.c: - * ExternalClient.c: - * EmacsShell-sub.c: - * EmacsManager.c: - * EmacsFrame.c: + * ExternalShell.c: + * ExternalClient.c: + * EmacsShell-sub.c: + * EmacsManager.c: + * EmacsFrame.c: Use consistent style for specifying X resources. * symbols.c (Fset): Further implement SYMVAL_LISP_MAGIC. This makes (dontusethis-set-symbol-value-handler) actually usable. * lrecord.h (lrecord_decription_type): - * alloc.c (pdump_register_sub): - (pdump_dump_data): - (pdump_reloc_one): + * alloc.c (pdump_register_sub): + (pdump_dump_data): + (pdump_reloc_one): Add XD_LISP_OBJECT_ARRAY to describe multiple Lisp_Objects. Comply with XEmacs coding style. All lrecord descriptions updated to use XD_LISP_OBJECT with 2 args, and XD_LISP_OBJECT_ARRAY with 3 args. - * keymap.c (Faccessible_keymaps): + * keymap.c (Faccessible_keymaps): Make (accessible-keymaps map "\C-h") do the Right Thing. Make (accessible-keymaps map []) do the Right Thing. Make (accessible-keymaps map "") do the Right Thing. @@ -48,8 +9911,8 @@ 2000-01-30 Martin Buchholz * redisplay.c (init_redisplay): Fix small memory leak. - * elhash.h: - * elhash.c (pdump_reorganize_hash_table): + * elhash.h: + * elhash.c (pdump_reorganize_hash_table): Rename from reorganize_hash_table. Change prototype. Reuse the original memory for hentries. Save 100k. * alloc.c (PDUMP_READ): new macro. @@ -85,10 +9948,10 @@ ifdefs in readable order. (NEED_STARTS): Do not force NEED_STARTS when PDUMPing. (start_of_text): - (end_of_text): + (end_of_text): (end_of_data): Do not compile in if using PDUMP. - * symsinit.h: Protptyped vars_of_nt(). + * symsinit.h: Prototyped vars_of_nt(). * ntproc.c (windows9x_p): Added, instead of os_subtype. (find_child_console): Use it. @@ -106,7 +9969,7 @@ (fstat, stat): Do not compile in if using MSVC 5.0 and above - stat has been fixed in the C runtime. (vars_of_nt): Added, defined the nt_fake_unix_uid variable there. - + * file-coding.c (struct file_coding_dump): Do not define ucs_to_mule_table in the struct if not MULE. (struct struct lrecord_description fcd_description_1): Do not dump @@ -153,7 +10016,7 @@ * faces.c: Moved 'left-margin and 'right-margin defsymbols to general.c. - * console-msw.h: Added more msprinter device private slots. + * console-msw.h: Added more msprinter device private slots. 2000-02-01 Kirill 'Big K' Katsnelson @@ -171,7 +10034,7 @@ * glyphs.h: Prototyped it. * redisplay.c (add_glyph_rune): Call it. - (redisplay_window): Reset glyphs cachels when frame faces has + (redisplay_window): Reset glyphs cachels when frame faces have changed, thus forcing recomputation of built-in border glyphs. 2000-01-30 Martin Buchholz @@ -284,7 +10147,7 @@ only. * console-msw.h: Moved a few function prototypes here from - event-msw.c. + event-msw.c. * gui-msw.c (mswindows_handle_gui_wm_command): Changed the ID parameter from unsigned short to unsigned long. @@ -292,8 +10155,8 @@ 2000-01-27 URA Hiroshi - * sysdep.c (init_system_name): - process-unix.c (unix_canonicalized_host_name): + * sysdep.c (init_system_name): + process-unix.c (unix_canonicalized_host_name): Don't call freeaddrinfo() if getaddrinfo() fails. * process-unix.c (unix_open_unix_network_stream): @@ -301,7 +10164,7 @@ 2000-01-27 Martin Buchholz - * buffer.c (reinit_vars_of_buffer): + * buffer.c (reinit_vars_of_buffer): The right place to initialize conversion_in_dynarr and conversion_out_dynarr. @@ -462,7 +10325,7 @@ file-name-coding-system, terminal-coding-system, and keyboard-coding-system magical variables that are equivalent to defining the corresponding coding system aliases. - + * file-coding.c (Fcoding_system_canonical_name_p): New function. * file-coding.c (Fcoding_system_alias_p): New function. * file-coding.c (Fcoding_system_aliasee): New function. @@ -500,13 +10363,13 @@ xnew_array_and_zero, thereby simplifying the code. * mule-charset.c (make_charset): Make sure entire object is - intialized, to avoid Purify warnings. + initialized, to avoid Purify warnings. * alloc.c (resize_string): Fix unlikely crash with big strings. 2000-01-24 Martin Buchholz - * realpath.c (xrealpath): + * realpath.c (xrealpath): Don't call getwd(). 2000-01-25 Martin Buchholz @@ -550,7 +10413,7 @@ 2000-01-24 Martin Buchholz - * glyphs-widget.c (layout_query_geometry): + * glyphs-widget.c (layout_query_geometry): (layout_layout): Use correct types for gheight, gwidth. 2000-01-24 Martin Buchholz @@ -559,7 +10422,7 @@ 2000-01-23 Martin Buchholz - * alloc.c (make_float): Make sure entire object is intialized, to + * alloc.c (make_float): Make sure entire object is initialized, to avoid Purify warnings. (pdump_register_sub): Remove useless assignment. (pdump): Use xmalloc, not malloc. @@ -567,11 +10430,11 @@ 2000-01-23 Kirill 'Big K' Katsnelson - * callproc.c: - * dired-msw.c: - * fileio.c: - * process-nt.c: - * redisplay-msw.c: + * callproc.c: + * dired-msw.c: + * fileio.c: + * process-nt.c: + * redisplay-msw.c: * sysdep.c: Removed redundant #include 2000-01-22 Kirill 'Big K' Katsnelson @@ -579,7 +10442,7 @@ * frame.c (delete_frame_internal): Do not delete device when its implementation so declares. (delete_frame_internal): Set device selected frame to nil when - last frame goes away. + last frame goes away. * device-msw.c (msprinter_device_system_metrics): Implemented. (mswindows_device_system_metrics): Added 'device-dpi property. @@ -646,24 +10509,24 @@ (image_instantiator_tab_control): (image_instantiator_labels): (image_instantiator_layout): ditto. - (image_instantiator_format_create_glyphs_widget): Call preceeding + (image_instantiator_format_create_glyphs_widget): Call preceding functions. 2000-01-22 Martin Buchholz * process.c (Fset_process_coding_system): - * device-x.c (Fx_keysym_hash_table): + * device-x.c (Fx_keysym_hash_table): Docstring fixes. * lstream.c (Lstream_write): Return documented value, not 0. - * fileio.c (directory_file_name): - (Fsubstitute_in_file_name): - (Fsubstitute_insert_file_contents_internal): + * fileio.c (directory_file_name): + (Fsubstitute_in_file_name): + (Fsubstitute_insert_file_contents_internal): (Fwrite_region_internal): * emacs.c: * sysdep.c: - * getloadavg.c: + * getloadavg.c: * systty.h: Remove vestigial APOLLO-conditional code. @@ -688,7 +10551,7 @@ * miscplay.h: Add guard macros. * *.h: Use consistent C-standards-approved guard macro names. - * opaque.c (make_opaque): Switch parameter order. + * opaque.c (make_opaque): Switch parameter order. * opaque.h (make_opaque): Switch parameter order. Update all callers. * buffer.h (MAKE_MIRROR_TRT_TABLE): Use symbolic constant OPAQUE_CLEAR.