1999-06-03 SL Baur * config.h.in: * emacs.c: Implement x.y.z version numbers From Jan Vroonhof 1999-05-20 MORIOKA Tomohiko * mule-charset.c (complex_vars_of_mule_charset): Registry of japanese-jisx0208-1978 should not match with "jisx0208.1983" nor "jisc6226.1983". 1999-06-03 SL Baur * frame-x.c: * device-x.c: rename session option to wmcommand. From Oliver Graf 1999-05-27 Hrvoje Niksic * fns.c (Fsubstring): Don't traverse the same region twice with charcount_to_bytecount(). 1999-06-03 SL Baur * m/alpha.h (SYSTEM_MALLOC): Fix indented preprocessor directive garbage. * s/decosf4-0.h: Defining ORDINARY_LINK here is redundant (and it doesn't really work as is implied by the commentary). Don't define SYSTEM_MALLOC so the old GNU malloc can be used. 1999-06-02 SL Baur * symsinit.h: Declare vars_of_ntproc. * emacs.c (main_1): Call it. * ntproc.c (syms_of_ntproc): Move variable initializations from here ... (vars_of_ntproc): ... to here [new function]. * file-coding.c (syms_of_file_coding): Rename. (vars_of_file_coding): Ditto. (complex_vars_of_file_coding): Ditto. * symsinit.h: Rename *_mule_coding to *_file_coding. * emacs.c (main_1): Call them by the proper name. * device-msw.c (syms_of_device_mswindows): Move variable initializations from here ... (vars_of_device_mswindows): ... to here. * chartab.c (vars_of_chartab): New function. * symsinit.h: New function, vars_of_chartab. * emacs.c (main_1): Call it. * mule-canna.c (syms_of_mule_canna): Move CANNA initialization ... (vars_of_mule_canna): ... to here. * mule-ccl.c (vars_of_mule_ccl): New function. Move variable initializations out of syms_of_mule_ccl. * symsinit.h: Declare new function vars_of_mule_ccl. * emacs.c (main_1): Call it. 1999-05-27 Hrvoje Niksic * fns.c (base64_decode_1): Ignore whitespace. 1999-05-27 Hrvoje Niksic * mule-charset.c (Fmake_char): Strip the eighth bit off ARG1 and ARG2. 1999-05-21 Andy Piper * xselect.c: deleted. * symsinit.h: declare select initialisation. * select.h: new file. declare commonly used select functions and variables. * select.c: new file. generalised from xselect.c. (clean_local_selection_data): moved from xselect.c. (get_local_selection): ditto. device specific pieces called via a devmeth. (handle_selection_clear): ditto. (Fown_selection_internal): renamed and generalised from Fx_own_selection_internal. moved from xselect.c. (Fdisown_selection_internal): ditto. (Fselection_owner_p): ditto. (Fselection_exists_p): ditto. (Fget_selection_internal): ditto. (syms_of_select): new function. QXXXX values moved from xselect.c (vars_of_select): new function. selection_converter_alist, lost_selection_hooks moved and renamed from xselect.c * select-x.c: renamed from xselect.c. (x_own_selection): converted to device specific. non-X-specific bits moved to select.c. (x_get_foreign_selection): ditto. (x_disown_selection): ditto. (x_selection_exists_p): ditto. (console_type_create_select_x): new function. * select-msw.c (mswindows_own_selection): new device method to set the clipboard when we 'own' the selection. (mswindows_get_foreign_selection): new device method to get the clipboard. (mswindows_disown_selection): new device method to delete the selection when we 'disown' it. (console_type_create_select_mswindows): new function. * emacs.c (main_1): add select to things to initialise. * console.h (struct console_methods): new console methods for selection. * Makefile.in.in (x_objs): xselect.c renamed to select-x.c 1999-05-20 Hrvoje Niksic * print.c (long_to_string): Install a faster version. 1999-05-16 Andy Piper * ntproc.c (syms_of_ntproc): default win32-start-process-share-console to t. 1999-05-14 Hrvoje Niksic * config.h.in: Do it here. * bytecode.c: Don't define ERROR_CHECK_TYPECHECK here. 1999-05-14 Andy Piper * toolbar-msw.c (mswindows_output_toolbar): hash on something hashable. 1999-05-14 XEmacs Build Bot * XEmacs 21.2.14 is released 1999-05-12 Andy Piper * ntproc.c (sys_spawnve): kludge argv[0] in a MS compatible way. 1999-05-11 Gunnar Evermann * emacs.c (Frun_emacs_from_temacs): (re)alloc natgs+2 entries for run_temacs_argv array -- fixes random memory corruption crash 1999-05-12 Jan Vroonhof * window.c (Fcurrent_window_configuration): Save minibuffer height; * window.c (set_window_configuration): use it. 1999-05-10 Robert Pluim * lisp.h (NNUNGCPRO): fix typo in name of DEBUG_GCPRO version 1999-04-21 Jan Vroonhof * redisplay.c (redisplay_window): Do not put data in the line start cache if it is not guaranteed to be correct 1999-04-02 Jan Vroonhof * window.c (struct window_config): Removed frame size members. (window_config_equal): No longer compare frame sizes. (Fset_window_configuration): Resize old top window to fit in the current frame directly, no longer use a fake frame resize. (Fcurrent_window_configuration): No longer save frame size 1999-05-11 Andy Piper * ntproc.c (sys_spawnve): actually assign argv[0] instead of the first character. 1999-05-10 Hrvoje Niksic * sysdep.c (init_system_name): If gethostname gives a proper domain name, don't look further for one. 1999-05-09 Hrvoje Niksic * symbols.c (Fintern): Avoid frequent XSYMBOL (foo). (Fintern_soft): Accept a symbol argument. 1999-05-06 Hrvoje Niksic * symbols.c (Fintern): ...do it here. * lread.c (read_atom): Don't handle keywords here. 1999-05-06 Hrvoje Niksic * symbols.c (reject_constant_symbols): Just use SYMBOL_IS_KEYWORD. 1999-05-03 Olivier Galibert * lisp.h (SYMBOL_IS_KEYWORD): A symbol can be a keyword only if it is interned in the main obarray. 1999-04-23 Gunnar Evermann * menubar-x.c (pre_activate_callback): set accelerator field in "No menu" entries to nil. Avoid crash in command_builder_operate_menu_accelerator 1999-05-03 Olivier Galibert * symeval.h (symbol_value_forward_lheader_initializer): Ditto. * lisp.h (DEFUN): Fix lrecord header initialisation. 1999-05-02 Andy Piper * objects-msw.c (mswindows_font_instance_truename): add a ';'. * ntproc.c (sys_kill): cast using MS mandated defines. 1999-04-29 Andy Piper * m/intel386.h: remove redundant definitions. * s/mingw32.h: new header for mingw32. * unexnt.c: (open_input_file): function moved to nt.c. (close_file_data): ditto. (rva_to_section): function moved to ntproc. * symsinit.h: declare syms_of_ntproc(); * objects-msw.c (mswindows_font_instance_truename): new function. * ntproc.c: remove many warnings. (_sys_read_ahead): moved from nt.c and made static. (rva_to_section): moved from unexnt.c but not defined under mingw32. (win32_executable_type): implement what we can for mingw32 headers. (sys_spawnve): fix bad MULE/GCPRO bug in filename handling. * ntheap.h: remove declarations of functions that are now static. * ntheap.c: support static heap. * nt.h: conditionalise X_OK definition. * nt.c: eliminate many warnings and support mingw32. (open_input_file): function moved from unexnt.c and made static (close_file_data): ditto. (_sys_read_ahead): moved to ntproc.c * emacs.c: make sure syms_of_ntptroc gets called under windows. * console-msw.h: support mingw32. * getloadavg.c: ditto. * ntplay.c: ditto. * sysdep.c: ditto. * sysdir.h: ditto. * systime.h: ditto. * systty.h: ditto. * config.h.in: dont turn on DEBUG_ENCAPSULATION by default because some systems don't have all of the encapsulated system calls. * callproc.c: warning elimination. * dired-msw.c: ditto. * process-nt.c: ditto. * realpath.c: ditto. * Makefile.in.in: tweak : and ; for building under mswindows. 1999-04-26 Michael Harnois * eldap.c (allocate_ldap): Adapt to the new semantics of alloc_lcrecord_type(). 1999-03-16 MORIOKA Tomohiko * file-coding.c (DECODE_HANDLE_END_OF_CONVERSION): fixed. 1998-09-04 MORIOKA Tomohiko * Delete mule-coding.c and mule-coding.h because they are not used. 1999-04-22 Gunnar Evermann * objects.c (print_font_instance): Check for NILP(f->device), i.e. Vthe_null_font_instance. (font_instance_truename_internal): ditto. (Ffont_instance_properties): ditto. 1999-04-22 Olivier Galibert * lrecord.h (DECLARE_LRECORD): lrecord_implementation isn't an array anymore. 1999-04-22 Hrvoje Niksic * Makefile.in.in (tests): Don't mention tests explicitly -- makes it easier to add new ones. 1999-04-22 Hrvoje Niksic * symbols.c (reject_constant_symbols): Ditto. (init_symbols_once_early): Ditto. * print.c (print_symbol): Don't use ->obarray. * symbols.c (Funintern): Ditto. * alloc.c (Fmake_symbol): Don't set ->obarray. * lisp.h (struct Lisp_Symbol): Removed .obarray field. * symbols.c (init_symbols_once_early): Removed Vpure_uninterned_symbol_table. (Fintern): Don't store to ->obarray field. 1999-04-22 Hrvoje Niksic * data.c (vars_of_data): Default debug_issue_ebola_notices to 0. (eq_with_ebola_notice): Remove abracadabra support. 1999-04-11 Oscar Figueiredo * eldap.c (Fldap_search_internal): Add a new parameter `withdn' to retrieve the distinguished names of entries 1999-03-08 Martin Buchholz * lread.c (read_escape): Make hex escapes read only two hex digits. 1999-04-05 Olivier Galibert * Makefile.in.in: Remove puresize-adjust.h and recursive makes. * make-src-depend: Remove puresize-adjust.h. * src-headers: Remove puresize-adjust.h. * config.h.in: Kill everything purespace/gung-ho related. * dbxrc: Make gung-ho mandatory. * gdbinit: Ditto. * lrecord.h: Make gung-ho mandatory. Remove pure flag and add c_readonly and lisp_readonly. Remove implementation arrays. (C_READONLY_RECORD_HEADER_P): Added. (LISP_READONLY_RECORD_HEADER_P): Added. (SET_C_READONLY_RECORD_HEADER): Added. (SET_LISP_READONLY_RECORD_HEADER): Added. * lisp.h: Kill everything purespace/non gung-ho related. (CHECK_C_WRITEABLE): Added. (CHECK_LISP_WRITEABLE): Added. (C_READONLY): Added. (LISP_READONLY): Added. * lisp-union.h: Make gung-ho mandatory. * lisp-disunion.h: Ditto. * alloc.c: Kill everything purespace/non gung-ho related. Fix all set_lheader_implementation calls. (c_readonly): Added. (lisp_readonly): Added. (make_string_nocopy): Added. (Fpurecopy): Changed to do nothing. Kept the old documentation for reference purposes for the next patches. (sweep_lcrecords_1): Don't free C readonly lcrecords. (sweep_bit_vectors_1): Don't free C readonly bitvectors. (SWEEP_FIXED_TYPE_BLOCK): Don't free C readonly lrecords. * fns.c: Make gung-ho mandatory. (Fput): CHECK_IMPURE -> CHECK_LISP_WRITEABLE. (Fremprop): Ditto. (Ffillarray): Ditto. * data.c: Make gung-ho mandatory. (pure_write_error): Removed. (c_write_error): Added. (lisp_write_error): Added. (Fsetcar): CHECK_IMPURE -> CHECK_LISP_WRITEABLE. (Fsetcdr): Ditto. (Faset): Ditto. * symbols.c: Make gung-ho mandatory. make_pure_pname -> make_string or make_string_nocopy. Fix various alloc_lcrecord_type. * lread.c: Remove everything purespace related. (Flocate_file_clear_hashing): purified -> c_readonly. (locate_file): Ditto. (read_atom): make_pure_pname -> make_string. * emacs.c (Frun_emacs_from_temacs): Remove purespace stats reporting. (Fdump_emacs): Ditto. * print.c (print_internal): Make gung-ho mandatory. * ntheap.c (sbrk): Ditto. * mem-limits.h (EXCEEDS_LISP_PTR): Ditto * symeval.h (symbol_value_forward_lheader_initializer): Ditto. * sheap.c (more_static_core): Remove puresize-adjust.h from message. * syntax.c (complex_vars_of_syntax): make_pure_string -> make_string_nocopy. * keymap.c (make_keymap): Fix alloc_lcrecord_type. (vars_of_keymap): make_pure_string -> make_string_nocopy. * events.c (deinitialize_event): Fix set_lheader_implementation. (zero_event): Ditto. * specifier.c (make_specifier_internal): Fix alloc_lcrecord. * menubar-x.c (set_frame_menubar): Fix alloc_lcrecord_type. * mule-charset.c (make_charset): Ditto. * console.c (allocate_console): Ditto. (complex_vars_of_console): Ditto. * file-coding.c (allocate_coding_system): Ditto. * device.c (allocate_device): Ditto * gui-x.c (gcpro_popup_callbacks): Ditto. * extents.c (allocate_extent_auxiliary): Ditto. (allocate_extent_info): Ditto. (copy_extent): Ditto. * glyphs.c (allocate_image_instance): Ditto. (allocate_glyph): Ditto. * frame.c (allocate_frame_core): Ditto. * database.c (allocate_database): Ditto. * tooltalk.c (make_tooltalk_message): Ditto. (make_tooltalk_pattern): Ditto. * rangetab.c (Fmake_range_table): Ditto. (Fcopy_range_table): Ditto. * process.c (make_process_internal): Ditto. * chartab.c (Fmake_char_table): Ditto. (make_char_table_entry): Ditto. (copy_char_table_entry): Ditto. (Fcopy_char_table): Ditto. * elhash.c (make_general_lisp_hash_table): Ditto. (Fcopy_hash_table): Ditto. * buffer.c (allocate_buffer): Ditto. (complex_vars_of_buffer): Ditto. * event-stream.c (allocate_command_builder): Ditto. * objects.c (Fmake_color_instance): Ditto. (Fmake_font_instance): Ditto. (vars_of_objects): Ditto. * toolbar.c (update_toolbar_button): Ditto. * window.c (allocate_window): Ditto. (make_dummy_parent): Ditto. (Fcurrent_window_configuration): Fix alloc_lcrecord. (vars_of_window): Fix make_lcrecord_list. * faces.c (allocate_face): Fix alloc_lcrecord_type. pure_list -> Flist. * lstream.c (Lstream_new): Fix make_lcrecord_list. * opaque.c (make_opaque): Fix alloc_lrecord. (make_opaque_list): Fix alloc_lrecord_type. 1999-04-19 Hrvoje Niksic * process.c (Fstart_process_internal): Ditto. * ntproc.c (sys_spawnve): Use Vlisp_EXEC_SUFFIXES when calling locate_file(). * glyphs-x.c (x_locate_pixmap_file): Ditto. * glyphs-msw.c (mswindows_locate_pixmap_file): Fix call to locate_file(). * emodules.c (vars_of_module): New variable Vmodule_extensions. (emodules_load): Use it when calling locate_file(). * emacs.c (main_1): Use Vlisp_EXEC_SUFFIXES when calling locate_file(). * callproc.c: Vlisp_EXEC_SUFFIXES: New variable. (vars_of_callproc): Initialize it. (Fcall_process_internal): Use it when calling locate_file(). * alloc.c (disksave_object_finalization): Use Flocate_file_clear_hashing(). * lread.c (Flocate_file_clear_hashing): Clear all hasing when given `t' as argument. 1999-04-18 Hrvoje Niksic * lread.c (locate_file): Expand `pathel' when appropriate. (Flocate_file_clear_hashing): Expand path elements. (Flocate_file_clear_hashing): Use Vlocate_file_hash_table. * dired.c (make_directory_hash_table): Create the hash-table only if the directory open is successful. * lread.c (decode_mode_1): New function. (decode_mode): Ditto. (Flocate_file): Use them. (Flocate_file): Expand FILENAME. (locate_file_map_suffixes): New function. (locate_file_in_directory_mapper): New function. (locate_file_in_directory): Use locate_file_in_directory_mapper() and locate_file_map_suffixes(). (locate_file_construct_suffixed_files): Use locate_file_map_suffixes(). (locate_file_without_hash): Don't GCPRO path. (Flocate_file_clear_hashing): Use EXTERNAL_LIST_LOOP. (syms_of_lread): Remove Qlocate_file_hash_table. (locate_file_find_directory_hash_table): Use Vlocate_file_hash_table. (locate_file_refresh_hashing): Ditto. * lread.c: Renamed read_objects to Vread_objects. 1999-04-16 Olivier Galibert * mule-charset.c: Generally resync with fsf 20.3 charset interface. (make_charset): Add long and short name. Use id instead of leading byte. (Fmake_charset): Ditto. (Fmake_reverse_direction_charset): Ditto. (Fcharset_property): Ditto. (Fcharset_short_name): Added. (Fcharset_long_name): Added. (Fcharset_description): Renamed from charset-doc-string. (syms_of_mule_charset): Synced symbols. (complex_vars_of_mule_charset): Synced charsets. * mule-charset.h: Removed leading byte (uses id instead), added short and long name. 1999-04-15 Hrvoje Niksic * file-coding.c (Fdefine_coding_system_alias): New function. 1999-04-08 Olivier Galibert * mule-charset.c (complex_vars_of_mule_charset): Allow all iso8859 and -ascii fonts for displaying ascii instead of iso8859-1 only. 1998-12-14 Hrvoje Niksic * extents.c (set_extent_glyph_1): Make sure that the glyph we attach to the extent is valid. 1998-12-12 Hrvoje Niksic * dired.c (user_name_completion): Mule-ize. (user_name_completion): Use xmalloc/xrealloc/xfree. (user_name_completion): Use DO_REALLOC. (user_name_completion): Cut down the number of static variables; use a structure. (user_name_completion): Username completion is always case-sensitive. 1998-12-06 Hrvoje Niksic * fns.c (base64_decode_1): Remove COUNTER. (base64_decode_1): Accept CRLF in addition to CR. (base64_decode_1): Disallow a stray character after final EOF; the check was probably a remnant of buggy recode code. 1998-12-05 Hrvoje Niksic * fns.c (init_provide_once): Provide `base64'. 1998-12-04 Hrvoje Niksic * fns.c (XMALLOC_UNBIND): Include SPECCOUNT argument, for clarity. (Fbase64_encode_region): If buffer is read-only, bail out early. (Fbase64_decode_region): Ditto. (Fbase64_encode_region): Initialize SPECCOUNT to pacify the compiler. (Fbase64_encode_string): Ditto. (Fbase64_decode_region): Ditto. (Fbase64_decode_string): Ditto. 1998-11-25 Hrvoje Niksic * dired.c (Fdirectory_files): Remove redundant code. 1999-03-05 Philip Aston * frame-msw.c Make raise-frame restore minimised windows. 1999-03-05 Philip Aston * device-msw.c: Fix DEFVAR format - Death to phantom quote, and add magic newline. 1999-03-05 Philip Aston * toolbar-msw.c Consider captions when deciding whether to rebuild toolbar. This fixes the initial toolbar display for those of us who don't like captions. These patches applied by Andy Piper. 1999-03-12 XEmacs Build Bot * XEmacs 21.2.13 is released 1999-03-12 SL Baur * file-coding.c: Guard ucs table initialization with ifdef MULE. 1999-03-10 Stephen J. Turnbull * file-coding.c: docstring and comment improvements. (decode_ucs4) flag possible data loss with comment. 1999-03-10 Martin Buchholz * file-coding.c (Fset_ucs_char): add CHECK_INT, CHECK_CHAR (ucs_to_char): (Fucs_char): (Fset_char_ucs): (decode_coding_ucs4): (encode_coding_ucs4): (detect_coding_utf8): (decode_coding_utf8): (encode_utf8): (encode_coding_utf8): Add CHECK_* macros where needed to avoid crashes. #ifdef out all composite character support using #ifdef ENABLE_COMPOSITE_CHARS Use normal XEmacs coding standards. Fix docstrings. Remove CODING_STREAM_COMPOSE, CODING_STREAM_DECOMPOSE. 1998-09-08 MORIOKA Tomohiko * file-coding.c (make-coding-system): Add description about `ucs-4' and `utf-8'. (detection_state): Modify to implement ucs-4 and utf-8. (detect_coding_type): Likewise. (detect_coding_ucs4): New implementation. (detect_coding_utf8): New implementation. (encode_utf8): fixed. (syms_of_mule_coding): Rename `ucs4' and `utf8' to `ucs-4' and `utf-8'. 1998-09-08 MORIOKA Tomohiko * file-coding.c (mule_char_to_ucs4): Encode 94x94 chars in ISO 2022 registry to private area. 1998-09-07 MORIOKA Tomohiko * file-coding.c (encode_utf8): New function. (encode_coding_utf8): New implementation. 1998-09-07 MORIOKA Tomohiko * file-coding.c (ucs_to_mule_table): New variable; abolish `Vucs_to_mule_table' (mule_to_ucs_table): renamed from `Vmule_to_ucs_table'. (set-ucs-char): New function. (ucs_to_char): New function. (ucs-char): New function. (set-char-ucs): New function. (char-ucs): New function. (decode_ucs4): Use `ucs_to_char'. (complex_vars_of_mule_coding): Abolish `ucs-to-mule-table' and `mule-to-ucs-table'. 1998-09-06 MORIOKA Tomohiko * chartab.h: EXFUN `Fget_char_table'. * file-coding.c (encode_ucs4): New function. (encode_coding_ucs4): Use `encode_ucs4'. 1998-09-06 MORIOKA Tomohiko * file-coding.c (decode_coding_ucs4): New implementation. 1998-09-06 MORIOKA Tomohiko * file-coding.c (decode_coding_ucs4): fixed. * file-coding.c (Vmule_to_ucs_table): New variable. (mule_char_to_ucs4): New function. (encode_coding_ucs4): New implementation. (complex_vars_of_mule_coding): Define variable `mule-to-ucs-table'. 1998-09-06 MORIOKA Tomohiko * file-coding.c (decode_coding_utf8): New implementation. 1998-09-06 MORIOKA Tomohiko * file-coding.c (decode_coding_utf8): fixed. 1998-09-06 MORIOKA Tomohiko * file-coding.c (Vucs_to_mule_table): New variable. (decode_ucs4): Refer `Vucs_to_mule_table'. (complex_vars_of_mule_coding): Define variable `ucs-to-mule-table'. 1998-09-04 MORIOKA Tomohiko * file-coding.c (detect_coding_ucs4): New function (not implemented yet). (decode_coding_ucs4): New function. (encode_coding_ucs4): New function (not implemented yet). (detect_coding_utf8): New function (not implemented yet). (decode_coding_utf8): New function. (encode_coding_utf8): New function (not implemented yet). (make-coding-system): New type `ucs4' and `utf8'. (coding-system-type): Likewise. (detection_state): Add `ucs4' and `utf8'. (detect_coding_type): Likewise. (mule_decode): Use `decode_coding_ucs4' and `decode_coding_utf8'. (mule_encode): Use `encode_coding_ucs4' and `encode_coding_utf8'. (decode_ucs4): New function (very incomplete). (syms_of_mule_coding): Add `ucs4' and `utf8'. * file-coding.h: Add definitions for UCS-4 and UTF-8. 1999-03-08 Martin Buchholz * mule-charset.c: (non_ascii_valid_char_p): (lookup_composite_char): (composite_char_string): (make-composite-char): (composite-char-string): (syms_of_mule_charset): (complex_vars_of_mule_charset): * mule-charset.h (LEADING_BYTE_COMPOSITE): (CHAR_LEADING_BYTE): (MAKE_CHAR): * file-coding.h (CODING_STATE_COMPOSITE): (CODING_STATE_ISO2022_LOCK): (iso_esc_flag): (LEADING_BYTE_COMPOSITE): * file-coding.c (struct iso2022_decoder): (decoding_closer): (reset_iso2022): (parse_iso2022_esc): (encode_coding_iso2022): #ifdef out all composite character support using #ifdef ENABLE_COMPOSITE_CHARS * alloc.c: Define lrecord_coding_system only if ! FILE_CODING 1999-03-04 Takeshi YAMADA * fns.c (Fbase64_encode_string): Calculate `allength' in the same way of `Fbase64_encode_region'. 1999-02-18 Katsumi Yamaoka * fns.c (base64_encode_1): Don't add a newline at the tail. 1999-03-08 Andy Piper * menubar-msw.c (displayable_menu_item): correct off-by-one & handling. 1999-03-07 Martin Buchholz * console-stream.h (struct stream_console): * event-unixoid.c (event_stream_unixoid_select_console): (event_stream_unixoid_unselect_console): * print.c (Fexternal_debugging_output): * sysdep.c (reset_one_device): * console-stream.c (stream_init_console): (stream_delete_console): (allocate_stream_console_struct): move into stream_init_console. (free_stream_console_struct): move into stream_delete_console. Use `fd' only for file descriptors. Therefore, rename members of struct stream_console. * systime.h: Unix98 says sys/time.h should define select(), but some systems define that in unistd.h. So include that file always. * glyphs.h (MAYBE_IIFORMAT_METH): Don't use leading `_'. Avoid multiple evaluation of first arg. Do proper do {} while (0) wrapping. (HAS_IIFORMAT_METH_P): Prevent macro from being used in non-boolean context (MAYBE_IIFORMAT_DEVMETH): Use standard internal macro naming convention. * EmacsShell.c: * balloon_help.c: Add #include . Some versions of assert.h use printf() without #include'ing stdio.h * free-hook.c (blocktype): Add gcpro5_type to blocktype. (log_gcpro): Remove unused variable FRAME. (show_gcprohist): Ansify. Comment the #endif's * frame-x.c (x_delete_frame): Don't use FRAME_X_SHELL_WIDGET(f) after it's just been XtDestroy'ed! 1999-02-18 Martin Buchholz * opaque.c (print_opaque): (sizeof_opaque): (equal_opaque): (hash_opaque): Egcs 1.1.1 seems to have a bug where INTP (p->size_or_chain) will crash XEmacs. Fix by introducing intermediate variable. * sound.c (Fdevice_sound_enabled_p): Fix compiler warning. * dired.c (Fdirectory_files): (Ffile_name_completion): (Ffile_name_all_completions): (file_name_completion): - Use `directory' instead of `dirname' to sync with FSF Emacs and avoid compiler warnings. - Fix up docstrings so that C variables match documentation. 1999-03-05 Martin Buchholz * alloc.c: (garbage_collect_1): Reorg code to make scope of local variables as small as possible to help out the compiler and the maintainer. * alloc.c: (disksave_object_finalization): Set all the *-load-path variables to nil, not just load-path itself. This gets the locate-file hash tables garbage collected BEFORE dump, and has the side effect of preventing crashes on OSF4.0+egcs. * alloc.c: * gdbinit: * dbxrc: - Clean up gdb/dbx debugging support. - Storing an EMACS_INT in an enum is not 64-bit clean! - So change the enum to a set of separate variables. - Add test cases to help debug the debugging support! - Add `lisp-shadows' and `run-temacs' targets for dbx. - Both dbx and gdb have been tested now. 1999-03-05 XEmacs Build Bot * XEmacs 21.2.12 is released 1999-02-16 Kazuyuki IENAGA * device-x.c: Support to find best visual without flashing. 1999-03-02 Paul Keusemann * database.c (berkdb_map): Add flags argument to cursor call (must be 0 according to docs) required for Berkeley DB 2.6.4 and later. 1999-03-03 Martin Buchholz * hash.c: * hash.h: General cleanup. Get free-hook.c working again. Remove unused functions: make_strings_hash_table, copy_hash, expand_hash_table. * malloc.c: * mem-limits.h: Always use new ANSI-style function prototypes. * unexalpha.c (unexec): Never use implicit int. * sgiplay.c (close_sound_file): (play_sound_file): (restore_audio_port): (play_sound_data): (audio_initialize): (play_internal): (drain_audio_port): (write_mulaw_8_chunk): (write_linear_chunk): (write_linear_32_chunk): (initialize_audio_port): (open_audio_port): (set_channels): (set_output_format): (adjust_audio_volume): (get_current_volumes): (parse_snd_header): Always use new ANSI-style function prototypes. Use unistd.h for missing prototypes. * unexelfsgi.c (round_up): (find_section): (unexec): Always use new ANSI-style function prototypes * elhash.c (struct Lisp_Hash_Table): rename golden to golden_ratio * console.h (struct console_methods): Always use full ANSI prototypes * emacs.c (__sti__iflPNGFile_c___): Always use full ANSI prototypes 1999-03-02 Andy Piper * event-stream.c (init_event_stream): make sure native mswindows gets an appropriate event loop. 1999-02-22 Andy Piper * frame-msw.c (mswindows_make_frame_visible): use SW_SHOW rather than SW_SHOWNORMAL to prevent resizing of maximised frames. (mswindows_raise_frame): remove comment. 1999-03-01 XEmacs Build Bot * XEmacs 21.2.11 is released 1999-02-25 SL Baur * mule-charset.c (Qleading_byte): New variable to implement charset-leading-byte function. (Fcharset_property): Use it. (syms_of_mule_charset): Initialize it. From Kazuyuki IENAGA 1999-02-17 Kazuo Oishi * glyphs-x.c (cononvert_EImage_to_XImage): correct bytes per pixel counting. 1999-02-15 Andy Piper * s/cygwin32.h (BROKEN_SIGIO): don't define this as it causes major lockups. 1999-02-16 MORIOKA Tomohiko * fns.c (Fbase64_encode_string): New optional argument `NO_LINE_BREAK'. 1999-02-16 Martin Buchholz * gdbinit: Fix up commands to run temacs. Add lisp-shadows command. * alloc.c (xcalloc): undef xcalloc, just like xmalloc 1999-02-10 Martin Buchholz * s/bsdos4.h: New file. Port to BSDI BSD/OS 4.0. * xintrinsic.h: Redo CONST support for X11 R4 compatibility. 1999-02-05 XEmacs Build Bot * XEmacs 21.2.10 is released 1999-02-02 Gleb Arshinov * process-nt.c (nt_send_process): Fix for process-send-region/process-send-string breaking when size of the input > 128 chars: change maximum chunk size for process stream from 512 to 128, thus guaranteeing that ntpipe_shove_writer succeeds. 1999-02-02 XEmacs Build Bot * XEmacs 21.2.9 is released 1999-01-30 Martin Buchholz * bytecode.c (funcall_compiled_function): Call UNBIND_TO_GCPRO instead of UNBIND_TO_GCPRO_VARIABLES_ONLY. * backtrace.h (UNBIND_TO_GCPRO_VARIABLES_ONLY): #ifdef 0 out unused macro. 1999-01-27 Martin Buchholz * gui.c (gui_parse_item_keywords_internal): Make static. 1999-01-21 Andy Piper * glyphs-msw.c: add xface support. (mswindows_xface_instantiate): new function copied from glyphs-x.c (image_instantiator_format_create_glyphs_mswindows): do device specific initialisation for xfaces. (xbm_create_bitmap_from_data): line data must be padded to a word boundary. * glyphs-x.c (xface_validate): moved to glyphs.c (xface_normalize): ditto. (xface_possible_dest_types): ditto. (image_instantiator_format_create_glyphs_x): do device specific initialisation for xfaces. * glyphs.h: declare xface symbol. * glyphs.c: move generic xface support here. (xface_validate): moved from glyphs-x.c (xface_normalize): ditto. (xface_possible_dest_types): ditto. (image_instantiator_format_create): xface declarations moved from glyphs-x.c. 1999-01-14 Adrian Aichner * event-stream.c (vars_of_event_stream): Fixing documentation. 1999-01-17 Gunnar Evermann * glyphs-eimage.c (gif_instantiate): Correct handling of interlaced gifs to avoid writing past the end of the eimage buffer. 1999-01-13 Hrvoje Niksic * search.c (Freplace_match): Handle single backslash at end of NEWTEXT correctly. 1999-01-12 William M. Perry * eldap.c (Fldap_open): slow down interrupts around ldap_open to avoid connection errors. 1999-01-12 Andy Piper * redisplay-output.c (redisplay_update_line): backout change that shouldn't have gone ine. 1999-01-09 Oscar Figueiredo * eldap.c (vars_of_ldap): Do no provide `ldap' here since it may collide with ldap.el 1999-01-11 Andy Piper * redisplay.h (DISPLAY_LINE_HEIGHT): new macro. (DISPLAY_LINE_YPOS): new macro. * redisplay-msw.c (mswindows_output_string): use it. (mswindows_output_pixmap): ditto. (mswindows_output_display_block): ditto. * redisplay-output.c (redisplay_output_display_block): new function. just call the devmeth, maybe insert some generic code here later. (compare_display_blocks): use it. (output_display_line): ditto. (redisplay_unmap_subwindows_maybe): new function. potentially unmap subwindows in the given area. * glyphs.c (reset_subwindow_cachels): unmap subwindows that we are resetting. 1999-01-10 J. Kean Johnston * Makefile.in.in: Set value of moduledir - Changed DUMPENV to include $(MODULEPATH) - Added install rule to install header files for use by ellcc. * config.h.in: Added INHIBIT_SITE_MODULES - Added HAVE__DLERROR - Added HAVE_DLFCN_H - Added DLSYM_NEEDS_UNDERSCORE * dll.c: Removed. * emodules.c: New file containing dynamic loading code. * emodules.h: New file. * emacs.c: Added variables Vmodule_directory, Vsite_module_directory, Vconfigure_module_directory and Vconfigure_site_module_directory. - (main_1): Added new variable inhibit_site_modules and command line options `-no-site-modules' and `--no-site-modules'. - (main_1): Call syms_of_module() instead of syms_of_dll(). - (main_1): Call vars_of_module(). - (vars_of_emacs): Introduce inhibit-site-modules, module-directory, configure-module-directory, site-module-directory, and configure-site-module-directory to the Lisp reader. * lisp.h: Declare load_module and list_modules, as well as Vmodule_directory, Vsite_module_directory, Vconfigure_module_directory and Vconfigure_site_module_directory. * paths.h.in: Added PATH_MODULESEARCH and PATH_SITE_MODULES. - Added correct support for site-lisp directory. * symbols.c (defsubr): Modified to allow modules to add new subrs after dump time. - (defsubr_macro): Same. - (defvar_magick): Only use purespace when not initialized, so that loaded modules can still add symbols. * symsinit.h: Add definitions for syms_of_module(), vars_of_module(). Removed syms_of_dll(). * sysdll.c: Include dlfcn.h if HAVE_DLFCN_H is defined. - (dll_variable): Take DLSYM_NEEDS_UNDERSCORE into account. - (dll_error): use _dlerror() if HAVE__DLERROR is defined. * s/sco5-shr.h (C_SWITCH_SYSTEM): Correct for modern gcc and explicitly pass -belf for native cc. * s/sco5.h (LIB_GCC): Use -print-libgcc-file-name instead of hard-coding the library name. 1999-01-01 * device-x.c (Fx_set_font_path): Add proper cast to permit compilation under C++. * buffer.c (directory_is_current_directory): Add proper casts to permit compilation under C++. 1998-12-30 Damon Lipparelli * event-msw.c (mswindows_wnd_proc): Fixed failure when building with MSVC 5. 1998-12-29 Martin Buchholz * file-coding.c (decode_coding_iso2022): - Prevent crash when decoding ISO7/Lock detected files - the usual martin fiddling 1998-12-29 Jonathan Harris * event-msw.c: glyphs-msw.c: Fixed failures when building with MSVC. * unexnt.c (dump_bss_and_heap): Removed compiler warning by removing bss_data variable. 1998-12-18 Jim Radford * device-x.c (Fx_set_font_path, Fx_get_font_path): New functions so that packages that distribute their own fonts can access them. 1998-12-28 Andy Piper * glyphs-msw.c (mswindows_button_instantiate): cope with buttons that have an image provided. * glyphs.h: add Q_image decl. * glyphs-widget.c new functionality allowing images in widgets. (check_valid_glyph_or_image): new function to validate glyphs passed in through :image. (widget_normalize): new function. convert :image parameters into real glyphs if not already so. (widget_instantiate_1): mess with size parameters to be similar to :image if provided. (syms_of_glyphs_widget): new keyword :image. (image_instantiator_format_create_glyphs_widget): normalize buttons and allow :image. 1998-12-27 Andy Piper * frame-msw.c (mswindows_init_frame_1): warning elimination. * glyphs-widget.c (check_valid_anything): no-op function. (check_valid_callback): check callbacks in gui_items. (check_valid_symbol): as it sounds. (check_valid_string_or_vector): ditto. (widget_validate): modified for descriptors that are vectors or sequences of keyword/val pairs. (widget_instantiate_1): ditto. (image_instantiator_format_create_glyphs_widget): allow gui_item keywords in the instantiator. * gui.c (gui_parse_item_keywords_internal): renamed from gui_parse_item_keywords but taking error behaviour. (gui_parse_item_keywords): use it. (gui_parse_item_keywords_no_errors): ditto. (gui_item_add_keyval_pair): add Error_behavior flag and only signal invalid keywords if required. * gui.h: new gui signatures. * menubar.c (menu_parse_submenu_keywords): use new gui_item_add_keyval_pair signature. * s/cygwin32.h: modify PTY_ITERATION to eliminate warnings. 1998-12-28 Martin Buchholz * XEmacs 21.2.8 is released. 1998-12-28 Martin Buchholz * editfns.c (get_home_directory): (user-home-directory): Simplify. * callproc.c (child_setup): - Environment variables were being passed to inferior processes using internal encoding. - Convert to external encoding. - Rename local var `tem' to better name `tail'. - Use Flength instead of `manual' calculation. * buffer.c (kill-buffer): (record-buffer): (set-buffer-major-mode): (current-buffer): - Fix up parameter names to correspond to docstrings. - Don't use `bufname' when a buffer will do as well. - Remove one unneeded GCPRO. * buffer.h (initial_directory): * buffer.c (init_initial_directory): - use correct conversions between internal and external format. (directory_is_current_directory): new function (init_buffer): convert initial_directory to internal format. - solve crashes when current working directory is non-ASCII. * alloc.c (xmalloc): (xcalloc): (xrealloc): - remove stupid casts, since XEmacs requires an ANSI C system. (lrecord_type_index): replace abort() with more readable assert(). (reset_lcrecord_stats): remove. (sweep_lcrecords_1): - replace call to reset_lcrecord_stats() with call to xzero(). 1998-12-27 Martin Buchholz * process-unix.c (unix_create_process): - Fix crash invoking program with non-ASCII name. Try invoking xemacs with SHELL=/bin/sh, then M-x shell. - Remove unused variable `env'. - Rename `temp' to better name `save_errno'. - Reorganize code for clarity. But still too chicken to nuke the BSD 4.2 support. 1998-12-24 Martin Buchholz * XEmacs 21.2.7 is released. 1998-12-23 Martin Buchholz * glyphs.c (decode_device_ii_format): - Fix indentation. - Use GET_C_STRING_FILENAME_DATA_ALLOCA with char *, not Extbyte *. * glyphs-x.c (x_subwindow_instantiate): - A image instance mask was being assigned to a image instance type! - X_SUBWINDOW_INSTANCE_DATA (ii) is not an lvalue in C++. * glyphs-msw.c (mswindows_initialize_dibitmap_image_instance): Fix indentation. * glyphs-x.h: Make indentation consistent. * emacs.c (Fdump_emacs): Remove Steve Martin merge artifacts. * glyphs-widget.c (check_valid_glyph): Warning suppression. - Make it static - #ifdef it out, since it's not actually used yet (FIX THIS!) * glyphs-widget.c: * glyphs.h: Move declarations of decode_device_ii_format and decode_image_instantiator_format into glyphs.h where they belong. 1998-12-22 Martin Buchholz * frame-x.c (x_delete_frame): Revert part of my changes at the suggestion of Gunnar Evermann - unfortunately no one really understands this code. * callproc.c (init_callproc): code cleanup. * free-hook.c (malloc): (check_malloc): (__free_hook): (__malloc_hook): (__realloc_hook): (block_input_malloc): (block_input_realloc): * device-x.c (x_delete_device): * emacs.c (voodoo_free_hook): * events.c (print_event): (CHECK_EVENT_TYPE): (CHECK_EVENT_TYPE2): (CHECK_EVENT_TYPE3): Use proper prototypes. Make C_E_T macros a little faster. Pedantic fiddly little changes. You really don't care. 1998-12-22 Andy Piper * redisplay-output.c (redisplay_clear_region): make sure that fg/bg colors get set even when we are in the border area. 1998-12-13 Martin Buchholz * console-msw.c: Function definitions follow coding standards - This prevents e.g. find-tag on Lisp_Event finding DEVENT 1998-12-11 Martin Buchholz * events.h (struct timeout_data): * event-tty.c (tty_timeout_to_emacs_event): * event-msw.c (mswindows_wm_timer_callback): * event-Xt.c (Xt_timeout_to_emacs_event): * event-msw.c (mswindows_cancel_dispatch_event): Make sure Lisp_Objects inside events are initialized to Qnil, not Qnull_pointer, which is now illegal. 1998-12-10 Martin Buchholz * lisp.h: Fix up prototypes to match alloc.c 1998-12-08 Martin Buchholz * windowsnt.h: Remove `support' for using index and rindex * filelock.c (current_lock_owner): - Change uses of index -> strchr, rindex -> strrchr 1998-12-07 Martin Buchholz * sysdep.c (set_descriptor_non_blocking): Since O_NONBLOCK is now always #defined, make use of fcntl conditional on F_SETFL being defined. * console-msw.c (DHEADgER): (DOPAQUE_DATA): (DEVENT): (DCONS): (DCONSCDR): (DSTRING): (DVECTOR): (DSYMBOL): (DSYMNAME): - max_align_t should not be visible to the user of the XOPAQUE_DATA macro. - use Bufbyte instead of char - parens around (FOOP (obj)) are always redundant. If they were necessary, we should fix the macro instead. - Always use string_data(foo) instead of foo->data. 1998-12-06 Martin Buchholz * frame-msw.c (mswindows_init_frame_1): - use make_lisp_hash_table, not Fmake_hash_table - include elhash.h * lisp.h: * alloc.c (make_vector): remove travesty (Fmake_vector): (make_pure_vector): (pure_cons): (make_bit_vector_internal): (make_bit_vector): (make_bit_vector_from_byte_vector): (Fmake_bit_vector): - make vector_equal a little faster. - Don't use variable name `new'. - Use size_t instead of EMACS_INT. - usual Martin-style pointless bit-twiddling. * fns.c (mapcar1): (Fmapconcat): (Fmapcar): (Fmapvector): Make mapcar faster. In particular, make (mapc #'identity long-string) MUCH faster under Mule. * tests/automated/lisp-tests.el: Test 'em! * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded bytecode. 1998-12-01 Martin Buchholz * menubar-x.c (menu_item_descriptor_to_widget_value_1): Always use Qnil, not NULL, to initialize `null' Lisp_Objects. 1998-11-29 Hrvoje Niksic * specifier.c (display_table_validate): Update. * redisplay.c (create_text_block): Use them. * glyphs.c (display_table_entry): New function. (get_display_tables): Ditto. 1998-12-15 Oscar Figueiredo * eldap.c (toplevel): Mention that eldap.c compiles with OpenLDAP libs (Fldap_open): Use `GET_C_STRING_OS_DATA_ALLOCA' (Fldap_search_internal): Ditto 1998-12-11 Martin Buchholz * event-msw.c (mswindows_cancel_dispatch_event): Gratuitous code prettification 1998-12-07 Hrvoje Niksic * fns.c (Fnconc): Fix use of wrong_type_argument(). * floatfns.c (Ffloat): Fix docstring. (Ffloat): Fix use of wrong_type_argument(). (Fabs): Ditto. (extract_float): Ditto. (Fceiling): Ditto. (Fround): Ditto. (Ftruncate): Ditto. 1998-12-06 Martin Buchholz * frame-msw.c (mswindows_init_frame_1): - use make_lisp_hash_table, not Fmake_hash_table - include elhash.h * lisp.h: * alloc.c (make_vector): remove travesty (Fmake_vector): (make_pure_vector): (pure_cons): (make_bit_vector_internal): (make_bit_vector): (make_bit_vector_from_byte_vector): (Fmake_bit_vector): - make vector_equal a little faster. - Don't use variable name `new'. - Use size_t instead of EMACS_INT. - usual Martin-style pointless bit-twiddling. * fns.c (mapcar1): (Fmapconcat): (Fmapcar): (Fmapvector): Make mapcar faster. In particular, make (mapc #'identity long-string) MUCH faster under Mule. * tests/automated/lisp-tests.el: Test 'em! * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded bytecode. 1998-12-02 Didier Verna * menubar-x.c (menu_item_descriptor_to_widget_value_1): set the accelerator field to nil for labels. 1998-12-16 Jonathan Harris * menubar-msw.c (displayable_menu_item): Escape occurrences of '&' and support occurrences of the '%_' accelerator indicator in menus. 1998-11-26 Didier Verna * dired.c (Fdirectory_files): use make_string instead of make_ext_string on the filename. The conversion external->internal format is already done in sys_readdir. 1998-12-15 Gunnar Evermann * glyphs.c (normalize_image_instantiator): GCPRO instantiator 1998-12-16 Jonathan Harris * event-msw.c (Belatedly) added Kirill to list of file's authors. emacs_mswindows_quit_p: Don't process WM_PAINT messages in quit checking. WM_PAINT messages cause redisplay, but windows' states are not necessarily stable when this function gets called. 1998-12-17 Andy Piper * strftime.c (zone_name): CONSTify. 1998-12-15 Andy Piper * glyphs-msw.c (mswindows_combo_instantiate): ditto. (mswindows_widget_property): return Qunbound when no property available. (mswindows_button_property): ditto. (mswindows_combo_property): ditto. (mswindows_widget_set_property): ditto. * glyphs-widget.c (check_valid_item_list): use properties. * glyphs.h (struct Lisp_Image_Instance): we have properties now. * glyphs.c (Fset_image_instance_property): allow setting of arbitrary properties. (Fimage_instance_property): ditto. * glyphs-widget.c (widget_property): ditto. (widget_set_property): ditto. * frame-msw.c (mswindows_set_frame_pointer): SetCursor() as well as setting the class cursor so that GC actually changes the cursor. * config.h: don't undef MAIL_USE_POP. 1998-12-13 Andy Piper * glyphs-msw.c (image_instantiator_format_create_glyphs_mswindows): line -> label. (mswindows_label_instantiate): ditto. Play with window flags. (image_instantiator_format_create_glyphs_mswindows): ditto. (vars_of_glyphs_mswindows): provide Qlabel as we support it now. * glyphs-widget.c (widget_instantiate_1): re-jig autosizing to cope with lines and labels. (static_instantiate): use widget_instantiate_1. line -> label. (image_instantiator_format_create_glyphs_widget): ditto. 1998-12-10 Andy Piper * Makefile.in.in (objs): add gui.o 1998-12-10 Andy Piper * gui.c: adjust defines of HAVE_POPUPS so that we can build with no window system. 1998-12-09 Andy Piper * glyphs.c (finalize_image_instance): mark glyphs changed when an image instance is removed so that the subwindow cache gets reset and thus destroyed images get GC'd. 1998-12-08 Andy Piper * gui-msw.c (mswindows_handle_gui_wm_command): call MARK_SUBWINDOWS_CHANGED. * glyphs-msw.c (mswindows_finalize_image_instance): make sure subwindows really get deleted. * redisplay.c: new variable subwindows_changed[_set]. (redisplay_window): use it. (redisplay_frame): ditto. (redisplay_device): ditto. (redisplay_without_hooks): ditto. * device.h (MARK_DEVICE_SUBWINDOWS_CHANGED): new macro for subwindows redisplay as per glyphs equivalent. * redisplay.h: ditto. (MARK_SUBWINDOWS_CHANGED): ditto. (RESET_CHANGED_SET_FLAGS): ditto. * frame.h (MARK_FRAME_SUBWINDOWS_CHANGED): ditto. 1998-12-07 Andy Piper * frame.c (Fmake_frame): reset subwindow cachels on non-stream frames. * redisplay.c (redisplay_frame): invalidate subwindow cachels. * event-msw.c (mswindows_wnd_proc): catch the various WM_CTLCOLOR* messages and paint widget glyphs as appropriate with their face fg & bg. 1998-12-06 Andy Piper * glyphs-msw.c (vars_of_glyphs_mswindows): provide widget types here rather than in glyphs-widget - do this because we only want to provide what is really available. * glyphs.c (Fimage_instance_property): new function to get the properties of image instances. wires through to console specific methods and then to widget specific methods. (Fset_image_instance_property): ditto but for setting widget properties. (check_valid_face): make extern so that it can be used elsewhere. * glyphs-widget.c (widget_property): new function. gets the properties of widgets in general and wires the function through to widget specific ones. (widget_set_property): ditto but for setting widget properties. * glyphs-msw.c (mswindows_combo_instantiate): Add functionality to add items to the list. Play with window styles a bit to get the desired effect. (mswindows_widget_property): break out specific widget properties. (mswindows_button_property): new function. gets the checked state of a button. (mswindows_combo_property): new function. gets the current selection in the combo box. (mswindows_widget_set_property): new function. sets specific properties of specific widgets. * glyphs-widget.c (check_valid_item_list): new function. check that items for a combo-box are just a list of strings. (combo_validate): new function. check there is an item list. (widget_instantiate_1): new function. renamed from widget_instantiate so that we can do slightly different things for other widgets. (widget_instantiate): call widget_instantiate_1. (combo_instantiate): new function to instantiate combo boxes, defaults height to the pixel height of the number of items in the box. (syms_of_glyphs_widget): move widget keywords here. (image_instantiator_format_create_glyphs_widget): use new combo functions. 1998-12-04 Andy Piper * event-msw.c (mswindows_wnd_proc): mule-ize. * glyphs.c (pixmap_to_lisp_data): mule-ize. * glyphs-msw.c (extract_xpm_color_names): mule-ize. (resource_name_to_resource): ditto. (mswindows_resource_instantiate): ditto. (mswindows_widget_instantiate): ditto. (mswindows_widget_set_property): ditto. * redisplay-output.c (redisplay_output_subwindow): don't show subwindows if they are obscured at the edge of the frame, emacs gets into some sort of redisplay loop otherwise. * gui.h: prototype gui_item_selected_p. * gui.c (gui_item_selected_p): new function to determine the selected state of a gui_item. * frame.h (struct frame): add subwindows_changed flag. * redisplay.c (redisplay_frame): call update_frame_subwindows (). * glyphs.c (update_subwindow): new function to update a subwindow's state. (update_frame_subwindows): new function to update all the subwindows on a frame. * console.h (struct console_methods): add update_subwindow. * glyphs-msw.c (mswindows_widget_property): return selected state for selected property. (mswindows_update_subwindow): new function. updates widget glyphs in redisplay as per menubars or toolbars e.g. selected state. (console_type_create_glyphs_mswindows): add update_subwindow. 1998-12-03 Andy Piper * console-tty.c (syms_of_console_tty): MULE -> FILE_CODING since tty coding system things are such. * glyphs-widget.c (widget_face_font_info): new function for pulling out height and width metrics for a widget's face. (widget_text_to_pixel_conversion): calculate pixel sizes of text for widgets. * event-msw.c (mswindows_drain_windows_queue): translate messages that are destined for subwindows. This makes edit fields interact with the keyboard correctly. nuke warnings by #ifndef'ing out stuff not required by msg select(). * glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM): new macro defining the iiforma without the symbol required by widget. (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT): use it. * general.c (syms_of_general): add Qwidget, Qselected. * faces.c (complex_vars_of_faces): add widget face inheriting from gui-element face. 1998-11-09 Andy Piper * window.h (struct window): add a cache of subwindows on a per-window basis. * window.c (mark_window): mark the subwindow_instance_cache. (allocate_window): initialise the subwindow instance_cache. * toolbar-x.c (x_output_toolbar): call redisplay_clear_region instead of the devmeth. (x_clear_toolbar): ditto. * redisplay-x.c (x_output_display_block): call redisplay_output_subwindow for subwindows and widgets. * redisplay-tty.c (tty_output_display_block): add IMAGE_WIDGET to types to do nothing for. * lisp.h: declare new widget/subwindow symbols. * glyphs.c (image_instantiate): cache subwindows on a per-window basis. (subwindow_possible_dest_types): new function for subwindow dest types. (subwindow_instantiate): generic instantiation of a subwindow. specialised by device multi-methods. (Fsubwindowp): moved from glyphs-x.c. adapted for glyph-based subwindows. (Fimage_instance_subwindow_id): ditto. (Fresize_subwindow): ditto. (Fforce_subwindow_map): ditto. * glyphs-x.c (x_print_image_instance): remove subwindow stuff. Handled genrically in glyphs.c. (x_image_instance_equal): ditto. (x_image_instance_hash): ditto. (x_finalize_image_instance): delete subwindows when required. (mark_subwindow) (print_subwindow) (finalize_subwindow) (subwindow_hash) (Fmake_subwindow): deleted because of new, glyph-based, subwindow implementation. (Fsubwindow_height) (Fsubwindow_width) (Fsubwindow_xid): aliased in glyphs.el (Fsubwindowp) (Fresize_subwindow) (Fforce_subwindow_map): moved to glyphs.c. (x_unmap_subwindow): new function to unmap X subwindows. (x_map_subwindow): new function to map X subwindows. (x_subwindow_instantiate): new function to instantiate X subwindows. (x_resize_subwindow): new function to resize X subwindows. (console_type_create_glyphs_x): add subwindow functions. (image_instantiator_format_create_glyphs_x): add device multi-methods for xpm, xbm and subwindow. * glyphs.el (subwindow-xid): old alias for new subwindow functions. (subwindow-width): ditto. (subwindow-height): ditto. * glyphs-msw.c (mswindows_widget_instantiate): new function for generally instantiating ms subwindows. Used by mswindows_*_instantiate. (mswindows_edit_instantiate): instantiate an edit field on a mswindows frame. 1998-11-04 Andy Piper * symsinit.h: declare new functions. * redisplay.h: declare new functions. * redisplay-x.c (x_output_display_block): call redisplay_clear_region rather than x_clear_region. (x_output_string): ditto. (x_output_pixmap): ditto. (x_clear_to_window_end): ditto. (x_output_eol_cursor): ditto. (x_clear_region): only do X specific things. other duties handled in redisplay_clear_region. * redisplay-tty.c (tty_clear_region): do tty specific things - some duties moved to redisplay_clear_region. * redisplay-output.c (clear_left_border): use redisplay_clear_region instead of device method. (clear_right_border): ditto. (output_display_line): ditto. (redisplay_output_subwindow): ditto. (redisplay_clear_top_of_window): ditto. (redisplay_clear_region): perform duties previously handled by device methods. call the appropriate device method at the end. unmap subwindows if necessary. * redisplay-msw.c (mswindows_output_string): use redisplay_clear_region instead of mswindows_clear_region. (mswindows_clear_to_window_end): ditto. (mswindows_output_display_block): output subwindows when required. (mswindows_clear_region): only do mswindows specific things, everything else is now handled in redisplay_clear_region. * gui.h: add item id hash defines and declare function prototypes. * gui.c (mark_gui_item): new function for marking gui_items. (gui_item_hash): generic hash function for generating command ids for gui_items. * gui-msw.c: new file. (mswindows_handle_gui_wm_command): new function to handle widget callbacks. * glyphs.h (MAYBE_IIFORMAT_DEVMETH): new function for device multi-methods. (IIFORMAT_HAS_SHARED_METHOD): ditto. (DEFINE_DEVICE_IIFORMAT): ditto. (INITIALIZE_DEVICE_IIFORMAT): ditto. (struct Lisp_Image_Instance): add widget and subwindow data plus appropriate access functions. * glyphs.c (decode_device_ii_format): new function for decoding image instantiator functions based on a device type as well as an image format. (decode_image_instantiator_format): just call decode_device_ii_format with nil device. (add_entry_to_device_ii_format_list): new function for per device method instances. (add_entry_to_image_instantiator_format_list): just call add_entry_to_device_ii_format_list with nil device. (check_valid_vector): new function. (instantiate_image_instantiator): instantiate using per-format method and then per-format-per-device method (device multi-methods). signal an error if neither is possible. (mark_image_instance): cope with subwindows and widgets. (print_image_instance): ditto. (image_instance_equal): ditto. (image_instance_hash): ditto. (allocate_glyph): ditto. (glyph_width): ditto. (glyph_height_internal): ditto. (xpm_instantiate): removed because of device multi-methods. (mark_subwindow_cachels): new cachel functions for caching instantiated subwindows on a per-frame basis. mostly copied from glyph cachel functions. (update_subwindow_cachel_data): ditto. (add_subwindow_cachel): ditto. (get_subwindow_cachel_index): ditto. (reset_subwindow_cachels): ditto. (mark_subwindow_cachels_as_not_updated): ditto. (unmap_subwindow): generic unmapping of subwindows based on cachel data. (map_subwindow): ditto. (initialize_subwindow_image_instance): generic initialisation of subwindow data. (syms_of_glyphs): add widget keywords. * glyphs-x.h (struct x_subwindow_data): convert Lisp_Subwindow to x_subwindow_data. 1998-11-04 Andy Piper * glyphs-widget.c: new file for instantiating widget type glyphs. (widget_possible_dest_types): new general dest type function for widgets. (widget_validate): ditto. (initialize_widget_image_instance): ditto (widget_instantiate): ditto. Sets up fg/bg, gui_item parsing before handing on control to device multi-methods. (syms_of_glyphs_widget): new function. (image_instantiator_format_create_glyphs_widget): new function, added placeholders for button, edit, combo, scrollbar (vars_of_glyphs_widget): new function. * glyphs-msw.h (WIDGET_INSTANCE_MSWINDOWS_HANDLE): new define for storing window ids of widgets. * glyphs-msw.c (mswindows_finalize_image_instance): cope with deletion of widget and subwindow glyphs. (mswindows_unmap_subwindow): new device function for unmapping subwindows on a msw frame. (mswindows_map_subwindow): ditto. (mswindows_register_image_instance): register instantiated widgets with the widget hastable. (mswindows_button_instantiate): instantiate a button type widget on an msw frame. (mswindows_subwindow_instantiate): instanttiate a subwindow on a mswindows frame. (image_instantiator_format_create_glyphs_mswindows): add device multi-methods for xbm, xpm, subwindow, edit and button. * frame.h (struct frame): add subwindow_cachels dynarr for caching information about subwindows visible on the current frame. used by redisplay_clear_region to unmap subwindows as required. * frame.c (mark_frame): mark subwindow_cachels. (allocate_frame_core): instantiate subwindow_cachels. * frame-msw.c (mswindows_init_frame_1): instntiate and mark the widget hashtable. * event-msw.c (mswindows_wnd_proc): add call to mswindows_handle_gui_wm_command to handle widget callbacks. * emacs.c (main_1): add calls to glyphs-widget initialisation routines. * console.h (struct console_methods): add unmap/map_subwindow_method for use be redisplay_clear_region to map and unmap subwindows. Remove xpm and xbm stuff - now dealt with by image instantiator multi-methods. Add resize_subwindow_method. * console-stream.c (stream_clear_region): change signature to match new generic clear region function. * Makefile.in.in: add glyphs-widget.o to list of objects. * console-msw.h (struct mswindows_frame): add widget hashtable for wiring command ids to callbacks. 1998-12-16 Andy Piper * XEmacs 21.2.6 is released 1998-12-08 Hrvoje Niksic * md5.c (Fmd5): Correctly initiate string input stream. * Makefile.in.in (tests): Add md5-tests.el. 1998-12-06 Martin Buchholz * lisp.h: * alloc.c (make_vector): remove travesty (Fmake_vector): (make_pure_vector): (pure_cons): (make_bit_vector_internal): (make_bit_vector): (make_bit_vector_from_byte_vector): (Fmake_bit_vector): - make vector_equal a little faster. - Don't use variable name `new'. - Use size_t instead of EMACS_INT. - usual Martin-style pointless bit-twiddling. * fns.c (mapcar1): (Fmapconcat): (Fmapcar): (Fmapvector): Make mapcar faster. In particular, make (mapc #'identity long-string) MUCH faster under Mule. * tests/automated/lisp-tests.el: Test 'em! 1998-12-06 Martin Buchholz * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded bytecode. 1998-12-13 Martin Buchholz * console-msw.c: Function definitions follow coding standards - This prevents e.g. find-tag on Lisp_Event finding DEVENT 1998-12-11 Martin Buchholz * events.h (struct timeout_data): * event-tty.c (tty_timeout_to_emacs_event): * event-msw.c (mswindows_wm_timer_callback): * event-Xt.c (Xt_timeout_to_emacs_event): * event-msw.c (mswindows_cancel_dispatch_event): Make sure Lisp_Objects inside events are initialized to Qnil, not Qnull_pointer, which is now illegal. 1998-12-10 Martin Buchholz * lisp.h: Fix up prototypes to match alloc.c 1998-12-09 Andy Piper * glyphs-msw.c (init_image_instance_from_xbm_inline): don't use XSETINT for assigning lisp objects. 1998-12-07 Martin Buchholz * opaque.h: * console-msw.c (DHEADER): (DOPAQUE_DATA): (DEVENT): (DCONS): (DCONSCDR): (DSTRING): (DVECTOR): (DSYMBOL): (DSYMNAME): - max_align_t should not be visible to the user of the XOPAQUE_DATA macro. - use Bufbyte instead of char - parens around (FOOP (obj)) are always redundant. If they were necessary, we should fix the macro instead. - Always use string_data(foo) instead of foo->data. 1998-12-07 Martin Buchholz * sysdep.c (set_descriptor_non_blocking): Since O_NONBLOCK is now always #defined, make use of fcntl conditional on F_SETFL being defined. 1998-12-09 Andy Piper * menubar-msw.c (mswindows_handle_wm_command): add back in checks that got removed in the merge 1998-11-30 Greg Klanderman * dired.c (vars_of_dired): bugfix for previous conditionalization of user-name-completion on non- Windows NT. 1998-12-08 Martin Buchholz * windowsnt.h: Remove `support' for using index and rindex * filelock.c (current_lock_owner): - Change uses of index -> strchr, rindex -> strrchr 1998-12-06 Martin Buchholz * frame-msw.c (mswindows_init_frame_1): - use make_lisp_hash_table, not Fmake_hash_table - include elhash.h 1998-12-05 XEmacs Build Bot * XEmacs 21.2.5 is released 1998-11-30 Martin Buchholz * xselect.c (receive_incremental_selection): * xselect.c (x_get_window_property): * xmu.c (XmuReadBitmapDataFromFile): * xmu.c (XmuCursorNameToIndex): * xgccache.c (describe_gc_cache): * xgccache.c (gc_cache_lookup): * xgccache.c (free_gc_cache): * xgccache.c (make_gc_cache): * window.h: * window.c (map_windows_1): * window.c (Fother_window_for_scrolling): * window.c (window_scroll): * window.c (change_window_height): * window.c (Fsplit_window): * window.c (window_left_gutter_width): * window.c (window_modeline_height): * window.c (invalidate_vertical_divider_cache_in_window): * window.c (window_needs_vertical_divider_1): * window.c (update_mirror_internal): * window.c (SET_LAST_FACECHANGE): * widget.c (Fwidget_plist_member): * unexec.c (copy_text_and_data): * unexcw.c (copy_executable_and_dump_data_section): * tooltalk.doc: * tooltalk.c (struct Lisp_Tooltalk_Pattern): * tooltalk.c (struct Lisp_Tooltalk_Message): * toolbar.h (struct toolbar_button): * toolbar.c (default_toolbar_visible_p_changed_in_window): * toolbar.c (recompute_overlaying_specifier): * toolbar.c (toolbar_validate): * toolbar.c (toolbar_button_at_pixpos): * toolbar.c (get_toolbar_coords): * toolbar.c (update_frame_toolbars): * toolbar-x.c: * toolbar-msw.c (mswindows_handle_toolbar_wm_command): * toolbar-msw.c (mswindows_find_toolbar_pos): * toolbar-msw.c (mswindows_output_toolbar): * toolbar-msw.c (mswindows_clear_toolbar): * toolbar-msw.c: * systty.h: * syssignal.h: * sysproc.h: * sysfile.h: * sysdll.c: * sysdep.h: * sysdep.c (rmdir): * sysdep.c (sys_fopen): * sysdep.c (sys_open): * sysdep.c (tty_init_sys_modes_on_device): * sysdep.c (get_eof_char): * sysdep.c (child_setup_tty): * sysdep.c (set_descriptor_non_blocking): * syntax.h: * syntax.c (scan_words): * syntax.c: * symsinit.h: * symeval.h (struct symbol_value_varalias): * symeval.h (struct symbol_value_forward): * symbols.c (syms_of_symbols): * symbols.c (init_symbols_once_early): * symbols.c (Fbuilt_in_variable_type): * symbols.c (Fsymbol_value_in_buffer): * symbols.c (default_value): * symbols.c (Fset): * symbols.c (find_symbol_value_quickly): * symbols.c (store_symval_forwarding): * symbols.c (set_default_console_slot_variable): * symbols.c (set_default_buffer_slot_variable): * symbols.c (verify_ok_for_buffer_local): * symbols.c (symbol_is_constant): * symbols.c (oblookup): * symbols.c (Funintern): * symbols.c (Fintern): * symbols.c (check_obarray): * sunplay.c: * specifier.h (struct specifier_methods): * specifier.h: * specifier.c (specifier_instance): * specifier.c (specifier_instance_from_inst_list): * specifier.c (decode_locale_type): * specifier.c (specifier_equal): * specifier.c (finalize_specifier): * specifier.c (prune_specifiers): * specifier.c (kill_specifier_buffer_locals): * sound.c (init_native_sound): * sound.c: * signal.c (alarm): * search.c (Fmatch_data): * search.c (match_limit): * search.c (Freplace_match): * search.c (skip_chars): * search.c (scan_buffer): * search.c: * scrollbar.c (specifier_vars_of_scrollbar): * scrollbar.c (Fscrollbar_set_hscroll): * scrollbar.c (vertical_scrollbar_changed_in_window): * scrollbar.c (release_window_mirror_scrollbars): * scrollbar.c (free_scrollbar_instance): * scrollbar-x.c: * scrollbar-msw.c: * s/msdos.h (O_BINARY): * s/linux.h: * s/freebsd.h (LIBS_TERMCAP): * regex.c (re_match_2_internal): * regex.c (compile_extended_range): * regex.c (POP_FAILURE_POINT): * regex.c (PUSH_FAILURE_POINT): * redisplay.h (RESET_CHANGED_SET_FLAGS): * redisplay.h: * redisplay.h (struct display_line): * redisplay.h (struct rune): * redisplay.c (vars_of_redisplay): * redisplay.c (redisplay_variable_changed): * redisplay.c (UPDATE_CACHE_RETURN): * redisplay.c (validate_line_start_cache): * redisplay.c (mark_redisplay_structs): * redisplay.c (mark_glyph_block_dynarr): * redisplay.c (window_line_number): * redisplay.c (redisplay_frame): * redisplay.c (redisplay_window): * redisplay.c (generate_modeline): * redisplay.c (create_right_glyph_block): * redisplay.c (create_left_glyph_block): * redisplay.c (create_text_block): * redisplay.c: * redisplay-x.c (x_output_hline): * redisplay-x.c (x_output_vertical_divider): * redisplay-tty.c (tty_output_display_block): * redisplay-output.c (output_display_line): * redisplay-output.c: * redisplay-msw.c (mswindows_output_vertical_divider): * redisplay-msw.c (mswindows_ring_bell): * redisplay-msw.c (mswindows_output_cursor): * redisplay-msw.c: * rangetab.c: * ralloc.c: * puresize.h (RAW_PURESIZE): * profile.c (syms_of_profile): * profile.c (Fstart_profiling): * profile.c (sigprof_handler): * profile.c: * procimpl.h: * process.c (vars_of_process): * process.c (read_process_output): * process.c (get_process): * process.c: * process-unix.c (unix_open_multicast_group): * process-unix.c (unix_get_tty_name): * process-unix.c (unix_send_process): * process-unix.c (unix_reap_exited_processes): * process-unix.c (unix_create_process): * process-unix.c (unix_init_process_io_handles): * process-unix.c (allocate_pty): * process-unix.c: * process-nt.c (nt_open_network_stream): * process-nt.c (nt_update_status_if_terminated): * process-nt.c (nt_finalize_process_data): * process-nt.c: * print.c (debug_short_backtrace): * print.c (debug_backtrace): * print.c (print_symbol): * print.c (print_internal): * print.c (print_cons): * print.c (Fwrite_char): * print.c (print_prepare): * print.c (canonicalize_printcharfun): * print.c (output_string): * print.c: * opaque.h: * opaque.c (allocate_managed_opaque): * opaque.c: * offix.c (DndSetData): * objects.c (face_boolean_create): * objects.c (font_instantiate): * objects.c (font_create): * objects.c (color_create): * objects.c (finalize_font_instance): * objects.c (finalize_color_instance): * objects.c: * objects-x.c (x_font_instance_truename): * objects-x.c: * objects-x.c (x_initialize_font_instance): * objects-x.c (allocate_nearest_color): * objects-tty.c (tty_initialize_font_instance): * objects-tty.c (tty_initialize_color_instance): * objects-msw.c (mswindows_initialize_color_instance): * ntproc.c (syms_of_ntproc): * ntproc.c (Fwin32_set_process_priority): * ntproc.c (sys_spawnve): * ntproc.c: * ntheap.c (get_data_end): * nt.c (period): * nt.c: * nt.c (stat): * nt.c (generate_inode_val): * nt.c (sys_rename): * nas.c: * mule-wnnfns.c (Fwnn_hinsi_number): * mule-wnnfns.c (Fwnn_yuragi): * mule-wnnfns.c (Fwnn_common_learn): * mule-wnnfns.c (Fwnn_suffix_learn): * mule-wnnfns.c (Fwnn_prefix_learn): * mule-wnnfns.c (Fwnn_okuri_learn): * mule-wnnfns.c (Fwnn_complex_conv): * mule-wnnfns.c (Fwnn_last_is_first): * mule-wnnfns.c (Fwnn_bmodify_dict_add): * mule-wnnfns.c (Fwnn_notrans_dict_add): * mule-wnnfns.c (Fwnn_fiusr_dict_add): * mule-wnnfns.c (Fwnn_fisys_dict_add): * mule-wnnfns.c (Fwnn_hinsi_list): * mule-wnnfns.c (Fwnn_fuzokugo_set): * mule-wnnfns.c (Fwnn_dict_search): * mule-wnnfns.c (Fwnn_word_toroku): * mule-wnnfns.c (Fwnn_hindo_update): * mule-wnnfns.c (Fwnn_bunsetu_henkou): * mule-wnnfns.c (Fwnn_kakutei): * mule-wnnfns.c (Fwnn_begin_henkan): * mule-wnnfns.c (Fwnn_dict_comment): * mule-wnnfns.c (Fwnn_dict_add): * mule-wnnfns.c (Fwnn_open): * mule-mcpath.c (mc_getcwd): * mule-coding.c (vars_of_mule_coding): * mule-coding.c (convert_to_external_format): * mule-coding.c (encoding_marker): * mule-coding.c (decoding_marker): * mule-coding.c (Fcopy_coding_system): * mule-coding.c (Fmake_coding_system): * mule-coding.c (Fcoding_system_list): * mule-coding.c (Ffind_coding_system): * mule-coding.c (symbol_to_eol_type): * mule-coding.c: * mule-charset.c (complex_vars_of_mule_charset): * mule-charset.c (vars_of_mule_charset): * mule-charset.c (Fset_charset_ccl_program): * mule-charset.c (struct charset_list_closure): * mule-charset.c (Ffind_charset): * mule-charset.c (make_charset): * mule-charset.c (non_ascii_valid_char_p): * mule-charset.c: * mule-ccl.c (ccl_driver): * mule-canna.c (c2mu): * mule-canna.c (Fcanna_henkan_begin): * mule-canna.c (Fcanna_parse): * mule-canna.c (Fcanna_store_yomi): * mule-canna.c (Fcanna_touroku_string): * mule-canna.c (Fcanna_initialize): * minibuf.c: * menubar.c (menu_parse_submenu_keywords): * menubar-x.c (make_dummy_xbutton_event): * menubar-x.c (set_frame_menubar): * menubar-x.c (menu_item_descriptor_to_widget_value_1): * menubar-x.c: * menubar-msw.h: * menubar-msw.c (mswindows_popup_menu): * menubar-msw.c (mswindows_update_frame_menubars): * menubar-msw.c (mswindows_handle_wm_command): * menubar-msw.c (unsafe_handle_wm_initmenu_1): * menubar-msw.c (unsafe_handle_wm_initmenupopup_1): * menubar-msw.c (update_frame_menubar_maybe): * menubar-msw.c (populate_or_checksum_helper): * menubar-msw.c (empty_menu): * menubar-msw.c: * md5.c: * marker.c (set_marker_internal): * marker.c (print_marker): * malloc.c: * make-src-depend: * lstream.c (lisp_buffer_rewinder): * lstream.c (mark_lstream): * lrecord.h: * lrecord.h (struct lrecord_header): * lread.c (readevalloop): * lread.c (locate_file): * lread.c (locate_file_in_directory): * lread.c (Flocate_file): * lread.c (load_force_doc_string_unwind): * lread.c (ebolify_bytecode_constants): * lread.c: * lisp.h: * lisp-union.h: * lisp-disunion.h: * linuxplay.c (linux_play_data_or_file): * linuxplay.c (audio_init): * line-number.c: * keymap.h: * keymap.c (describe_map): * keymap.c (describe_map_mapper): * keymap.c (Fdescribe_bindings_internal): * keymap.c (Fsingle_key_description): * keymap.c (map_keymap_sorted): * keymap.c (get_relevant_keymaps): * keymap.c (Flookup_key): * keymap.c (raw_lookup_key_mapper): * keymap.c (Fdefine_key): * keymap.c (Fevent_matches_key_specifier_p): * keymap.c (key_desc_list_to_event): * keymap.c (define_key_parser): * keymap.c (define_key_check_and_coerce_keysym): * keymap.c (keymap_submaps): * keymap.c (keymap_store_internal): * keymap.c (keymap_delete_inverse_internal): * keymap.c (keymap_store_inverse_internal): * keymap.c (print_keymap): * keymap.c (Lisp_Keymap): * keymap.c: * intl.c: * insdel.c (convert_bufbyte_string_into_emchar_dynarr): * insdel.c (make_gap): * input-method-xlib.c (get_XIM_input): * input-method-xlib.c (XIM_init_frame): * imgproc.c: * hash.h: * hash.c: * gui.c: * gui-x.c (button_item_to_widget_value): * gui-x.c (popup_selection_callback): * glyphs.h (struct image_instantiator_methods): * glyphs.c (mark_glyph_cachels): * glyphs.c (Fglyph_type): * glyphs.c (image_instantiate): * glyphs.c (image_create): * glyphs.c (make_image_instance_1): * glyphs.c (finalize_image_instance): * glyphs.c: * glyphs-x.c (finalize_subwindow): * glyphs-x.c (xface_validate): * glyphs-x.c (x_locate_pixmap_file): * glyphs-x.c (convert_EImage_to_XImage): * glyphs-msw.c: * glyphs-msw.c (mswindows_resource_instantiate): * glyphs-msw.c (xpm_to_eimage): * glyphs-msw.c (convert_EImage_to_DIBitmap): * glyphs-eimage.c (tiff_instantiate): * glyphs-eimage.c (png_instantiate): * glyphs-eimage.c (struct png_error_struct): * glyphs-eimage.c (gif_memory_storage): * glyphs-eimage.c: * gifrlib.h: * getloadavg.c (getloadavg): * getloadavg.c: * gdbinit: * free-hook.c (log_gcpro): * free-hook.c (check_malloc): * free-hook.c (check_free): * free-hook.c (ROUND_UP_TO_PAGE): * free-hook.c: * frame.h (struct frame): * frame.h: * frame.c (change_frame_size_1): * frame.c (allocate_frame_core): * frame.c: * frame-x.c (x_focus_on_frame): * frame-x.c (x_init_frame_2): * frame-x.c (x_popup_frame): * frame-x.c (xemacs_XtPopup): * frame-x.c: * frame-x.c (Foffix_start_drag_internal): * frame-x.c (x_cde_destroy_callback): * frame-x.c (x_wm_hack_wm_protocols): * frame-tty.c (tty_frame_visible_p): * frame-msw.c (mswindows_make_frame_invisible): * frame-msw.c (mswindows_after_init_frame): * frame-msw.c (mswindows_init_frame_1): * fns.c (syms_of_fns): * fns.c (Fbase64_decode_string): * fns.c (Fnconc): * fns.c (Ffillarray): * fns.c (Fobject_plist): * fns.c (Fget): * fns.c (Fcanonicalize_lax_plist): * fns.c (Fcanonicalize_plist): * fns.c (Fplist_remprop): * fns.c (Fplist_get): * fns.c (advance_plist_pointers): * fns.c (internal_plist_put): * fns.c (Fnreverse): * fns.c (Fremassq): * fns.c (Felt): * fns.c (Fsubstring): * fns.c (Fbvconcat): * fns.c (Flength): * fns.c (length_with_bytecode_hack): * fns.c (print_bit_vector): * fns.c: * floatfns.c (Ffloor): * floatfns.c: * floatfns.c (in_float_error): * fileio.c (Ffile_modes): * fileio.c (Fexpand_file_name): * fileio.c (Fmake_temp_name): * fileio.c (Ffile_name_nondirectory): * fileio.c (Ffile_name_directory): * file-coding.h: * file-coding.c (vars_of_mule_coding): * file-coding.c (convert_to_external_format): * file-coding.c (encoding_marker): * file-coding.c (decoding_marker): * file-coding.c (Fcopy_coding_system): * file-coding.c (Fmake_coding_system): * file-coding.c (struct coding_system_list_closure): * file-coding.c (Ffind_coding_system): * file-coding.c (symbol_to_eol_type): * file-coding.c: * faces.h (struct face_cachel): * faces.c (vars_of_faces): * faces.c (face_property_was_changed): * faces.c (mark_face_cachels): * faces.c (temporary_faces_list): * faces.c (struct face_list_closure): * faces.c: * extents.h (struct extent): * extents.c (vars_of_extents): * extents.c (struct copy_string_extents_1_arg): * extents.c (add_string_extents_mapper): * extents.c (Fextent_property): * extents.c (Fset_extent_property): * extents.c (symbol_to_glyph_layout): * extents.c (properties_equal): * extents.c (print_extent): * extents.c (print_extent_1): * extents.c (extent_in_region_p): * extents.c (gap_array_make_gap): * extents.c: * events.h (struct Lisp_Event): * events.h: * events.c (Fevent_properties): * events.c (format_event_object): * events.c (Fmake_event): * events.c (event_equal): * events.c (print_event): * events.c (mark_event): * event-stream.c ((read-char) * event-stream.c (vars_of_event_stream): * event-stream.c (syms_of_event_stream): * event-stream.c (Fset_recent_keys_ring_size): * event-stream.c (Fsit_for): * event-stream.c (Fnext_event): * event-stream.c (execute_help_form): * event-stream.c (maybe_kbd_translate): * event-stream.c: * event-msw.c (vars_of_event_mswindows): * event-msw.c (mswindows_wnd_proc): * event-msw.c (mswindows_need_event): * event-msw.c (mswindows_drain_windows_queue): * event-msw.c (mswindows_pump_outstanding_events): * event-msw.c: * event-msw.c (slurp_thread): * event-msw.c (struct ntpipe_slurp_stream): * event-msw.c (HANDLE_TO_USID): * event-Xt.c (emacs_Xt_handle_magic_event): * event-Xt.c (x_event_to_emacs_event): * event-Xt.c (x_reset_modifier_mapping): * event-Xt.c (x_reset_key_mapping): * event-Xt.c: * eval.c (syms_of_eval): * eval.c (warn_when_safe): * eval.c (warn_when_safe_lispobj): * eval.c (Fbacktrace_frame): * eval.c (Fbacktrace): * eval.c (top_level_set): * eval.c (unbind_to_hairy): * eval.c (specbind_magic): * eval.c (specbind_unwind_wasnt_local): * eval.c (call2_trapping_errors): * eval.c (call1_trapping_errors): * eval.c (catch_them_squirmers_call2): * eval.c (call0_trapping_errors): * eval.c (run_hook_trapping_errors): * eval.c (catch_them_squirmers_eval_in_buffer): * eval.c (call4_in_buffer): * eval.c (call3_in_buffer): * eval.c (call2_in_buffer): * eval.c (call1_in_buffer): * eval.c (call0_in_buffer): * eval.c (run_hook): * eval.c (run_hook_with_args_in_buffer): * eval.c (Fapply): * eval.c (Feval): * eval.c (do_autoload): * eval.c (un_autoload): * eval.c (Fautoload): * eval.c (Finteractive_p): * eval.c (Fcommand_execute): * eval.c (signal_quit): * eval.c (call_with_suspended_errors): * eval.c (signal_error): * eval.c (return_from_signal): * eval.c (Fcall_with_condition_handler): * eval.c (run_condition_case_handlers): * eval.c (condition_case_1): * eval.c (Funwind_protect): * eval.c (unwind_to_catch): * eval.c (internal_catch): * eval.c (Fmacroexpand_internal): * eval.c (Fuser_variable_p): * eval.c (Fdefconst): * eval.c (Fdefvar): * eval.c (Ffunction): * eval.c (signal_call_debugger): * eval.c (call_debugger): * eval.c: * emacs.c (main): * emacs.c (sort_args): * emacs.c (main_1): * elhash.h: * elhash.c: * editfns.c (Fencode_time): * editfns.c (Fdecode_time): * editfns.c (Fuser_full_name): * editfns.c: * editfns.c (save_excursion_restore): * ecrt0.c: * dynarr.c: * doprnt.c (emacs_doprnt_1): * doc.c (verify_doc_mapper): * doc.c (Fsnarf_documentation): * doc.c (Fdocumentation): * dll.c: * dired.c (user_name_completion): * dired.c (Fdirectory_files): * dialog-x.c: * dialog-msw.c: * dgif_lib.c (FreeSavedImages): * dgif_lib.c (DGifGetImageDesc): * device.h: * device.h (struct device): * device.c (Fselect_device): * device.c (allocate_device): * device.c: * device-x.c (Fx_keysym_on_keyboard_p): * device-x.c (Fx_valid_keysym_name_p): * device-x.c (x_IO_error_handler): * device-x.c (x_delete_device): * device-x.c (x_finish_init_device): * device-x.c (x_init_device): * device-x.c: * device-msw.c (mswindows_init_device): * dbxrc: * database.c (vars_of_database): * database.c (Fput_database): * database.c (Fopen_database): * database.c (berkdb_remove): * database.c (berkdb_put): * database.c (Fdatabasep): * database.c (print_database): * database.c: * data.c (vars_of_data): * data.c (syms_of_data): * data.c (init_errors_once_early): * data.c (prune_weak_lists): * data.c (finish_marking_weak_lists): * data.c (print_weak_list): * data.c (Fmod): * data.c (Fstring_to_number): * data.c (Fnumber_to_string): * data.c (Findirect_function): * data.c (Fsetcdr): * data.c (Ffloatp): * data.c (Fsubr_interactive): * data.c (Farrayp): * data.c (Fkeywordp): * data.c (Fnull): * data.c: * console.h (CONSOLE_NAME): * console.h: * console.c (vars_of_console): * console.c (Fselect_console): * console.c: * console-x.h (DEVICE_X_COLORMAP): * console-x.h (struct x_device): * console-x.c (x_device_to_console_connection): * console-tty.h (CONSOLE_TTY_FINAL_CURSOR_Y): * console-tty.c (tty_init_console): * console-tty.c: * console-msw.h (struct mswindows_frame): * conslots.h: * config.h.in: * cmds.c (internal_self_insert): * cmds.c (Fforward_line): * cmds.c (Fforward_char): * cmds.c: * cmdloop.c: * chartab.c (mark_char_table_entry): * chartab.c: * casefiddle.c (casify_word): * callproc.c (child_setup): * callproc.c (Fcall_process_internal): * callproc.c: * callint.c (Fcall_interactively): * bytecode.h: * bytecode.c (execute_rare_opcode): * bytecode.c (execute_optimized_program): * bytecode.c: * bufslots.h: * buffer.h (BUFFER_REALLOC): * buffer.h (GET_CHARPTR_INT_DATA_ALLOCA): * buffer.h (GET_CHARPTR_EXT_DATA_ALLOCA): * buffer.h: * buffer.h (MAP_INDIRECT_BUFFERS): * buffer.h (CHECK_LIVE_BUFFER): * buffer.c (init_initial_directory): * buffer.c (complex_vars_of_buffer): * buffer.c (vars_of_buffer): * buffer.c (finish_init_buffer): * buffer.c (Fget_file_buffer): * buffer.c (Fbuffer_list): * buffer.c (mark_buffer): * balloon_help.c (balloon_help_move_to_pointer): * balloon_help.c (show_help): * balloon_help.c: * backtrace.h: * alloc.c (garbage_collect_1): * alloc.c (sweep_strings): * alloc.c (sweep_compiled_functions): * alloc.c (sweep_bit_vectors_1): * alloc.c (sweep_vectors_1): * alloc.c (sweep_lcrecords_1): * alloc.c (tick_lcrecord_stats): * alloc.c (pure_string_sizeof): * alloc.c (mark_conses_in_list): * alloc.c (mark_object): * alloc.c (report_pure_usage): * alloc.c (make_pure_float): * alloc.c (make_pure_string): * alloc.c (free_managed_lcrecord): * alloc.c (mark_string): * alloc.c (noseeum_make_marker): * alloc.c (allocate_event): * alloc.c (Fbit_vector): * alloc.c (Fvector): * alloc.c (make_float): * alloc.c (Fmake_list): * alloc.c (Flist): * alloc.c (FREE_FIXED_TYPE_WHEN_NOT_IN_GC): * alloc.c (PUT_FIXED_TYPE_ON_FREE_LIST): * alloc.c (DECLARE_FIXED_TYPE_ALLOC): * alloc.c (dbg_constants): * alloc.c (gc_record_type_p): * alloc.c (free_lcrecord): * alloc.c (xmalloc): * alloc.c (NOSEEUM_INCREMENT_CONS_COUNTER): * abbrev.c: * Makefile.in.in (mostlyclean): * Makefile.in.in (external_client_xlib_objs_nonshared): * Makefile.in.in (temacs_link_args): * Makefile.in.in (release): * Makefile.in.in (dnd_objs): * Makefile.in.in (objs): * Makefile.in.in (PROGNAME): * EmacsShell.c: cast strings to (XtPointer) * EmacsFrame.c: cast strings to (XtPointer) - mega patch - rewrite basic lisp functions for speed - rewrite bytecode interpreter for speed - rewrite list looping constructs for speed and safety using tortoise/hare. - use size_t where appropriate. - new hashtable implementation - cleanup implementation of opaques - opaques can now be purecopy'ed - move some cl functionality into C for speed. - remove last remaining VMS support - spelling fixes - improve gdb/dbx debugger support - move pure.c back into alloc.c for performance - enable report_pure_usage() if --memory-usage-stats - remove remnants of Energize support (EMACS_BTL, cadillac...) - don't use symbols with leading `_' or embedded `__' - globally cleanup duplicated semicolons `;;' - I give in on %p vs %lx - we use printf("%lx",(long) p) globally. - globally replace O_NDELAY with O_NONBLOCK. - globally replace CDISABLE with _POSIX_VDISABLE. - use O_RDONLY and O_RDWR instead of magic `0' and `2'. - define (and maybe use!) STDERR_FILENO and friends. - add support for macros defined in C - `when', `unless', `not' and `defalias' now defined in C, so that they are universally available. - rename defvar_mumble to defvar_magic - rename RETURN__ to RETURN_SANS_WARNINGS - use consistent style of initial caps in error messages - implement last, butlast, nbutlast, copy-list in C. - provide typedefs for all struct Lisp_foo types - Lisp_Objects must be initialized to Qnil rather than 0. - make sure XEmacs runs (slowly) with always_gc == 1; - fast and safe LOOP_* macros - change calls to XSETOBJ to XSETFOO - replace calls to XSETINT by make_int() - plug up memory leaks - use style markobj (foo), not silly ((markobj) (foo)) - use XFLOAT_DATA (obj) instead of float_data (XFLOAT (obj)) 1998-12-02 P. E. Jareth Hein * unexec.c: Changed a #ifndef statement to fix XEmacs on BSDI 3.0 1998-11-28 SL Baur * XEmacs 21.2-beta4 is released. 1998-11-27 SL Baur * mule-charset.c (complex_vars_of_mule_charset): Fix graphic property in control-1 charset. From Julian Bradfield 1998-11-26 Jan Vroonhof * gui-x.c (button_item_to_widget_value): Ignore :key-sequence keyword. Add stub for :label. * gui.c (gui_item_add_keyval_pair): ditto. * menubar-x.c (menu_item_descriptor_to_widget_value_1): Ignore :key-sequence keyword. Add stub for:label. Support :active for submenus like the Windows code and FSF Emacs. 1998-11-27 Hrvoje Niksic * dired.c (make_directory_hash_table): make_string() is OK because readdir() Mule-encapsulates. 1998-11-26 Hrvoje Niksic * fns.c (Fbase64_encode_string): Fix docstring. (Fbase64_decode_string): Ditto. 1998-11-26 Hrvoje Niksic * editfns.c (Ftranslate_region): Use convert_bufbyte_string_into_emchar_string(). 1998-11-25 Hrvoje Niksic * editfns.c (Ftranslate_region): Accept vectors and char-tables as well as strings. (Ftranslate_region): Turn table into an array of Emchars for larger regions. 1998-11-25 Hrvoje Niksic * chartab.c (Freset_char_table): Fix wrong placement of #endif. 1998-11-24 Hrvoje Niksic * chartab.c (Freset_char_table): Don't blindly fill chartables of type `char' with nils. * chartab.c (canonicalize_char_table_value): Coerce ints to chars for tables of type `char'. 1998-11-26 Didier Verna * input-method-xlib.c (Initialize_Locale): don't call XtSetLanguageProc. We've done the whole work here. * input-method-xfs.c (Initialize_Locale): ditto. * input-method-motif.c (Initialize_Locale): ditto. 1998-11-26 Didier Verna * process-unix.c (unix_create_process): handle properly Vfile_name_coding_system for converting the program and directory names. 1998-11-27 SL Baur * m/arm.h: New file. From James LewisMoss 1998-11-27 Takeshi Hagiwara * m/mips-nec.h: Fix the realpath() problem of UnixWare2.1.3. Patches for NEC's sysv4.2 machine. 1998-11-25 Hrvoje Niksic * dired.c (Fdirectory_files): Remove redundant code. 1998-11-25 Hrvoje Niksic * fns.c (free_malloced_ptr): New function. (XMALLOC_OR_ALLOCA): New macro. (XMALLOC_UNBIND): Ditto. (Fbase64_encode_region): Use malloc() for large blocks; arrange it to be freed in case of non-local exit. (Fbase64_encode_string): Ditto. (Fbase64_decode_region): Ditto. (Fbase64_decode_string): Ditto. (STORE_BYTE): New macro. (base64_decode_1): Use it. 1998-11-25 Hrvoje Niksic * fns.c (base64_value_to_char): Base64 stuff. 1998-11-24 Hrvoje Niksic * editfns.c (Fbuffer_substring): New function. * lisp.h: Declare make_string_from_buffer_no_extents(). * insdel.c (make_string_from_buffer_1): New function. (make_string_from_buffer_no_extents): Ditto. 1998-11-15 Michael Sperber [Mr. Preprocessor] * linuxplay.c: Including instead of makes sound work on AIX with OSS installed. Linux should still work. 1998-11-03 Andy Piper * config.h.in: name change for cygwin/version.h * configure.in: check for cygwin/version.h now. * cygwin32.h: track CYGWIN_DLL_VERSION_MAJOR -> CYGWIN_VERSION_DLL_MAJOR name change in cygwin b20. move cygwin32/version.h to cygwin/version.h 1998-11-03 Olivier Galibert * lisp.h (struct Lisp_Bit_Vector): Fix declaration of bits from int to long. 1998-10-22 Andy Piper * cygwin32.h: track CYGWIN_DLL_VERSION_MAJOR -> CYGWIN_VERSION_DLL_MAJOR name change in cygwin b20. enable BROKEN_SIGIO under b20 to make QUIT work. 1998-10-22 Andy Piper * frame-msw.c (mswindows_size_frame_internal): force frame sizing to fit within the constraints of the screen size. I.e. make the frame small enough to fit and move it if some of it will be off-screen. 1998-10-19 Greg Klanderman * dired.c: conditionalize inclusion of user-name-completion primitives on non-Windows NT. The needed functions don't exist on NT. 1998-11-24 SL Baur * gifrlib.h: Clean up types for 64 bit compile. * dgif_lib.c (DGifInitRead): Ditto. (MakeSavedImage): Ditto. * emacs.c (decode_path): Ditto. From Steve Carney 1998-10-16 William M. Perry * glyphs-msw.c (bitmap_table): Fixed typo in builtin bitmaps (cehckboxes instead of checkboxes). 1998-10-15 SL Baur * XEmacs 21.2-beta3 is released. 1998-10-13 Raymond Toy * runemacs.c (WinMain): If the basename is "rungnuclient.exe", run gnuclient. Otherwise, we run xemacs as we always did. This gets rid of the annoying DOS window when running gnuclient. 1998-10-13 Andy Piper * dragdrop.c (vars_of_dragdrop): rename HAVE_MSWINDOWS -> HAVE_MS_WINDOWS typo. 1998-10-13 SL Baur * process-unix.c (unix_send_process): Set closed flag on writable pipe after SIGPIPE is received and before we call deactivate_process. 1998-10-03 Gunnar Evermann * window.c (Fset_window_start): respect narrowing when checking wheter start is at the beginning of a line. (Fset_window_buffer): Ditto Fixes repeatable crash in VM. 1998-10-09 SL Baur * window.c (specifier_vars_of_window): Set default vertical divider width to 1 on ttys. 1998-10-08 Martin Buchholz * alloc.c: * unexec.c: * malloc.c: Add to get ptrdiff_t declaration 1998-10-07 Jonathan Harris * scrollbar-msw.c: Use the same vertical scrollbar drag hack as is used for Motif or Lucid scrollbars under X. 1998-10-08 Pierre Wendling * m/alpha.h (UNEXEC): quoted to avoid bad expansion when running `configure' 1998-10-06 Takeshi Hagiwara * frame-x.c (x_delete_frame): Fix an argument of XtDestroyWidget. 1998-10-05 Andy Piper * s/cygwin32.h: more cygwin b20 reorganisation. 1998-10-01 Raymond Toy * nas.c: Added necessary support functions to be able to handle WAVE files in memory, just like the support for SND files in memory. 1998-09-30 SL Baur * callproc.c (child_setup): Fix spelling typo. 1998-09-29 SL Baur * XEmacs 21.2-beta2 is released. 1998-09-27 P. E. Jareth Hein * regex.c (re_match_2_internal): Add in code to reset lowest_active_reg to prevent memory corruption in the case of jumping out of a series of nested match patterns. This is a rather brute force approach, though. 1998-09-02 Andy Piper * config.h.in: ditto. * s/cygwin32.h: rearrange declarations to cope with cygwin b20. Include cygwin32/version.h if it exists. 1998-09-20 Jonathan Harris * device-msw.c (mswindows_init_device): Call new mswindows_enumerate_fonts() function in objects-msw.c instead of font_enum_callback_1() to enumerate fonts. font_enum_callback_1() and _2() moved to objects-msw.c. * faces.c (complex_vars_of_faces): Make the mswindows default face font fully specified and provide some fallbacks. * objects-msw.c: font_enum_callback_1() and _2() moved here from objects-msw.c. Obtain the enumerated font's character sets by table lookup instead of using the locale-specific string provided by Windows. New public non-method mswindows_enumerate_fonts() that fills in the supplied mswindows device's font list. mswindows_initialize_font_instance: Use the supplied name variable instead of f->name when signalling errors. Match font weights and character sets using lookup tables which handle spaces instead of by frobbing. 1998-09-20 Jonathan Harris * process-nt.c: Define an arbitrary limit, FRAGMENT_CODE_SIZE, on the size of code fragments passed to run_in_other_process. run_in_other_process(): Use FRAGMENT_CODE_SIZE to determine the amount of memory to allocate in the other process. Removed sigkill_code_end(), sigint_code_end() and sig_enable_code_end() since they are now redundant. send_signal() and enable_child_signals(): Don't try to work out the end of the code fragments passed to run_in_other_process() 1998-09-10 Kazuyuki IENAGA * src/s/freebsd.h: Added __ELF__ and compiler/liker flags for FreeBSD-current. * src/unexelf.c: Partially synched with FSF's 20.3. 1998-09-10 Hrvoje Niksic * insdel.c (signal_after_change): Map across indirect buffers here, and not in the upper-level functions. (signal_first_change): Don't check for Armageddon. (signal_before_change): Map across indirect buffers here. (prepare_to_modify_buffer): ...and here. 1998-09-09 Hrvoje Niksic * insdel.c (signal_after_change): Add return value. (buffer_insert_string_1): Use it. (buffer_delete_range): Ditto. (buffer_replace_char): Ditto. (cancel_multiple_change): Map the indirect buffers. 1998-09-06 Hrvoje Niksic * insdel.c (init_buffer_text): Remove INDIRECT_P parameter. (uninit_buffer_text): Ditto. * buffer.c (Fmake_indirect_buffer): Implement stricter error-checking. 1998-09-04 Hrvoje Niksic * insdel.c (change_function_restore): Reverse order of function-call and assignment. (first_change_hook_restore): Ditto. * extents.c (mark_extent_auxiliary): Mark them. (Fset_extent_property): Set them. (Fextent_property): Get them. (Fextent_properties): Ditto. (vars_of_extents): Set their default. * extents.h (struct extent_auxiliary): Add before_change_functions and after_change_functions. * insdel.c (signal_before_change): Use it. (signal_after_change): Ditto. * extents.c (report_extent_modification): New function. * insdel.c (signal_before_change): Don't check for Armageddon. (signal_after_change): Ditto. 1998-09-11 Gunnar Evermann * redisplay.c (redisplay_window): make sure a new starting point is chosen if it somehow got moved from the beginning of the line -- this can happen because Fwiden was called recently. * window.c (Fset_window_start): set start_at_line_beg correctly (Fset_window_buffer): Ditto 1998-09-06 Hrvoje Niksic * insdel.c (init_buffer_text): Remove INDIRECT_P parameter. (uninit_buffer_text): Ditto. * buffer.c (Fmake_indirect_buffer): Implement stricter error-checking. 1998-05-14 Jan Vroonhof * emacs.c (main_1): Removed references to *vars_of_filelock. * lisp.h: Added Fsystem_name. * filelock.c: Replaced by version from FSF 20.2. Now implements locking by using symlinks which is NFS safe. However keep the GCPRO's in lock_file and the calls to callx_in_buffer like our old version (and of course use ansi C, acessor macros, etc). 1998-09-06 Jan Vroonhof * process-unix.c (unix_create_process): Reset SIGHUP handler to SIG_DFL. We now try to conserve any inherted SIG_IGN settings in init_signals_very_early. However these should not be passed on to children attached to the new pty. 1998-08-28 Andy Piper * glyphs-eimage.c (png_instantiate_unwind): clean up eimage after use. 1998-09-07 Jonathan Harris * fileio.c (file-name-directory, file_name_as_directory): Don't call CORRECT_DIR_SEPS, even when #defined WINDOWSNT. 1998-09-02 Andy Piper * emacs.c (main_1): init_ralloc() if initialised and we have REL_ALLOC * ralloc.c: uncomment __morecore. 1998-09-92 Jonathan Harris * event-msw.c(winsock_writer): Supply a dummy 4th argument to WriteFile() to fix a winsock 1.x bug on Win95. 1998-08-28 Hrvoje Niksic * event-Xt.c (emacs_Xt_mapping_action): Check for device being deleted. (x_event_to_emacs_event): Ditto. (emacs_Xt_handle_focus_event): Ditto. (emacs_Xt_handle_magic_event): Ditto. * console-x.h (struct x_device): New flag being_deleted. (DEVICE_X_BEING_DELETED): New macro. * device-x.c (x_IO_error_handler): Throw to top-level instead of returning. Before doing that, set the being_deleted flag on the device. 1998-08-27 Hrvoje Niksic * device-x.c (x-seppuku-on-epipe): Removed. 1998-08-26 Gunnar Evermann * frame-x.c (x_delete_frame): Flush the X output buffer after calling XtDestroyWidget to ensure that the windows are really killed right now. 1998-08-26 Hrvoje Niksic * menubar-x.c (my_run_hook): New unused function. (pre_activate_callback): Use run_hook for Qactivate_menubar_hook, since we ignore the results of the contained functions anyway. 1998-08-26 P. E. Jareth Hein * glyphs-eimage.c (gif_instantiate): Fix a crash in handling interlaced GIF files that are smaller than 4 lines high... 1998-08-31 Hrvoje Niksic * buffer.c (map_over_sharing_buffers): Deleted. * insdel.c (MAP_INDIRECT_BUFFERS): Move to buffer.h. * buffer.c (Fkill_buffer): Keep indirect_children updated while killing them. 1998-08-31 Hrvoje Niksic * insdel.c (buffer_insert_string_1): Advance the point bytind in all the buffers. (buffer_delete_range): Ditto. * marker.c (init_buffer_markers): Set point-marker to the value of point in an indirect buffer. 1998-08-30 Hrvoje Niksic * undo.c (undo_prelude): Test last-undo-buffer against base buffer. * insdel.c (MAP_INDIRECT_BUFFERS): Use it. * buffer.h (BUFFER_BASE_BUFFER): New macro. 1998-08-30 Hrvoje Niksic * insdel.c (init_buffer_text): Initialize it here. * line-number.c: Address line_number_cache through buffer->text. * buffer.c (mark_buffer): Mark line number cache. * bufslots.h (line_number_cache): Move to struct buffer_text. * insdel.c (buffer_insert_string_1): Propagate signals and changes across the children buffers. (buffer_delete_range): Ditto. (buffer_replace_char): Ditto. (gap_left): Ditto. (gap_right): Ditto. * insdel.c (MAP_INDIRECT_BUFFERS): New macro. * buffer.c (Fmake_indirect_buffer): Uncomment. 1998-08-31 Hrvoje Niksic * macros.c (Fend_kbd_macro): Remove trailing period from error message. (Fexecute_kbd_macro): Ditto. 1998-08-21 Greg Klanderman * dired.c (Fuser_name_completion): remove optional 2nd argument. (Fuser_name_completion_1): new function to return uniqueness indication in addition to the user name completion. (user_name_completion): change type of `uniq' argument. 1998-08-19 Michael Sperber [Mr. Preprocessor] * lread.c (vars_of_lread): Removed `source-directory' variable. 1998-08-22 Hrvoje Niksic * fileio.c (Ffile_readable_p): Apply the DOS/Windows logic to Cygwin. 1998-08-19 SL Baur * dired.c (vars_of_dired): Fix misapplied patch. 1998-08-16 Martin Buchholz * fns.c (Fremrassq, remrassq_no_quit): A XCAR that should have been an XCDR turned Fremrassq into Fremassq 1998-07-17 Didier Verna * redisplay-x.c (x_get_gc): returns a GC with a FillStipple fill style as foreground GC for faces that have the `dim' property. (x_output_string): when the `dim' face property is set, ensure the gray pixmap has been created, and get a proper foreground GC to draw the text. 1998-08-09 Jonathan Harris * event-msw.c (mswindows_wnd_proc): Workaround for a Win95 bug: Manually track the state of the left and right Ctrl and Alt modifiers. 1998-08-07 Matt Stupple * ntproc.c: don't wait on char_consumed at thread entry. Additionally, to get the 'process' marked as finished, ensure that the CHILD_ACTIVE macro returns false, so before exiting close char_avail and set it to NULL, and close other handles to reduce handle leak problems. 1998-08-09 Jonathan Harris * menubar-msw.c (displayable_menu_item): take account of menu depth when deciding whether to try to display accelerators. 1998-08-04 Andy Piper * event-msw.c: use MsgWaitForMultipleObjects if there are no subprocesses. * glyphs-msw.c: fix a couple of potential handle leaks. 1998-08-04 P. E. Jareth Hein * dgif_lib.c gif_io.c gifrlib.h: New files to put GIF *decoding ONLY* back into the core. * glyphs-eimage.c: Change referenced header file for GIF reading to point to the incore version. 1998-07-20 Martin Buchholz * casefiddle.c (casify_object): Change algorithm from O(N**2) to O(N). Code cleanup. Doc string cleanup. 1998-07-22 Greg Klanderman * dired.c (file_name_completion_unwind): don't leak the cons. 1998-07-20 Greg Klanderman * dired.c (Fuser_name_completion): new function. (Fuser_name_all_completions): new function. (user_name_completion): new function. (syms_of_dired): 2 new DEFSUBRs. (vars_of_dired): initialize user name cache vars. 1998-07-29 P. E. Jareth Hein * glyphs-eimage.c (png_instantiate): Add proper handling for background colors taken from the default face. Also correct a thinko in transparency (not alpha) handling. 1998-07-23 Martin Buchholz * s/decosf4-0.h: Use a perfectly ordinary link. Nuke BSD crap. * unexalpha.c: ANSI C-ize. Clean compiler warnings. * lread.c (Fload_internal): Be very careful with printfs of size_t's * gui-x.c (menu_name_to_accelerator): tolower wants an `int' argument. 1998-07-27 Gunnar Evermann * callint.c (Fcall_interactively): GCPRO prompt string before passing it to Fread_key_sequence 1998-07-27 SL Baur * keymap.c (vars_of_keymap): Initialize Vkey_translation_map and Vvertical_divider_map. * mule-canna.c (vars_of_mule_canna): Initialize every symbol to Qnil or 0, none were initialized prior to this change. Rename misnamed `V' prefixed integer variables: Vcanna_empty_info, Vcanna_through_info, Vcanna_underline, Vcanna_inhibit_hankakukana, Vcanna_henkan_length, Vcanna_henkan_revPos, Vcanna_henkan_revLen, Vcanna_ichiran_length, Vcanna_ichiran_revPos, Vcanna_ichiran_revLen. Rename misnamed `V' prefixed integer variables and initialize properly in the vars_of routine. Vcanna_mode_AlphaMode, Vcanna_mode_EmptyMode, Vcanna_mode_KigoMode, Vcanna_mode_YomiMode, Vcanna_mode_JishuMode, Vcanna_mode_TankouhoMode, Vcanna_mode_IchiranMode, Vcanna_mode_YesNoMode, Vcanna_mode_OnOffMode, Vcanna_mode_AdjustBunsetsuMode, Vcanna_mode_ChikujiYomiMode, Vcanna_mode_ChikujiTanMode, Vcanna_mode_HenkanMode, Vcanna_mode_HenkanNyuryokuMode, Vcanna_mode_ZenHiraHenkanMode, Vcanna_mode_HanHiraHenkanMode, Vcanna_mode_ZenKataHenkanMode, Vcanna_mode_HanKataHenkanMode, Vcanna_mode_HanKataHenkanMode, Vcanna_mode_ZenAlphaHenkanMode, Vcanna_mode_HanAlphaHenkanMode, Vcanna_mode_ZenHiraKakuteiMode, Vcanna_mode_HanHiraKakuteiMode, Vcanna_mode_ZenKataKakuteiMode, Vcanna_mode_HanKataKakuteiMode, Vcanna_mode_ZenAlphaKakuteiMode, Vcanna_mode_HanAlphaKakuteiMode, Vcanna_mode_HexMode, Vcanna_mode_BushuMode, Vcanna_mode_ExtendMode, Vcanna_mode_RussianMode, Vcanna_mode_GreekMode, Vcanna_mode_LineMode, Vcanna_mode_ChangingServerMode, Vcanna_mode_HenkanMethodMode, Vcanna_mode_DeleteDicMode, Vcanna_mode_TourokuMode, Vcanna_mode_TourokuEmptyMode, Vcanna_mode_TourokuHinshiMode, Vcanna_mode_TourokuDicMode, Vcanna_mode_QuotedInsertMode, Vcanna_mode_BubunMuhenkanMode, Vcanna_mode_MountDicMode, Vcanna_fn_SelfInsert, Vcanna_fn_FunctionalInsert, Vcanna_fn_QuotedInsert, Vcanna_fn_JapaneseMode, Vcanna_fn_AlphaMode, Vcanna_fn_HenkanNyuryokuMode, Vcanna_fn_Forward, Vcanna_fn_Backward, Vcanna_fn_Next, Vcanna_fn_Prev, Vcanna_fn_BeginningOfLine, Vcanna_fn_EndOfLine, Vcanna_fn_DeleteNext, Vcanna_fn_DeletePrevious, Vcanna_fn_KillToEndOfLine, Vcanna_fn_Henkan, Vcanna_fn_Kakutei, Vcanna_fn_Extend, Vcanna_fn_Shrink, Vcanna_fn_AdjustBunsetsu, Vcanna_fn_Quit, Vcanna_fn_ConvertAsHex, Vcanna_fn_ConvertAsBushu, Vcanna_fn_KouhoIchiran, Vcanna_fn_BubunMuhenkan, Vcanna_fn_Zenkaku, Vcanna_fn_Hankaku, Vcanna_fn_ExtendMode, Vcanna_fn_ToUpper, Vcanna_fn_Capitalize, Vcanna_fn_ToLower, Vcanna_fn_Hiragana, Vcanna_fn_Katakana, Vcanna_fn_Romaji, Vcanna_fn_BaseHiragana, Vcanna_fn_BaseKatakana, Vcanna_fn_BaseEisu, Vcanna_fn_BaseZenkaku, Vcanna_fn_BaseHankaku, Vcanna_fn_BaseKana, Vcanna_fn_BaseKakutei, Vcanna_fn_BaseHenkan, Vcanna_fn_BaseHiraKataToggle, Vcanna_fn_BaseZenHanToggle, Vcanna_fn_BaseKanaEisuToggle, Vcanna_fn_BaseKakuteiHenkanToggle, Vcanna_fn_BaseRotateForward, Vcanna_fn_BaseRotateBackward, Vcanna_fn_Touroku, Vcanna_fn_HexMode, Vcanna_fn_BushuMode, Vcanna_fn_KigouMode, Vcanna_fn_Mark, Vcanna_fn_TemporalMode, Vcanna_key_Nfer, Vcanna_key_Xfer, Vcanna_key_Up, Vcanna_key_Left, Vcanna_key_Right, Vcanna_key_Down, Vcanna_key_Insert, Vcanna_key_Rollup, Vcanna_key_Rolldown, Vcanna_key_Home, Vcanna_key_Help, Vcanna_key_KP_Key, Vcanna_key_Shift_Nfer, Vcanna_key_Shift_Xfer, Vcanna_key_Shift_Up, Vcanna_key_Shift_Left, Vcanna_key_Shift_Right, Vcanna_key_Shift_Down, Vcanna_key_Cntrl_Nfer, Vcanna_key_Cntrl_Xfer, Vcanna_key_Cntrl_Up, Vcanna_key_Cntrl_Left, Vcanna_key_Cntrl_Right, Vcanna_key_Cntrl_Down 1998-07-16 Jan Vroonhof * event-Xt.c (x_to_emacs_keysym): Return nil for modifier keysyms. (x_event_to_emacs_event): Let x_to_emacs_keysym check for modifier keys thus no longer considering all keysyms on a key. 1998-07-19 SL Baur * XEmacs 21.2-beta1 is released. 1998-07-12 Oscar Figueiredo * eldap.c (Fldap_search_internal): When converting the list of attributes to search Copy the final 0 from Lisp strings to C strings. Check base, not Vldap_default_base as a a string 1998-07-13 Jonathan Harris * nt.c: Remove Vstdio_str; already defined in console-stream.c. * unexnt.c: Unconditionally define bss_start and bss_size, and ensure that they don't go in the .bss section. 1998-07-17 Olivier Galibert * glyphs-x.c (convert_EImage_to_XImage): Fix previous patch (conv byte order is dependant of the local byte order). From Takeshi Hagiwara 1998-07-18 SL Baur * glyphs-msw.c (mswindows_resource_normalize): Qresource -> Qmswindows_resource. From Jonathan Harris 1998-07-12 SL Baur * general.c (syms_of_general): Add defsymbol for Qresource. * glyphs-msw.c (vars_of_glyphs_mswindows): Rename Qresource to Qmswindows_resource. (TopLevel): Rename 'resource image format to 'mswindows_resource. (mswindows_resource_validate): Rename. (mswindows_resource_normalize): Rename. (mswindows_resource_possible_dest_types): Rename. (mswindows_resource_instantiate): Rename. (image_instantiator_format_create_glyphs_mswindows): Replace `resource' with `mswindows.resource'. * XEmacs 21.0-pre5 is released. 1998-07-10 SL Baur * mule-wnnfns.c (Fwnn_open): Correctly trap on misdefined Wnn server type in environment. Use alloca-ed strings instead of tiny fixed size ones. 1998-07-09 SL Baur * XEmacs 21.0-pre4 is released. 1998-07-01 James N. Potts * fileio.c: (expand_file_name): under win32: Don't treat names as UNC names if a drive letter has been specified. If a drive has been specified, strip out extra directory-seperators that reportedly cause problems under Win95. 1998-07-09 Jonathan Harris * windowsnt.h: Define DUMP_SEPARATE_SECTION when building with MSVC >= 5.0. Put emacs init and zero-init data in a special section of the executable when this is defined. * unexnt.c, ntheap.h: Removed unused find_section() and get_section_size(). * unexnt.c: Fix up the executable's checksum after dumping otherwise the profiler complains. When DUMP_SEPARATE_SECTION is defined, don't need to dump zero-init data separately from init data. Dump emacs data into a special section of the executable. When DUMP_SEPARATE_SECTION not defined, dump .bss up to my_ebss instead of up to the end of bss. 1998-07-09 Jonathan Harris * filelock.c: Removed Vconfigure_lock_directory - already defined in emacs.c. * frame-msw.c: Removed Qinitially_unmapped and Qpopup - already defined in frame.c and general.c respectively. * glyphs-msw.c: Removed Qresource - already defined in general.c. 1998-07-05 Oscar Figueiredo * eldap.c (Fldap_search_internal): Docstring fixes 1998-07-04 Jonathan Harris * nt.c (init_environment): Removed unused PRELOAD_WINSOCK, EMACSDOC and TERM variables. Added EMACSDEBUGPATHS, EMACSPACKAGEPATH and INFOPATH variables. Removed unused get_emacs_configuration function. * s/windowsnt.h: Don't define EMACS_CONFIGURATION here because it is now defined at build-time by the makefile. 1998-07-01 James N. Potts * fileio.c: (expand_file_name): under win32: Don't treat names as UNC names if a drive letter has been specified. If a drive has been specified, strip out extra directory-seperators that reportedly cause problems under Win95. 1998-07-05 Andy Piper * faces.c (complex_vars_of_faces): for the gui-element face don't fallback to the default face, instead provide reasonable default fallbacks that were previously hardcoded elsewhere. 1998-07-06 Olivier Galibert * glyphs-x.c (convert_EImage_to_XImage): Fix pixel writing problem when the X server endianness is different than the client's one. 1998-06-29 Kyle Jones * eval.c (run_hook_with_args_in_buffer): Check default (non-buffer-local) value of hook for nil before treating it as a function. Don't initialize the `globals' variable twice. 1998-06-24 Jonathan Harris * fileio.c: Don't do directory seperator canonicalisation in substitute-in-file-name because we don't know that the filename refers to a local file. 1998-06-24 Adrian Aichner * process-nt.c (nt_create_process): Try appending the standard executable file extensions to the filename if none supplied. 1998-06-29 SL Baur * fileio.c (Fsubstitute_in_file_name): Enable double slash notation for cygwin32. From Keisuke Mori 1998-06-24 Andy Piper * toolbar-msw.c (mswindows_output_toolbar): only enable masked images if we have masks. This handles the xbm case (have masks) and avoids overuse of resources in the xpm case (generally no masks). Don't output small toolbars. 1998-06-29 Kyle Jones * eval.c (run_hook_with_args_in_buffer): Don't treat the default value of a buffer local hook as a list of hooks unless it is both a cons and the car of that cons is not Qlambda. 1998-06-29 SL Baur * extents.c: Email address for Ben Wing is ben@xemacs.org. * process-unix.c: Ditto. * mule-coding.h: Ditto. * mule-coding.c: Ditto. * mule-charset.c: Ditto. * mule-charset.h: Ditto. * file-coding.c: Ditto. * file-coding.h: Ditto. 1998-06-22 Jonathan Harris * event-msw.c: Guard against recursion when freeing FRAME_MSWINDOWS_TARGET_RECT struture in WM_SIZE processing. * frame-msw.c: Don't set WS_VISIBLE attribute on first frame. Call ShowWindow twice in init_frame_3 to get round runemacs weirdness. 1998-06-27 Hrvoje Niksic * scrollbar.c (vertical_scrollbar_changed_in_window): Ditto. * winslots.h: Rename. * window.c (specifier_vars_of_window): Renamed vertical-divider-draggable-p to vertical-divider-always-visible-p, as suggested by Ben Wing. (specifier_vars_of_window): Fix docstrings. 1998-06-22 Michael Sperber [Mr. Preprocessor] * unexaix.c: Line number information works correctly again. 1998-06-22 Olivier Galibert * emacs.c (__sti__iflPNGFile_c___): Added. See comment. Cry. 1998-06-21 Martin Buchholz * editfns.c (get_home_directory): ANSIfy. XEmacs is compilable under C *and* C++. It's XEmacs, not Xemacs! 1998-06-19 Jonathan Harris * console-msw.h: added a list of fonts to device data. * device-msw.c: enumerate list of available fonts in mswindows_init_device. Free list in mswindows_delete_device. * objects-msw.c: Added helper function match_font used by mswindows_initialize_font_instance and mswindows_list_fonts. Allow a charset to be specified in a font string, even if previous fields havn't been specified. 1998-06-23 Greg Klanderman * indent.c (column_at_point): column cache bugfix. Set last_known_column_point to the buffer position for which the column was requested, not buffer's point. * redisplay.c (decode_mode_spec): for current-column, show window's point's column, not buffer's point's column. 1998-06-23 Andy Piper * menubar-msw.c (mswindows_handle_wm_command): use enqueue_misc_user event rather than mswindows_enqueue_msic_user_event to fix customize problems. Add some checks that X does. * console-msw.h: declare mswindows_enqueue_magic_event. * event-msw.c (mswindows_enqueue_magic_event): make global. 1998-06-24 Hrvoje Niksic * line-number.c (LINE_NUMBER_FAR): Reverted to 16384. (buffer_line_number): Use EMACS_INT_MAX instead of random LOTS. (add_position_to_cache): Use EMACS_INT instead of int. 1998-06-21 Olivier Galibert * lisp-disunion.h (XMARKBIT): Have XMARKBIT return something suitable for an int used as a boolean (btw, C sucks.). 1998-06-18 Andy Piper * object-msw.c: remove warnings. * device-msw.c: #define wrongly named cygwin structure elements. * s/cygwin32.h: define DEMI_BOLD 1998-06-19 Jonathan Harris * redisplay-msw.c: new function mswindows_apply_face_effects. This is called by output_string and output_cursor to display underline and strikeout on faces. 1998-06-19 Jonathan Harris * console-msw.h: added a list of fonts to device data. * device-msw.c: enumerate list of available fonts in mswindows_init_device. Free list in mswindows_delete_device. * objects-msw.c: Added helper function match_font used by mswindows_initialize_font_instance and mswindows_list_fonts. Allow a charset to be specified in a font string, even if previous fields havn't been specified. 1998-06-15 Jonathan Harris * objects-msw.c: Removed compilation warnings from mswindows_string_to_color. mswindows_list_fonts returns a more general bogus font. New lisp-visible function mswindows-color-list. 1998-06-19 David Bush * editfns.c (Fuser_login_name): Modify to user new function user_login_name. (user_login_name): C only function to avoid Lisp object overhead Returns "unknown" instead of nil in Cygwin environment * fileio.c (Fexpand_file_name): Treat "~" and "~user" as equivalent for current user in Cygwin environment. Use new function user_login_name to get username. * lisp.h: Declare user_login_name 1998-06-18 Michael Sperber [Mr. Preprocessor] * unexaix.c (make_hdr): Fixed bias computations so debugging info works again. Some other insignificant nitpicks. 1998-06-18 Andy Piper * toolbar-msw.c (mswindows_output_toolbar): specify ILC_MASK when creating the image list and make sure he bk color is transparent. 1998-06-18 Jan Vroonhof * event-Xt.c (emacs_Xt_remove_timeout): Also remove timeout from completed_timeouts. The timer could have expired. 1998-06-17 Andy Piper * console-msw.h: move XEMACS_RECT_WH inside frame parameters. define macors to access it. * frame-msw.c (mswindows_init_frame_1): use new target_rect parameter to intialise desired sizing. (mswindows_init_frame_2): enable and size the frame to something sensible when we get here. (mswindows_set_frame_properites): use new mswindows_size_frame_internal function and size frame if frame parameters not just if init is finished - WM_SIZE happens too early for some specs. (mswindows_size_frame_internal): new function abstracted from mswindows_set_frame_properties. (Vmswindows_use_system_frame_size_defaults): new variable controls whether to allow the system to pick frame size defaults, defaults to nil. * event-msw.c: in WM_SIZE use mswindows_size_frame_internal rather than duplicated code. 1998-06-15 Colin Rafferty * Makefile.in.in: Made EXTW_LINK expand properly. 1998-06-12 Martin Buchholz * redisplay.c (vars_of_redisplay): default value of column-number-start-at-one should be NIL! 1998-06-11 Martin Buchholz * casefiddle.c: (upcase-initials "fooBar") ==> "FooBar" instead of "Foobar" 1998-06-05 Hrvoje Niksic * eldap.c (Fldap_search_internal): Use build_ext_string instead of build_string to avoid crashes under Mule. 1998-06-13 Andy Piper * ntplay.c (play_sound_data_1): don't delete the sound data until the next sound is played and the previous one finished. 1998-06-10 Samuel Mikes * fileio.c (directory-sep-char): Escape backslashes. 1998-06-10 Hrvoje Niksic * event-stream.c: Fix docstring reference. 1998-06-12 Hrvoje Niksic * alloc.c (make_float): Remove useless initialization of `next' field. (make_pure_float): Ditto. * lisp.h (struct Lisp_Float): Rename `next' to `__unused__next'. 1998-06-08 Kirill M. Katsnelson * fileio.c (Fmake_directory_internal): Remove conditionals on WINDOWSNT when calling mkdir. * ntproc.c: Deleted the following unused functions: register_child, reap_subprocess, sys_wait. * nt.c (sys_rename): Ifzeroed this implementation. Deleted the following unused functions: sys_access, sys_chdir, sys_chmod, sys_creat, sys_link, sys_mkdir, sys_mktemp, sys_rmdir, sys_unlink, sys_close, sys_dup, sys_dup2, sys_read, sys_write. Merger sys_fopen and sys_open with sysdep.c implementation. * sysdep.c: Removed MS-DOS code. (sys_rename): Deal with Microsoft rename weirdness. (sys_open): Implemented for Windows. (sys_fopen): Ditto. (sys_mkdir): Ditto. 1998-06-08 Kirill M. Katsnelson * buffer.c (complex_vars_of_buffer): Removed %t description from the docstring. 1998-06-04 Rick Rankin * scrollbar-msw.c: initialize the cbSize element of the SCROLLINFO struct before calling SetScrollInfo. WinNT seems to ignore the value of cbSize, but Win95 (and I presume Win98) appear to want it set to sizeof(SCROLLINFO). 1998-06-04 Kirill M. Katsnelson * event-stream.c: Defined Qcancel_mode_internal. (syms_of_event_stream): defsymbol'ed it. * events.h: Externed it. * event-msw.c (mswindows_wnd_proc, WM_CANCELMODE): Added this handler. 1998-06-04 Oliver Graf * frame-x.c (x_cde_destroy_callback): free the data (cde-start-drag-internal) corrected root position, 21.1 needs this hardcoded in Button events (offix-start-drag-internal) corrected root position 1998-06-03 Kirill M. Katsnelson * process-nt.c (signal_cannot_launch): Use signal_simple_error() instead of error(). 1998-06-03 Kirill M. Katsnelson * dialog-msw.c (button_width): Removed `inline' from the function declaration. 1998-06-03 Rick Rankin * frame-msw.c: add WS_VISIBLE flag to the first frame created. Note that adding this flag to subsequent frames causes problems. 1998-06-03 Gunnar Evermann * glyphs-eimage.c (png_instantiate) move 'struct png_memory_storage tbr' out of nested block to avoid dangling reference 1998-06-02 Andy Piper * faces.h: * faces.c: rename 3d-object -> gui-element. add toolbar face which inherits from gui-element. * glyphs-msw.c: use DIBitmaps for xbm bitmaps to be consistent with existing code, generate masks correctly. 1998-06-03 P. E. Jareth Hein * glyphs-eimage.c: Changed included header for gifs to use Gifreader instead of giflib. * glyphs-x.c: removed the image-related functions that were moved into glyphs-eimage. 1998-06-02 David Bush * glyphs.c (bitmap_to_lisp_data) Define XFree to be free if built without X Windows support. 1998-06-02 Hrvoje Niksic * fns.c (Fconcat): Synch docstring with new reality. 1998-06-03 SL Baur * frame.c: Remove reference to msdos.h (which is going away). Suggested by Hrvoje Niksic and Kirill Katsnelson. 1998-06-02 P. E. Jareth Hein * glyphs-eimage.c (jpeg_instantiate): Fix handling of grayscale images/ 1998-05-30 Kirill M. Katsnelson * events.h: Fixed commentary about misc-user scrollbar events. * scrollbar-x.c (x_update_vertical_scrollbar_callback): Use frame object as an event channel, instead of window object. (x_update_horizontal_scrollbar_callback): Ditto. 1998-05-29 Andy Piper * ntplay.c (play_sound_data_1) new function. convert alloca data to malloc if necessary. (play_sound_file): if the file is not in our path then convert to data and play. 1998-06-01 SL Baur * mule-mcpath.c (mc_chdir): Reverse parameters in call to memcpy. * msdos.c (Frecent_doskeys): Ditto. * unexalpha.c (unexec): Reverse parameters in call to memcpy. Suggested by Reggie Perry * buffer.h: Eliminate size in declaration. 1998-06-01 Olivier Galibert * unexelfsgi.c (unexec): Cleanup n/nn and remove useless kludge. 1998-06-01 Kirill M. Katsnelson * gui.c (gui_item_init): Changed the default value for config member from Qunbound to Qnil. 1998-06-01 Greg Klanderman * indent.c (vmotion_pixels): Don't #define abs(). 1998-05-30 Kirill M. Katsnelson * s/windowsnt.h: Defined popen and pclose to be _popen and _pclose respectively. 1998-05-30 Andy Piper * glyphs.h: add xbm declarations. * console.h: add xbm_instantiate_method device method. * glyphs.c (check_valid_xbm_inline) (xbm_validate) (bitmap_to_lisp_data) (xbm_mask_file_munging) (xbm_normalize) (xbm_possible_dest_types): moved here from glyphs-x.c. use locate_pixmap_file device method and read_bitmap_data_from_file instead of XmuReadBitmapDataFromFile. (xbm_instatntiate): make a device method. * glyphs-x.c: see glyphs.c changes. (read_bitmap_data_from_file) new function that just calls XmuReadBitmapDataFromFile. (x_xbm_instatntiate): device method from xbm_instantiate. * glyphs-msw.c (read_bitmap_data) (NextInt) (read_bitmap_data_from_file): new functions copied from Xmu sources. (xbm_create_bitmap_from_data) from Ben convert inline data to an mswindows bitmap. (init_image_instance_from_xbm_inline) (xbm_instantiate_1) (mswindows_xbm_instantiate): mswindows-ized versions of the X functions. 1998-05-30 Kirill M. Katsnelson * window.c (specifier_vars_of_window): Renamed `has_modeline-p' to `modeline-visible-p'. Declared specifier lisp variables at the beginning oh the file as static. * procimpl.h (struct process_methods): Changed semantics of create_process method so it accepts lisp strings instead of char pointers. * process.c (Fstart_process_internal): Moved building of unix style argv from here to process-unix.c, ... * process-unix.c (unix_create_process): ... right here. * process-nt.c (nt_create_process): Changed this function to support new semantics, so avoided a GC problem. * events.c (Fmake_event): Document misc-user events properties. (Fmake_event): Do not allow arbitrary objects for channel property of misc-user events. (Fmake_event): Change misc-user event validation: it is function which is required, not button. * event-msw.c (mswindows_user_event_p): Recognize misc user events as user events. (mswindows_enqueue_misc_user_event): Added function. (mswindows_bump_queue): Removed function. (mswindows_enqueue_magic_event): Support NULL HWND parameter. (mswindows_wnd_proc, WM_CLOSE): Use mswindows_enqueue_misc_user_event(). (mswindows_wnd_proc, WM_EXITSIZEMOVE): Ditto. (emacs_mswindows_handle_magic_event): Handle XM_BUMPQUEUE, by doing really nothing, which is my personal favorite thing. * console-msw.h: Removed prototype for mswindows_bump_queue(). Added prototype for mswindows_enqueue_misc_user_event(). * menubar-msw.c (mswindows_handle_wm_command): Use mswindows_enqueue_misc_user_event(). * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto. * dialog-msw.c (dialog_proc): Ditto. * scrollbar-msw.c (mswindows_handle_scrollbar_event): Ditto. (mswindows_handle_scrollbar_event): Use frame, not window, for misc user events channel. 1998-05-29 Greg Klanderman * window.c (Fwindow_displayed_text_pixel_height): was relying on incorrect semantics of vmotion_pixels which has been fixed. don't use it anymore as it can't easily be used. * indent.c (vmotion_pixels): fix off by one bug moving up. also the motion was reported incorrectly if you tried to go past end of buffer. 1998-05-30 Kirill M. Katsnelson * toolbar.h: Removed misleading commentary, as Martin suggested. 1998-05-30 Kirill M. Katsnelson * lisp.h: Extern Qactivate_menubar_hook. * menubar-msw.c (unsafe_handle_wm_initmenu_1): Pass correct value to run_hook (). 1998-05-29 Andy Piper * glyphs-msw.c: use BPLINE macro. * select-msw.c (mswindows-selection-exists-p) (mswindows-delete-selection): doc string fixes. * toolbar-msw.c (mswindows_output_toolbar): make disabled buttons unpressable. warning elimination. 1998-05-28 Martin Buchholz * alloc.c (dbg_constants): * dbxrc: * gdbinit: Remove toolbar_data debugging code, since that lrecord has also been removed. Wed May 27, 1998 Darryl Okahata * alloc.c: zap cached value of (user-home-directory), so that it's not undumped. * buffer.c: From init_buffer(), separated out code that determined the initial directory for the *scratch* buffer, and put them into a function called "init_initial_directory()". The initial directory is now available as a global "char *" called initial_directory. * buffer.h: Added extern entries for initial_directory[] and init_initial_directory(). * editfns.c: added new elisp function "user-home-directory", which basically returns getenv("HOME"), but attempts to use other values if $HOME isn't set.This may have to be tweaked in the future as, under Unix, "/" is used if $HOME isn't set (this probably should be set to the current directory). To support this, a new C function, "get_home_directory()", now exists, which returns the "home directory", as a "char *" string. * emacs.c: Rearrange NT initialization order so that environment/registry variables will be properly entered into Vprocess_enviroment. * fileio.c: replaced egetenv("HOME") with calls to the new get_home_directory(). * lisp.h: Added function prototypes for uncache_home_directory() and get_home_directory(), along with lisp prototypes for Fuser_home_directory() and friends. * nt.c: replaced getenv("HOME") with calls to the new get_home_directory(). * sysfile.h: for WINDOWSNT, #include , to suppress warnings about getcwd(), etc. not having prototypes. 1998-05-28 Kirill M. Katsnelson * process-nt.c (send_signal): Emulate SIGHUP. (validate_signal_number): Ditto. * event-msw.c (mswindows_wnd_proc, WM_KEYDOWN): Unconditionally remove MOD_SHIFT from ASCII characters. (mswindows_wnd_proc, WM_KEYDOWN): Do not activate the menubar when F10 is pressed. 1998-05-24 Oliver Graf * frame-x.c (cde-start-drag-internal): added filename and multi- data transfers (x_cde_convert_callback) dito 1998-05-26 Oliver Graf * frame-x.c: include event-mod.h also with CDE (x_cde_convert_callback) made the thing working (cde-start-drag-internal) also debugging 1998-05-25 Hans Guenter Weigand * m/sparc.h: * getloadavg.c: * malloc.c: * unexec.c: * mem-limits.h: - add __OpenBSD__ where __NetBSD__ was found. - TODO: replace platform-specific conditional compilation by feature tests in configure.in. 1998-05-15 Greg Klanderman * window.c (Fwindow_displayed_text_pixel_height): New function. (syms_of_window): DEFSUBR it. * indent.c (Fvertical_motion_pixels): New function - request movement in pixels. (vmotion_pixels): helper. (syms_of_indent): DEFSUBR. * lisp.h: declaration for vmotion_pixels(). * indent.c (Fvertical_motion): Add optional third argument PIXELS, to request returning motion in pixels. (Fvertical_motion_pixels): Remove, functionality merged into Fvertical_motion. * window.c (window_scroll): call Fvertical_motion with 3 arguments. (Fmove_to_window_line): ditto. * lisp.h: Change declaration for Fvertical_motion. * window.c: rename window-text-pixel-{height,width,edges} to window-text-area-pixel-*. 1998-05-26 Gunnar Evermann * tooltalk.c (vars_of_tooltalk) added staticpro for Tooltalk_Message_plist_str and Tooltalk_Pattern_plist_str 1998-05-27 Andy Piper * faces.c: create a new 3d_object_face, make modeline and vertical_divider faces fallback to this rather than the default. 1998-05-21 Andy Piper * s/cygwin32.h: define charsets for cygwin. 1998-05-25 Andy Piper * toolbar-msw.c (mswindows_output_toolbar): fix up button sizes and coordinates. resize bitmaps if we have already settled on a different size. * glyphs-msw.c (xpm_to_eimage): add ';' for mswindows compiler. 1998-05-25 Hrvoje Niksic * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto. * menubar-msw.c (mswindows_handle_wm_command): Ditto. * gui.h: Ditto. * gui-x.c (popup_selection_callback): Ditto. * dialog-msw.c (dialog_proc): get_callback -> get_gui_callback. * gui.c (get_callback): Renamed to get_gui_callback. 1998-05-17 Martin Buchholz * glyphs.h: order rearrangement. * device-tty.c (tty_asynch_device_change): Warning suppression. * device-x.c (x_device_system_metrics): Warning suppression. Make Doc strings consistent with coding standards. 1998-05-24 Martin Buchholz * general.c: multiple definition of `Qicon'. general.c seems like a good home for Qicon. 1998-05-20 Kirill M. Katsnelson * This patch is to fix compilation warnings under Windows. * s/windowsnt.h: Encapsulate getpid with sys_getpid. Added prototypes for FSF inherited functions, with which XEmacs is sprinkled thoroughly. Removed some #if 0 code. Bracketed some more definitions, probably related to Visual C versions prior to 4 (we do not support them). * sysfloat.h (logb): Finally, get logb() prototyped. * sysfile.h: Added Windows specific includes. Removed old Windows specific code bracketed with #if 0. * sysdep.h: Added prototype for xrealpath(). * sysdep.c (sys_getpid): Added function, to support '95 negative pids. * symsinit.h: Added prototypes for syms_of_dired_mswindows, vars_of_dired_mswindows and init_ntproc (Grrr). * realpath.c: Added Windows specific include files. (xrealpath): Conditionalized declaration of some auto variables on S_IFLNK, to avoid warnings. * ntproc.c: Disabled some compiler warnings. This file is going to die, so I have not cleaned it up much. (set_process_dir): Const parameter. (Fwin32_short_file_name): Down CHECK_* macros to one argument. (Fwin32_long_file_name): Ditto. (Fwin32_set_process_priority): Ditto. Why didn't I remove these three functions? * nt.h: Added prototypes for set_process_dir and convert_time. * nt.c: More include files. (getpwnam): Consted char* argument. (get_emacs_configuration): Const return value. (opendir): Const argument. (stat): Casted converstion long->short. (stat): Removed ad hoc and questionable support for non-MSC compile. (sys_pipe): Removed unused auto variable. (_sys_read_ahead): Removed calls to DebPrint. (sys_read): Ditto, in 2 places. (term_ntproc): Added unused int parameter to signal handler, to avoid a warning when compiling a call to signal(). (msw_sigset): Properly return old signandler or NULL instead of void. * floatfns.c (Flogb): Casted arguments to unary minus to signed. * gmalloc.c (morecore): Ditto. (_free_internal): Ditto. * lread.c (parse_integer): Ditto. * dired-msw.c: Added several include files. * cmdloop.c (Fcommand_loop_1): Added Microsoft C to the Big List of Compilers to Shut Up. * callproc.c: Added #includes to suppress warnings under Windows. (init_callproc): Removed #if0'ed code and unused variables. 1998-05-25 Andy Piper * device-msw.c (mswindows_device_system_metrics): do planes in a way consistent with X. * glyphs-msw.c (mswindows_initialize_image_instance_mask): don't use SetPixel, use DIBits functions. (xpm_to_eimage): frob colors more closely like xpm deos. * toolbar-msw.c: only resize bitmaps when shrinking. Adjust look to be closer to X version. * event-msw.c: use tooltip string directly. * redisplay-msw.c: reinstate Kirill's bg pixmap change. * objects-msw.c: frob rgb colors that only Kyle uses. * dialog-msw.c (button_width): INLINE -> inline. 1998-05-23 SL Baur * getloadavg.c (getloadavg): Fix typo. 1998-05-23 Kirill M. Katsnelson * objects-msw.c (mswindows_initialize_font_instance): Added support for font character sets. Replaced 'XXX' with '####' in comments throughout the file. 1998-05-23 Kirill M. Katsnelson * emacs.c (main_1): Added calls to vars_of_dialog_mswindows() and console_type_create_dialog_mswindows(), to initialize Windows dialog support. * symsinit.h: Prototyped the above functions. * dialog-x.c (x_popup_dialog_box): Moved dialog descriptor consistency checks to dialog.c... * dialog.c (Fpopup_dialog_box): ...right here. Added more checks: a device must support dialog boxes, and the descriptor must supply at least one button. * dialog-msw.c: New file, dialogs for Windows. 1998-05-21 Oscar Figueiredo * eldap.c (ldap_search_unwind): Return Qnil instead of nothing (Fldap_search_internal): Removed unused variable `err' * eldap.h: Moved Lisp_LDAP declaration here instead of using a forward declaration 1998-05-17 Martin Buchholz * eldap.h: eldap.[ch] should never be used unless HAVE_LDAP is defined. Therefore there is no need to handle the case when HAVE_LDAP is undefined. Similarily, there is no reason to have any code wrapped within `#ifdef emacs', since this code is only useful within an emacs. This simplifies the code significantly. * inline.c: Include eldap.h only if HAVE_LDAP. * inline.c: Don't bother including TT_C_H_PATH, since tooltalk.h already does that. 1998-05-21 Kirill M. Katsnelson * unexnt.c (copy_executable_and_dump_data_section): Suppress printing dump stats when building without DEBUG_XEMACS. (dump_bss_and_heap): Ditto. 1998-05-21 Andy Piper * gnuclient.c: don't suppress window system if there is no display and we are running under mswindows. send 'mswindows device type if we are in this situation. 1998-05-20 Andy Piper * general.c: * lisp.h: Qbitmap, Qcursor, Qicon moved here from glyphs-msw.c. * glyphs-msw.c: change cursor imgae type name to resource. Fix some nits. 1998-05-20 Kirill M. Katsnelson * EmacsFrame.c (Xt_StringToScrollBarPlacement): Added support for {top,bottom}-{left,right} values in addition to {top,bottom}_{left,right}. 1998-05-18 Hrvoje Niksic * fileio.c (Fmake_temp_name): Remove unreached code. * process-nt.c (validate_signal_number): Use signal_simple_error(). 1998-05-19 Martin Buchholz * unexhp9k800.c: * sound.c (vars_of_sound): * sysdep.c (reset_sigio_on_device): * window.c (window_bottom_gutter_height): unexhp9k800.c:258: warning: implicit declaration of function `calculate_checksum' sound.c:604: warning: implicit declaration of function `vars_of_hpplay' sysdep.c:1012: warning: unused variable `owner' window.c:993: warning: `window_right_toolbar_width' defined but not used 1998-05-19 Andy Piper * glyphs-msw.c (mswindows_create_resized_mask) (mswindows_create_resized_bitmap): new funnctions split out from mswindows_resize_dibitmap_instance. * glyphs-msw.h: declare new resize functions. * toolbar-msw.c (mswindows_output_toolbar): use new bitmap resize functions so that the original bitmaps are preserved. * sheap.c: fixup static heap exhausted error to avoid FAQs. * redisplay-msw.c (mswindows_output_blank): fixup brush from bg color if we are trying to output 0 depth bg pixmap. * scrollbar-msw.c: warning elimination. 1998-05-18 Martin Buchholz * frame-x.c (x_update_frame_external_traits): Start preprocessor directives in column 1. * search.c (skip_chars): Avoid using xzero with arrays, since some compilers get confused by the construct &array. 1998-05-18 Kirill M. Katsnelson * objects-msw.h: * objects-msw.c: Changed the charset value for a new font from "don't care" to "ansi". * glyphs-msw.c (convert_EImage_to_DIBitmap): Warnings fix. 1998-05-18 Kirill M. Katsnelson * event-msw.c (mswindows_wnd_proc, WM_KEYDOWN): Do not clear shift modifier on control chars. Use IsCharAlpha() instead of isaplha(). 1998-05-19 Kazuyuki IENAGA * s/freebsd.h: FreeBSD 2.2.6 now supports setlocale(LC_ALL, ""). 1998-05-18 Kirill M. Katsnelson * objects-msw.c (mswindows_initialize_font_instance): Use ANSI charset when creating font. (mswindows_initialize_color_instance): Do not create brush along with a color. (mswindows_finalize_color_instance): Do not delete it then. * objects-msw.h (struct mswindows_color_instance_data): Removed brush slot, and corresponding accessor macro. 1998-05-18 Kirill M. Katsnelson * toolbar.c: Removed toolbar_data lrecord implementation. (mark_frame_toolbar_buttons_dirty): Replase usage of toolbar_data with toolbar_buttons (via FRAME_TOOLBAR_BUTTONS). (compute_frame_toolbar_buttons): Ditto. (CHECK_TOOLBAR): Ditto. (set_frame_toolbar): Removed allocation of toolbar_data lrecord. (update_frame_toolbars): Do not check for changed buffer here. Toolbar information is provided by cached specs in windows. The check for buffer is eliminated becuase toolbars are marked changed in set_frame_selected_window() in frame.c Added check for changed toolbars geometry. (compute_frame_toolbars_data): Removed unused second parameter; Adjusted callers of this static function throughout the file. (init_frame_toolbars): Initialize current_toolbar_size. (update_frame_toolbars): Use DEVICE_SUPPORTS_TOOLBARS_P instead of what is its current expansion, for clarity. (init_frame_toolbars): Ditto. (init_device_toolbars): Ditto. (init_global_toolbars): Ditto. * toolbar.h: Removed definition of toolbar_data lrecord. Added accessor macros FRAME_TOOLBAR_BUTTONS and FRAME_CURRENT_TOOLBAR_SIZE. Added macro DEVICE_SUPPORTS_TOOLBARS_P. * toolbar-x.c (x_output_toolbar): The same change as in toolbar-msw.c (x_output_toolbar): Ditto. (x_redraw_exposed_toolbar): Ditto. * toolbar-msw.c (mswindows_output_toolbar): Retrieve current buttons from toolbar_buttons using FRAME_TOOLBAR_BUTTONS macro. (mswindows_output_toolbar): Ditto. (mswindows_output_toolbar): Ditto. * frame.c (mark_frame): Removed marking of arrays, according to frameslots.h change. (nuke_all_frame_slots): Ditto. (set_frame_selected_window): Mark toolbars changed when last_nonminibuf_window changes. * frame.h (struct frame): Moved some slots to frameslots.h. Added current_toolbar_size array. Changed references from toolbar_data to toolbar_buttons in macros FRAME_RAW_THEORETICAL_TOOLBAR_VISIBLE, FRAME_RAW_THEORETICAL_TOOLBAR_SIZE and FRAME_RAW_THEORETICAL_TOOLBAR_BORDER_WIDTH. * frameslots.h: Added macro MARKED_SLOT_ARRAY a la winslots.h Moved arrays of lisp objects here from frame.h: toolbar_size, toolbar_visible_p, toolbar_border_width. Removed toolbar_data slot and added toolbar_buttons. 1998-05-17 Kirill M. Katsnelson * symsinit.h: Externed syms_of_process_nt() * emacs.c (main_1): Call syms_of_process_nt() * process-nt.c: Quote process arguments by a call to Lisp function `nt-quote-process-args'. (syms_of_process_nt): New function. (nt_send_process): Flush data stream after each write, to avoid leaving buffered data. (nt_send_process): When blocked on process output, wait for process to slurp more for progressively increasing time intervals. 1998-05-17 Martin Buchholz * window.c (have_undivided_common_edge): Make file-local function static. (map_windows): Return 0 if all map functions successful. Fix typos. * winslots.h: Use unlikely names for local variables in macros to avoid shadowing warnings. 1998-05-17 Andy Piper * toolbar-msw.c (mswindows_output_toolbar): hash on toolbar width so that we re-output if the toolbar size has changed. 1998-05-17 Michael Sperber [Mr. Preprocessor] * s/aix4-2.h (ALIGN_DATA_RELOC): Undefined to support new unexaix.c. * s/aix3-1.h (ALIGN_DATA_RELOC): Defined to support new unexaix.c. * unexaix.c: Massive cleanup and support of AIX 4.2 (and hopefully greater). 1998-05-16 Kirill M. Katsnelson * glyphs-msw.c: Defined OEMRESOURCE before including windows.h to get bitmap manifest constants defined. * console-msw.h: Include system files in angle brackets, not in quotes. * window.c (specifier_vars_of_window): Fixed a typo in `vertical-divider-line-width' docstirng. 1998-05-16 Olivier Galibert * line-number.c (delete_invalidate_line_number_cache): Use an EMACS_INT. (buffer_line_number): Remove dangerous, plain wrong when using 64bits emacs ints, cast. * insdel.c (buffer_delete_range): Use an EMACS_INT. * cmds.c (Fforward_line): Use EMACS_INTs. * search.c (bi_scan_buffer): Change to use EMACS_INTs. (scan_buffer): Ditto. (bi_find_next_newline_no_quit): Remove useless cast. (find_next_newline_no_quit): Ditto. (find_next_newline): Ditto. (find_before_next_newline): Use an EMACS_INT. * lisp.h: Change scan_buffer to pass EMACS_INTs. 1998-05-16 Hrvoje Niksic * menubar-msw.c (mswindows_handle_wm_command): Ditto. * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto. * gui-x.c (popup_selection_callback): Use it. * gui.h (get_callback): Declare it. * gui.c (get_callback): New function. 1998-05-15 SL Baur * window.c (have_undivided_common_edge): Guard scrollbar specific stuff. (window_needs_vertical_divider_1): Ditto. 1998-05-16 Hrvoje Niksic * emacs.c (decode_path): Eliminate compiler warning. (Fdecode_path): Renamed to Fsplit_path. (Fsplit_string_by_char): New function. 1998-05-14 Damon Lipparelli * winslots.h: close comment 1998-05-16 Kirill M. Katsnelson * callproc.c: Removed declared and unused variable Qbuffer_file_type. * bufslots.h: Removed buffer_file_type slot. * buffer.c (complex_vars_of_buffer): Removed buffer_file_type from buffer local flags. (complex_vars_of_buffer): Removed buffer-file-type variable and its default reference. 1998-05-15 Kirill M. Katsnelson * faces.c (complex_vars_of_faces): Defined Vvertical_divider_face. (vars_of_faces): Staticpro it. * faces.h: Externed Vvertical_divider_face. * redisplay-x.c (x_output_vertical_divider): Use Vvertical_divider_face to draw the divider instead of modeline face. * redisplay-msw.c (mswindows_output_vertical_divider): Draw divider face using Vvertical_divider_face background. Fix drawing spacing gaps around the divider. 1998-05-14 Didier Verna * redisplay-x.c (x_output_vertical_divider): removed hard-wired values for the vertical divider line width and spacing. Use the cached values from the window structure instead. (x_divider_width): ditto. * window.c (specifier_vars_of_window): new specifiers: vertical-divier -line-width and -spacing. (vertical_divider_global_width_changed): formerly known as vertical_divider_shadow_thickness_changed. * winslots.h: new slots: vertical_specifier _line_width and _spacing. Plus corrected a comment typo. 1998-05-15 Kirill M. Katsnelson * window.h: Declared window_divider_width(). * console-stream.c (stream_divider_width): Removed method. (console_type_create_stream): And declaration for it. * redisplay.c (pixel_to_glyph_translation): Use window_divider_width() instead of divider_width redisplay method. (pixel_to_glyph_translation): Fix top divider edge calculation when scrollbar is on top. * window.c (window_divider_width): New function, an outphaser for divider_width redisplay method. (window_right_gutter_width): Use it. (specifier_vars_of_window): For vertical-divider-{spacing,line-width} specifiers, set fallback values differently on TTYs, and document the behavior of these on TTYs in the docstrings. * scrollbar.c (update_scrollbar_instance): Use window_divider_width() instead of divider_width redisplay method. * console.h (struct console_methods): Removed divider_width_method. * redisplay-tty.c (tty_divider_width): Removed device method. (console_type_create_redisplay_tty): Removed definition for it. (tty_output_vertical_divider): Respect the value returned by window_divider_width thus divider line width specification. * redisplay-msw.c (mswindows_divider_width): Removed device method. (console_type_create_redisplay_mswindows): Removed definition for it. (mswinodws_output_vertical_divider): Respect the value returned by window_divider_width thus divider line width specification. 1998-05-15 Andy Piper * toolbar-msw.c: guess toolbar frame size a bit more accurately. 1998-05-15 Andy Piper * glyphs-msw.c: resource loading implementation. (cursor_normalize): new function. (cursor_validate): ditto. (cursor_instantiate): ditto. (cursor_name_to_resource): ditto. (cursor_possible_dest_types): ditto. (check_valid_symbol): ditto. (check_valid_string_or_int): ditto. 1998-05-14 Martin Buchholz * sysdep.c (tty_init_sys_modes_on_device): Treat VSUSP just like VINTR and VQUIT. * process-unix.c (process_signal_char): Use VSUSP instead of non-standard VSWTCH. Always prefer VSUSP to VSWTCH. 1998-05-14 Kirill M. Katsnelson * specifier.c (specifier_instance): Change locale precedence of instantiation so window locale has higher priority than buffer locale. (Fspecifier_instance): Reflect this in docstring. (Fadd_spec_list_to_specifier): Ditto. (Fadd_spec_to_specifier): Ditto. (Fremove_specifier): Ditto. 1998-05-15 Kirill M. Katsnelson ** Dialog separation into a device method from Andy Piper * emacs.c (main_1): Call console_type_create_dialog_x(). * dialog-x.c (x_popup_dialog_box): Old Fpopup_dialog_box converted into this device method. (console_type_create_dialog_x): New function. * dialog.c (Fpopup_dialog_box): New function. (syms_of_dialog): Defsubr it. * console.h (struct console_methods): Declared popup_dialog_box_method(). * symsinit.h: Defined console_type_create_dialog_{x,mswindows} 1998-05-14 Oliver Graf * dragdrop.c (vars_of_dragdrop): dragdrop-protocols created * frame-x.c (x_cde_transfer_callback): checked for merge errors 1998-05-13 Oliver Graf * dragdrop.c (vars_of_dragdrop): provide dragdrop-api 1998-05-15 Kirill M. Katsnelson * console.h (device_metrics): Removed dbcs, input-method-editor and right-to-left metrics. * device.c (Fdevice_system_metric): Ditto. (Fdevice_system_metrics): Ditto. (syms_of_device): Ditto. (Fdevice_system_metric): Swapped DEVICE and METRIC parameters back again. 1998-05-14 Hrvoje Niksic * line-number.h (mark_line_number_cache): Remove unused declaration. * line-number.c (LINE_NUMBER_FAR): Increase to 32768. (get_nearest_line_number): Simplify. (add_position_to_cache): Make the old marker point nowhere. 1998-05-14 Kirill M. Katsnelson ** Renamed window-divider-map => vertical-divider-map and event-over-divider-p => event-over-vertical-divider-p, in the following files/functions: * events.h: * events.c (Fevent_over_divider_p): * keymap.c (get_relevant_keymaps): (vars_of_keymap): * redisplay.h (OVER_V_DIVIDER): Renamed so from OVER_DIVIDER. * redisplay.c (pixel_to_glyph_translation): Use OVER_V_DIVIDER. 1998-05-14 Kirill M. Katsnelson * window.c (vertical_divider_changed_in_window): Renamed so. (specifier_vars_of_window): Defined Vvertical_divider_draggable_p. (window_needs_vertical_divider_1): Decide whether we need it based on the value of the above specifier. If separators are unwanted, put them only if there's no scrollbar between this window and its right neighbor. (have_undivided_common_edge): New function, helper for the above. (window_needs_vertical_divider): Return either a cached value, or clauclate and cache one. (invalidate_vertical_divider_cache_in_window): Implemented. (map_windows): Changed return type to int, return the value from MAPFUN. * window.h: Prototype invalidate_vertical_divider_cache_in_window. (struct window): Added need_vertical_divider_p and need_vertical_divider_valid_p. * winslots.h: Added vertical_divider_draggable_p slot. * scrollbar.c (vertical_scrollbar_changed_in_window): Implemented. (specifier_vars_of_scrollbar): Used it in all vertical specifiers. * frame.c (invalidate_vertical_divider_cache_in_frame): New function. * frame.h (MARK_FRAME_WINDOWS_STRUCTURE_CHANGED): Call invalidate_vertical_divider_cache_in_frame(). Prototype it. 1998-05-14 Andy Piper * toolbar-msw.c: provide correct parameters to TB_SETROWS. * glyphs-msw.c (mswindows_initialize_image_instance_mask): size masks correctly and don't select 0. 1998-05-14 Kirill M. Katsnelson * winslots.h: New file, declaration of some struct window and struct saved_window members. * window.h (struct window): Include it, with required preprocessor magic. * window.c (mark_window): Ditto. (allocate_window): Ditto. (struct saved_window): Ditto. (mark_window_config): Ditto. (saved_window_equal): Ditto. (Fset_window_configuration): Ditto. 1998-05-14 Kirill M. Katsnelson * redisplay-msw.c (mswindows_output_vertical_divider): Syntax fix. 1998-05-12 Didier Verna * redisplay-x.c (x_output_vertical_divider): draw shadows around the divider line. The shadow thickness is currently hard-wired. This will probably be turned into a specifier soon. 1998-05-12 Didier Verna * console.h (struct console_methods): the divider_width console method now requires a struct window * argument. * redisplay-x.c (x_divider_width): ditto. Plus remove X_DIVIDER_WIDTH, X_DIVIDER_SHADOW_THICKNESS. (x_output_vertical_divider): give a depressed look when the shadow thickness is negative. * console-stream.c (stream_divider_width): pass a struct window * argument. * redisplay-tty.c (tty_divider_width): ditto. * window.c (window_right_gutter_width): totdi. * redisplay.c (generate_modeline): ittod. * scrollbar.c (update_scrollbar_instance): ttido. * redisplay-msw.c (mswindows_divider_width): ottid. WARNING: this enables to compile, but the feature is not functional. * window.h (struct window): new field vertical_divider_shadow_thickness. * window.c (specifier_vars_of_window): new specifier vertical-divider-shadow-thickness. (vertical_divider_shadow_thickness_changed): new function to inform redisplay that the window has changed. (mark_window): handle new field vertical_divider_shadow_thickness from struct window. (allocate_window): ditto. (saved_window_equal): toddi. (Fset_window_configuration): totid. (save_window_save): ttdio. (struct saved_window): new field vertical_divider_shadow_thickness. 1998-05-14 Kirill M. Katsnelson * device-msw.c (mswindows_device_system_metrics): Support a deluge of metrics. 1998-05-12 Oliver Graf * frame-x.c (x_cde_transfer_callback): fixed for the new protocol * event-Xt.c (x_event_to_emacs_event): C++ compability 1998-05-14 Hrvoje Niksic * emacs.c (Fdecode_path): Default SEPCHAR to value of path-separator. 1998-05-14 Hrvoje Niksic * emacs.c (vars_of_emacs): Do it here; change the meaning of Vpath_separator. * fileio.c (vars_of_fileio): Don't define Vpath_separator here. 1998-05-14 Hrvoje Niksic * emacs.c (decode_path_1): New function. (decode_path): Use it. (Fdecode_path): Renamed from Fdecode_path_internal; use decode_path_1. 1998-05-12 Hrvoje Niksic * macros.c (Fzap_last_kbd_macro_event): New function. (Fend_kbd_macro): Remove REMOVE_LAST kludge. 1998-05-10 Andy Piper * redisplay-msw.c (mswindows_output_dibitmap_region): make sure multiple bitmaps are output vertically as well as horizontally. * (mswindows_output_dibitmap): don't cope with bitmap boundaries crossing lines this is handled by mswindows_output_dibitmap_region. 1998-05-12 Martin Buchholz * inline.c: Include eldap.h * menubar-x.c (x_update_frame_menubar_internal): Remove: unused variable `container' 1998-05-11 Martin Buchholz * s/aix4.h: Allow AIX 4.3 XEmacs to compile cleanly. Unfortunately, the resulting temacs still cannot dump. * symbols.c (symbol_is_constant): (verify_ok_for_buffer_local): -Wswitch Warning suppression - add default case to switches. * redisplay.c (decode_mode_spec): Remove unused variables, Replace Fcoding_system_property (codesys, Qmnemonic) with XCODING_SYSTEM_MNEMONIC (codesys); Fcoding_system_property is for users. * buffer.c: * fileio.c: * lread.c: * xselect.c: Change empty docstrings into no doc strings at all. Fix bogus FSF-format docstrings. * extents.c: Standardize docstrings. * floatfns.c: Explain problems with matherr. * glyphs.c: make DEFUNs etags-readable, i.e. single-line * syssignal.h: if BROKEN_SIGIO, then SIGIO wants to be undefined. if SIGIO and not SIGPOLL, SIGPOLL wants to be SIGIO.\ Fix the weird resultant interaction (causes windows problems) * gdbinit: * dbxrc: Take new EMACSBOOTSTRAPLOADPATH into account. Update documentation strings * Makefile.in.in: - Adjust for luser's CDPATH being set to something weird. - Take into account bash 2.02's tendency to print the cwd when using CDPATH. Always use `cd ./foo' instead of `cd foo'. - fix the run-temacs target to use $(DUMPENV) - fix the run-puremacs target to use $(DUMPENV) - fix the `depend' target to properly $(RM) the right files - Generate a better TAGS file for XEmacs' lisp code using hand-crafted regexps. - Use standard coding conventions for modules/Makefile.in 1998-05-12 Didier Verna * redisplay.c: removed the scrolling modeline code that didn't make it for 21.0. To be continued ... 1998-05-13 Michael Sperber [Mr. Preprocessor] * emacs.c (Fdecode_path_internal): Removed bogus handling of nil and empty string inputs. 1998-05-12 Hrvoje Niksic * redisplay-x.c (x_output_vertical_divider): Fixed typo. 1998-05-10 Oliver Graf * event-stream.c (enqueue_misc_user_event_pos): created * lisp.h (enqueue_misc_user_event_pos): prototype added * frame-x.c (x_cde_transfer_callback): debug code plus API changes * emacs.c: call vars_of_dragdrop * dragdrop.c (vars_of_dragdrop): provide dragdrop 1998-05-11 Oliver Graf * frame-x.c (x_cde_transfer_callback): return at correct pos * event-Xt.c (x_event_to_emacs_event): changed format of drop object for MIME (see comment in dragdrop.c) * dragdrop.c: API change documented in comment removed provide of dragdrop [is provided by dragdrop.el] 1998-05-12 Kirill M. Katsnelson * window.c (window_needs_vertical_divider): Enable vertical dividers for every non-rightmost window. (window_left_gutter_width): Left gutter consists of mythical toolbar and a virtual scrollbar. (window_right_gutter_width): The right one may have a divider also. * scrollbar.c (update_scrollbar_instance): Position vertical scrollbar left to divider if the latter present. * redisplay.h: Declared OVER_DIVIER constant. * redisplay.c (pixel_to_glyph_translation): Handle OVER_DIVIDER case. * redisplay-x.c (x_output_vertical_divider): Output divider along the right side of the window, down to window bottom. Swapped foreground and background colors so it is visible by default. * redisplay-tty.c (tty_output_vertical_divider): Uncondiionally stick the divider to the right window side. * redisplay-msw.c (mswindows_redisplay_deadbox_maybe): Fixed deadbox painting. (mswindows_divider_width): Ask system for user preferred value. (mswindows_output_vertical_divider): Always output the divider on the right side of a window, down to bottom. * keymap.c (get_relevant_keymaps): Route mouse button events which happened over a window divider through window-divider-map. (Fkey_binding): Documented that in the docstring. Defined the variable Vwindow_divider_map. * events.c (Fevent_over_divider_p): Added this function. * events.h: EXFUNed it. 1998-05-12 Kirill M. Katsnelson * toolbar.c (update_frame_toolbars): Re-layout frame windows if toolbar geometry is suspected to change. 1998-05-11 Jonathan Harris * src/device-msw.c * src/event-msw.c Condition dnd and dde code on HAVE_DRAGNDROP. 1998-05-11 Hrvoje Niksic * events.c (format_event_object): Print space as SPC etc. 1998-05-11 Hrvoje Niksic * print.c (print_internal): In the default case, abort() if ERROR_CHECK_TYPECHECK. * fileio.c (Fmake_temp_name): Doc fix. 1998-05-10 Hrvoje Niksic * xgccache.c (describe_gc_cache): Define only if DEBUG_XEMACS. * undo.c (Fprimitive_undo): Fixed typo. 1998-05-11 Hrvoje Niksic * fns.c (concat): Signal error on integer argument. 1998-05-10 Kirill M. Katsnelson * console.h (device_metrics): Prefixed each constatnt with DM_ * device.c: (Fdevice_system_metric): Renamed so from plural form (metrics); Changed parameters order and added DEFAULT parameter; Unabbreviated some metric constants; Fixed and untabified doc string. (Fdevice_system_metrics): Added. Returns a plist of all provided metrics. * device-msw.c (mswindows_device_system_metrics): Renamed device_metrics enum constants. Return Qunbound instead of Qnil. * device-tty.c (tty_device_system_metrics): Ditto. * device-x.c (x_device_system_metrics): Ditto. 1998-05-10 Andy Piper * redisplay-msw.c: implement background pixmaps (really!). Make sure bg color is transparent if we have bg pmaps. * (mswindows_output_string) (mswindows_clear_region): output bg pmap if required. * (mswindows_output_dibitmap_region): new function. * (mswindows_output_dibitmap): output offset pixmaps, blt masks in the bg color rather than transparently. * toolbar-msw.c: use masks if they exist. * glyphs-msw.c: set up masks correctly. * event-msw.c: typedef SOCKET if cygwin and not msg select(). 1998-05-10 Hrvoje Niksic * regex.c (re_match_2_internal): Check for quit. 1998-05-10 Hrvoje Niksic * frame.c (Ffocus_frame): New function.