From 615d01824a509f565a0ecf3075fc953b509c313d Mon Sep 17 00:00:00 2001 From: Dave Love Date: Wed, 29 Sep 1999 16:37:29 +0000 Subject: # --- src/ChangeLog.4 | 6903 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 6903 insertions(+) create mode 100644 src/ChangeLog.4 (limited to 'src/ChangeLog.4') diff --git a/src/ChangeLog.4 b/src/ChangeLog.4 new file mode 100644 index 00000000000..28534dea959 --- /dev/null +++ b/src/ChangeLog.4 @@ -0,0 +1,6903 @@ +1994-05-30 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.25 released. + + * xdisp.c (redisplay): Limit prev change to pause != 0. + + * keyboard.c (command_loop_1): Allow direct output for insert + if have display table but it says nothing for this char code. + Don't allow it if char code has a glyph with a face code. + + * process.c (create_process): Get a pty for any non-nil + Vprocess_connection_type value. + +1994-05-28 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/bsd386.h (TABDLY, TAB3): Defined. + (SYSV_SYSTEM_DIR): Defined. + + * unexhp9k800.c (roundup): Undef before defining. + + * xdisp.c (redisplay): If have window change at end, redisplay again. + + * lread.c (defvar_bool, defvar_int, defvar_lisp, defvar_lisp_nopro): + Delete third arg DOC. + + * s/hpux8.h (LD_SWITCH_SYSTEM): Delete the -L options. + (LD_SWITCH_X_DEFAULT): Put them here instead. + + * Makefile.in.in (LD_SWITCH_X_DEFAULT): Define if not defined. + (LIBX): Use LD_SWITCH_X_DEFAULT. + + * xterm.c (x_iconify_frame): Call x_set_offset, + if x_make_frame_visible would do so. + (x_make_frame_visible): Don't call x_set_offset if frame is iconic. + (XTread_socket): For ConfigureNotify, if wm decorations exist, + set NorthWestGravity. + + * Makefile.in.in (mostlyclean): Don't mention xmakefile*. + + * emacs.c (main): In batch mode, don't set the pgrp. + +1994-05-27 Paul Eggert (eggert@twinsun.com) + + * callproc.c (child_setup): If PWD is set, set it in the child so that + it points at the child's working directory. + +1994-05-27 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * m/mips4.h (C_DEBUG_SWITCH) [not __GNUC__]: Add -Wf option. + + * s/hpux9.h (C_SWITCH_SYSTEM): Defined. + + * keyboard.c [HAVE_X_WINDOWS]: Include xterm.h. + + * xterm.c (x_is_vendor_fkey): Function deleted. + (XTread_socket, case KeyPressed): Don't clear the vendor-specific bit. + Pass thru almost any vendor-specific keysym. + + * s/linux.h (HAVE_XRMSETDATABASE): Define if not defined. + +1994-05-27 Paul Eggert (eggert@twinsun.com) + + * editfns.c (difftm): Don't store a long value into an int variable. + +1994-05-26 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * fileio.c (Finsert_file_contents): Check for beginning of file. + +1994-05-26 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * systime.h: Make previous change limited to HPUX. + +1994-05-26 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * systime.h: If _STRUCT_TIMEVAL is defined, also define __TIMEVAL__. + +1994-05-25 Morten Welinder (terra@diku.dk) + + * msdos.c (output_string): New function. + (internal_flush): Use output_string for faster screen update. + (internal_flush): Clear to end of line by writing a string of + spaces. + +1994-05-25 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xfns.c (Vx_sensitive_text_pointer_shape): + Renamed from Vx_cross_pointer_shape. + (syms_of_xfns): Provide Lisp var x-sensitive-text-pointer-shape. + + * xmenu.c (menu_item_equiv_key): Look for equiv keys both before + and after one stage of symbol function indirection. + + * xterm.c (note_mouse_movement): Use frame's window in XQueryPointer. + Special case if mouse isn't on that window. + (note_mouse_highlight): Handle negative args and too-large args. + + * lread.c (openp): Don't use O_RDONLY. + +1994-05-24 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * search.c (Freplace_match): Improve capitalization heuristics. + + * minibuf.c (Fminibuffer_complete_word): GCPRO completion and tem. + + * undo.c (Fprimitive_undo): GCPRO next and list. + Check argument type before calling XINT. + +1994-05-24 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * buffer.c (verify_overlay_modification): GCPRO tail and overlay. + Avoid copying tail twice. + +1994-05-24 Andreas Schwab (schwab@informatik.uni-dortmund.de) + + * keymap.c (describe_map): Fix the call to Fequal. + +1994-05-24 Morten Welinder (terra@diku.dk) + + * msdos.c (do_visible_bell): Renamed from visible_bell to avoid + potential conflict with variable of the same name. Caller changed. + (internal_flush): Code for audio bell inserted. + * s/msdos.h (INTERNAL_TERMINAL): Allow audio bell. + + * msdos.c (dos_rawgetc): Doc fix. Make C-, S-, and M- modifiers + independent. Make modifiers work with mouse. Improve C-S- + handling by using look-up tables. Fix kp-decimal problem. + +1994-05-23 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.24 released. + + * s/hpux8.h (LD_SWITCH_SYSTEM): Put back -Xlinker for GCC. + + * Makefile.in.in (LIBXT): Move -lXmu before -lXt. + + * term.c (update_end): Undo previous change. + + * frame.c (other_visible_frames): No longer static. + + * window.c (window_loop): Fix test of dedicated flag in prev change. + + * window.c (window_loop, UNSHOW_BUFFER case): + Put prev change in #ifdef MULTI_FRAME. + + * keyboard.c (menu_bar_one_keymap): + When there's no item string, use Qnil. + Don't ever put `undefined' into the list of definitions. + +1994-05-22 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * window.c (window_loop, UNSHOW_BUFFER case): Kill a special frame. + + * xterm.c (x_set_window_size): If cursor outside new size, mark it off. + * dispnew.c (change_frame_size): Keep cursor coords in range. + + * s/linux.h (HAVE_GETTIMEOFDAY, HAVE_MKDIR, HAVE_RMDIR) + (HAVE_XSCREENNUMBEROFSCREEN): Define these if not already defined. + +1994-05-22 Morten Welinder (terra@diku.dk) + + * unexec.c [MSDOS]: Don't include files from the dos extender + and debugger. Use the that was put in the right place + a couple of djgpp versions ago. Consequently, use `unsigned short' + for `word16' and `unsigned long' for `word32'. + +1994-05-22 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (note_mouse_highlight): Handle case of highlight extending + past end of window. + (fast_find_position): Fix bugs when no text on screen + and when the mouse is on an empty line. + + * s/hpux9shr.h: New file. + + * s/hpux8.h (LD_SWITCH_SYSTEM): Add conditionals for HPUX_USE_SHLIBS. + Delete explicit -Xlinker in GCC case. + + * unexhp9k800.c: Include config.h. + [HPUX_USE_SHLIBS]: Include dl.h. + (brk_on_dump): New variable. + (unexec): Set brk_on_dump. + (copy_file): Change buffer size to 8192. + + * window.c (change_window_height): Test for DELTA too small + only after making it smaller based on maxdelta. + +1994-05-21 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * fileio.c (Fdelete_directory): Allow dir names as well as file names. + + * Makefile.in.in (${etc}DOC): Ignore error from rm. + (MSDOS_SUPPORT): New variable. + (lisp): Use MSDOS_SUPPORT. + + * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Commented out. + +1994-05-20 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * xfns.c (x_set_background_color): Set scroll bar backgrounds. + +1994-05-20 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (x_wm_set_window_state) [USE_X_TOOLKIT]: Use XtSetValues. + (x_iconify_frame) [USE_X_TOOLKIT]: New code for invisible window case. + (XtNinitialState) [USE_X_TOOLKIT]: New #define. + (x_make_frame_invisible): Mostly combine toolkit/non-toolkit cases, + in the process fixing a dumb bug. + +1994-05-20 Michael I Bushnell (mib@geech.gnu.ai.mit.edu) + + * lread.c (openp): Only lusers assume that O_RDONLY == 0. + +1994-05-20 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile.in.in (UNEXEC_ALIAS): New variable, used + to make the unex...o target. + + * xfaces.c (Fset_face_attribute_internal): Always return valid data. + + * textprop.c (syms_of_textprop): Set up Lisp fn get-char-property. + +1994-05-19 Andreas Schwab (schwab@issan.informatik.uni-dortmund.de) + + * fileio.c (Finsert_file_contents): Declare buffer as unsigned + char. When comparing with file size convert same_at_start to + distance to buffer start. If the file matches the buffer + contents truncate the buffer to the size of the file. + +1994-05-19 Jim Blandy (jimb@totoro.bio.indiana.edu) + + * keyboard.c (read_char_minibuf_menu_prompt): Don't forget to + initialize nobindings. + +1994-05-19 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile.in.in (ORDINARY_LINK): Define by default + if __GNU_LIBRARY__ and not LINUX. + + * s/isc4-0.h (EXTRA_INITIALIZE): Definition deleted. + + * s/isc3-0.h (EXTRA_INITIALIZE): Define here. + + * keyboard.c (lispy_function_keys): Add `backtab'. + + * frame.c (syms_of_frame): Set up frame-first-window as Lisp fn. + + * indent.c: Add "args" to dummy definition of compute-motion. + + * sysdep.c [BROKEN_TIOCGWINSZ]: Undef TIOCSWINSZ too. + + * Makefile.in.in (FRAME_SUPPORT): Add menu-bar.el. + + * dispnew.c: Include errno.h. + + * widget.c (EmacsFrameSetCharSize): Once again preserve x and y pos, + but not the same way as before. + + * xmenu.c (other_menu_bar_item_p): Return 0 if no menu bar. + + * fileio.c (Fwrite_region): Set update_mode_lines. + + * xmenu.c (xmenu_show): Don't look in menubar for core.height + if no menu bar. + + * xterm.c (x_iconify_frame): Fix error messages. + +1994-05-18 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * dispnew.c (PENDING_OUTPUT_COUNT): If __GNU_LIBRARY__, + use GNU_LIBRARY_PENDING_OUTPUT_COUNT if defined. + + * keyboard.c (lispy_function_keys): Add various kp- keys for X11R6. + + * fileio.c (syms_of_fileio): Doc fix. + + * s/linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Both definitions + renamed from PENDING_OUTPUT_COUNT. + + * process.c (create_process): Don't complain about error + from TIOCSETD. + + * window.c (Fset_window_buffer): Fix dedicated window error call. + (window_loop, case UNSHOW_BUFFER): Clear dedicated flag. + + * fileio.c (Finsert_file_contents): Declare `buffer' as unsigned char. + + * dispnew.c: Include systime.h after xterm.h. + + * m/tek4300.h (WORDS_BIG_ENDIAN): Define this, not BIG_ENDIAN. + + * emacs.c (syms_of_emacs), config.h.in: + EMACS_CONFIGURATION renamed from CONFIGURATION. + +1994-05-17 Andreas Schwab (schwab@issan.informatik.uni-dortmund.de) + + * eval.c (Fbacktrace): Properly nest parentheses. + (Fbacktrace_frame): Don't bomb on invalid frame number. + +1994-05-17 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (command_loop_1): Fix test for valid display table entry, + for backwards motion. + + * Makefile.in.in (ALL_LDFLAGS): Add LDFLAGS. + (MAKE): Don't override a previous value of MAKE set by configure. + + * dispnew.c (update_frame): Fix test of outq and baud_rate. + + * emacs.c (shut_down_emacs): Don't call intern. + +1994-05-17 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.23 released. + +1994-05-17 Morten Welinder (terra@diku.dk) + + * msdos.c (gettimeofday): New function substituting the library + function of the same name. + (init_gettimeofday): New function. + (init_environment): Call init_gettimeofday after possibly + setting TZ environment variable. + * msdos.h: Add template for init_gettimeofday. + +1994-05-16 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * buffer.c (fix_overlays_in_range): New function. + * editfns.c (Ftranspose_regions): Call it. Also update point as + if it were a marker. + +1994-05-16 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xmenu.c (xmenu_show): Completely ignore nameless panes + except for the first pane. Ignore named panes too if KEYMAPS. + + * widget.c (setup_frame_gcs): Move cursor_bits variable out of + setup_frame_gcs and rename to setup_frame_cursor_bits. + + * eval.c (syms_of_eval): Doc fixes. + +1994-05-15 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (x_display_box_cursor): Preserve mouse highlight + if the old cursor was in it. + + * editfns.c (Fcurrent_time_zone): Add cast. + + * s/bsd386.h (LOCALTIME_CACHE): Defined. + + * m/pmax.h (LOCALTIME_CACHE): Define, if not OSF1. + + * xfns.c (validate_x_resource_name): Don't let Vx_resource_name + have invalid characters. + +1994-05-14 Morten Welinder (terra@diku.dk) + + * msdos.c (crlf_to_lf): Fix off-by-one condition. + +1994-05-14 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (bind_polling_period): Never decrease polling_period. + + * fileio.c (Fdo_auto_save): Save listdesc as an integer, only if open. + (do_auto_save_unwind): Corresponding changes. + + * keyboard.c (echo): Don't echo motion events. + + * fileio.c (Fcopy_file): Close output before setting its times. + Close both before discarding the unwind protects. + +1994-05-13 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * buffer.c (Foverlay_lists): Doc fix. + (Fnext_overlay_change): Doc fix. + +1994-05-13 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (XTread_socket): For button events, clear compose_status. + + * Makefile.in.in (LIBXTR6): New variable. Test HAVE_X11XTR6. + (LIBXT): Use it. + * config.h.in (HAVE_X11XTR6): Add #undef. + + * editfns.c (save_excursion_restore): Don't run activate-mark-hook + if mark position is unchanged. + + * emacs.c (main): PRIO_PROCESS renamed to SET_EMACS_PRIORITY. + * callproc.c (child_setup): PRIO_PROCESS renamed to SET_EMACS_PRIORITY. + Don't call nice if emacs_priority is positive. + * sysdep.c (sys_subshell): PRIO_PROCESS renamed to SET_EMACS_PRIORITY. + Don't call nice if emacs_priority is positive. + +1994-05-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile.in.in: Handle Motif and Open-look. + (LIBW): New variable. + (LIBXT): Use it. + + * process.c (POLL_FOR_INPUT): Define, if appropriate. + +1994-05-12 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * xdisp.c (display_text_line): Fix check for end of buffer. + +1994-05-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (dumpglyphs): For cursor foreground, try the + face's background before the face's foreground. + (XTread_socket): Call note_mouse_movement for EnterNotify. + + * process.c (Fopen_network_stream): + Call bind_polling_period; later unbind the binding. + + * keyboard.c (syms_of_keyboard): Set up Qpolling_period. + (bind_polling_period): New function. + + * callproc.c (init_callproc): Never set Vdata_directory based on + the executable's location. But maybe set it from source dir. + +1994-05-11 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * systty.h [__GNU_LIBRARY__]: Include . + +1994-05-11 Frederic Pierresteguy (F.Pierresteguy@frcl.bull.fr) + + * xmenu.c (xmenu_show): New var mb_item. Use it to determine the + menubar item that led to the menu. + (Fx_popup_menu): Suppress duplicate test case in the way to determine + whether the menu is handling a menu bar click. + +1994-05-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * buffer.c (Frename_buffer): Reject empty string as new name. + +1994-05-10 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * process.c (exec_sentinel): Don't deactivate the mark. + Check for asynch buffer switch. + +1994-05-10 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/bsd4-2.h (BSD): Define as 42. + (BSD4_2): Define as 1. This makes it like bsd4-3.h. + + * floatfns.c: Don't declare logb if it is a macro. + +1994-05-10 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * keyboard.c (read_char): Preserve echo area on asynch buffer switch. + +1994-05-10 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * dispnew.c [__GNU_LIBRARY__]: Redefine PENDING_OUTPUT_COUNT even + if already defined. + +1994-05-10 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * fileio.c (Finsert_file_contents) [MSDOS]: Ignore the replace feature. + + * buffer.c (syms_of_buffer): Doc fix. + + * keyboard.c (syms_of_keyboard): Doc fix. + +1994-05-10 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * keyboard.c (safe_run_hooks): New function, extracted from + command_loop_1. Bind inhibit_quit. + +1994-05-09 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xmenu.c (string_width): Deleted. + + * xterm.c (x_set_window_size) [USE_X_TOOLKIT]: + Preserve the main widget's x and y position. + +1994-05-08 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * process.c (process_send_signal): If PREFER_VSUSP, + use VSUSP instead of VSWTCH. + * s/sco4.h (PREFER_VSUSP): Defined. + * s/irix5-0.h (PREFER_VSUSP): Defined. + + * fileio.c (Fdo_auto_save): Write a list of all auto save file names. + (Vauto_save_list_file_name): Specify file name to put them in. + (syms_of_fileio): Set up Lisp var. + +1994-05-07 Morten Welinder (terra@diku.dk) + + * callproc.c [MSDOS]: Rename Vbinary_process to Vbinary_process_output. + (syms_of_callproc) [MSDOS]: Rename lisp variable binary-process to + binary-process-output. + (Fcall_process, syms_of_callproc) [MSDOS]: Use new names. + (Vbinary_process_input) [MSDOS]: New variable. + (syms_of_callproc) [MSDOS]: Declare binary-process-input. + (Fcall_process_region) [MSDOS]: Bind binary-process-input temporarily + to buffer-file-type. + (init_callproc) [MSDOS]: Don't add lib-src as the wrapped binaries + are in bin. + +1994-05-07 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * buffer.c (Qbuffer_file_type): Var deleted. + * callproc.c (Qbuffer_file_type): Var added. + + * keyboard.c (read_char): Don't test do_mouse_tracking; + instead, do prepare_menu_bars only if commandflag > 1. + (read_char): Do call add_command_key for mouse-movement events. + Test detect_input_pending, not EVENT_QUEUES_EMPTY, for kbd menus. + But don't test either one for mouse menus. + + * undo.c (record_delete): Record the old point value + only right after a boundary. + +1994-05-06 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/dgux5-4r3.h: Use dgux5-4r2.h under new name. + + * puresize.h (PURESIZE): Increase to 235000 and 205000. + +1994-05-06 Morten Welinder (terra@diku.dk) + + * s/msdos.h: Define NO_MATHERR. + * floatfns.c: Don't guard DOMAIN && SING && OVERFLOW check by + an #ifndef MSDOS. + +1994-05-06 Francesco Potorti` (pot@cnuce.cnr.it) + + * m/delta.h: (SYSTEM_MALLOC): deleted. The problem isn't there. + +1994-05-06 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (x_set_offset): Set gravity and size hint + before moving the window. + + * keyboard.c (make_lispy_event): Ignore mouse events for deleted frame. + + * xterm.c (XTread_socket): + For ReparentNotify, use x_top_window_to_frame. + Also recompute frame position using x_real_positions. + For ConfigureNotify, don't ignore send_events. + Also recompute frame position using x_real_positions. + +1994-05-05 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * window.c: Use PT, not point. + (Fdelete_other_windows): Do nothing if w->start is outside region. + Don't temporarily move point when recomputing window position. + +1994-05-05 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xfns.c (x_real_positions): New function. + + * keyboard.c (make_lispy_movement): Don't call pixel_to_glyph_coords + if FRAME is 0. + + * xterm.c (x_set_offset): Update XNegative and YNegative for new pos. + (x_calc_absolute_position): Clear XNegative and YNegative. + + * xrdb.c (x_load_resources) [USE_X_TOOLKIT]: Don't call XrmInitialize. + + * keymap.c (describe_map): Ignore bindings for all except + symbols and integers. + + * unexelfsgi.c (unexec): Handle debugging info properly. + + * s/freebsd.h: Don't use netbsd.h. Do all those things right here. + +1994-05-05 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * xmenu.c (Fx_popup_menu): Restore accidentally-deleted call to + mouse_position_hook. + (xmenu_show): Disallow empty menus. + +1994-05-05 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (last_point_position_buffer): New variable. + (command_loop_1): Set it. + * undo.c (record_delete): Test it. + * commands.h (last_point_position_buffer): Declared. + + * Makefile.in.in: Put in a separator for where to start cpp procssing. + Above that, use Make-style comments. + This goes with changes in ../configure.in. + +1994-05-04 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/isc4-0.h (NEED_SIOCTL, ISC4_0): Declared. + + * sysdep.c: Test ISC4_0 along with TIOCGWINSZ. + + * process.c (wait_reading_process_input): Don't call prepare_menu_bars + unless we are going to redisplay for a garbaged frame. + (read_process_output): Call prepare_menu_bars if waiting for input. + (exec_sentinel): Call prepare_menu_bars if waiting for input. + + * s/dgux5-4r3.h, s/dgux5-4r2.h: Renamed from ..4R.. + + * eval.c (error): Fix logic in call to xmalloc/xrealloc. + + * xterm.c (x_make_frame_invisible): Use XWithdrawWindow again. + + * s/sol2.h, s/sol2-3.h (LD_SWITCH_SYSTEM): + Use ./prefix-args, not -Xlinker directly. + +1994-05-03 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xfns.c (x_set_cursor_color): Fix typo. + + * xselect.c (x_own_selection): Catch errors around XSetSelectionOwner. + + * buffer.c (syms_of_buffer): Doc fix. + + * xdisp.c (display_text_line): Since HPOS is negative, avoid + writing before the beginning of the charstarts line. + + * minibuf.c (read_minibuf): Clear previous_echo_glyphs. + +1994-05-02 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * dired.c (file_name_completion_stat): Use both lstat and stat. + +1994-05-02 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * xterm.c (show_mouse_face): Fix test for cursor in highlighted area. + (note_mouse_highlight): Reorder test for simplicity. + (note_mouse_highlight, show_mouse_face, clear_mouse_face, + x_destroy_window): Use row/col instead of buffer position to keep + track of highlighted area. + +1994-05-02 Francesco Potorti` (pot@cnuce.cnr.it) + + * m/delta.h: (SYSTEM_MALLOC): Defined, since GNU malloc does not work. + (BCOPY_UPWARD_SAFE): Defined to 0 for the Green Hills compiler. + +1994-05-02 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * process.c (create_process): Undo April 19 setsid change. + +1994-05-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.h (struct x_display): New field size_hint_flags. + * xfns.c (Fx_create_frame): Set the size_hint_flags field. + Don't call x_calc_absolute_position. + * xterm.c (x_calc_absolute_position): Use size_hint_flags. + New FLAGS arg deleted. Callers changed. + + * xfns.c (x_figure_window_size): Handle `-' for top or left. + (Fx_parse_geometry): Handle one element at a time. + Give `-' when appropriate. + (x_figure_window_size): Allow just height or just width. + + * xterm.c (x_wm_set_size_hint): Don't try to handle negative positions. + (x_calc_absolute_position): + New arg FLAGS. Use XNegative and YNegative. + (x_set_offset): Pass new arg. + + * xfns.c (x_figure_window_size): Set USPosition only if user-position + is non-nil; otherwise, if pos is specified, set PPosition. + Likewise for USSize and PSize. + (Fx_create_frame): Use XNegative and YNegative to set win_gravity. + [USE_X_TOOLKIT] (x_window): Use XNegative and YNegative + to set win_gravity. Pass new arg to x_calc_absolute_position. + + * editfns.c (Ftranspose_regions): Take addresses only after move gap. + Cast result of alloca. Use xmalloc instead, for large objects. + Always copy the middle portion directly; never put it in temp. + Always move the gap to START1 or END2, whichever is nearer. + + * keyboard.c (Ftrack_mouse): Call prepare_menu_bars at the start. + (read_char): Don't call prepare_menu_bars if doing mouse tracking. + +1994-04-30 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * puresize.h (PURESIZE) [MULTI_FRAME]: Increase to 232000. + +1994-04-30 Paul Reilly (pmr@churchy.gnu.ai.mit.edu) + + * s/dgux5-4R3.h: new file. + + * s/dgux5-4R2.h: new file. + + * s/dgux.h (SVR4): Make conditional on ELF environment. + (INTERRUPT_INPUT, ORDINARY_LINK): Set by default. + (C_COMPILER, LINKER and MAKE_COMMAND): Remove. + + * process.c (IN_ADDR, NUMERIC_ADDR_ERROR): Made conditional on + HAVE_BROKEN_INET_ADDR. + +1994-04-30 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (record_asynch_buffer_change): Block SIGIO. + (force_auto_save_soon): Call record_asynch_buffer_change. + + * emacs.c (memory_warning_signal): Call force_auto_save_soon. + + * keyboard.c (force_auto_save_soon): New function. + + * process.c (Fopen_network_stream): Retry the connect if EADDRINUSE. + Ignore EISCONN. + +1994-04-29 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * eval.c (init_eval): Initialize when_entered_debugger to -1. + +1994-04-29 Jim Blandy (jimb@totoro.bio.indiana.edu) + + * data.c (Ffset, Ffmakunbound): Signal an error if SYM is nil or t. + +1994-04-29 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * data.c, floatfns.c, lread.c [MSDOS]: Re-enable some #undef's. + +1994-04-29 Karl Fogel (kfogel@phylo) + + * editfns.c (Ftranspose_regions): New function. + (transpose_markers): Helper func for above. + (syms_of_frame): Call defsubr for Stranspose_regions. + +1994-04-29 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.h (x_mouse_grabbed): Declared. + * xmenu.c (xdialog_show): Clear x_mouse_grabbed. + + * frame.c (Fframe_live_p): Alternative defn for not MULTI_FRAME. + (syms_of_frame): Call defsubr for it. + + * process.c: Doc fixes. + + * xterm.c (x_wm_set_size_hint): Always set PWinGravity. + Rename the args. Compute x and y fields from negative positions. + Use XGetWMNormalHints if X11R4 or newer. + (x_make_frame_visible): Call x_set_offset only if not USE_X_TOOLKIT. + (x_make_frame_invisible): Call x_wm_set_size_hint. + (x_set_offset): Pass 0 as 3rd arg to x_wm_set_size_hint. + (x_set_window_size): Likewise. Set win_gravity field here if nec. + + * xfns.c (Fx_create_frame): Pass 0 as 3rd arg to x_wm_set_size_hint. + (x_figure_window_size): Fix typo setting XNegative. + + * minibuf.c (Fminibuffer_complete): Add third arg to Fset_window_start. + + * buffer.c (init_buffer_once): Initialize buffer_file_type field right. + + * m/dos386.h (HAVE_MOUSE): Defined. + (PURESIZE): Increase value. + + * xdisp.c (decode_mode_spec): Fix handling of `%t'. + + * msdos.c, dosfns.c: Finish downcasing mouse_init1, mouse_off, + mouse_check_moved, mouse_pressed, mouse_released, mouse_on, mouse_init. + + * dispnew.c (update_frame): Fix previous change: + Unconditionally bzero at the end. + +1994-04-29 Morten Welinder (terra@diku.dk) + + * msdos.c (visible_bell): Now static. Make the asm volatile. + Don't expect register %gs to survive calls to other functions + (just to be safe, %gs will survive at present). + + * keyboard.c (make_lispy_movement): if HAVE_MOUSE then include + the mouse handling code. + * msdos.c (glyph_to_pixel_coords, pixel_to_glyph_coords) new + functions imitating those in xterm.c. + + * s/msdos.h (getppid): Definition deleted. + + * msdos.c (dos_rawgetc): Key numbers are biased by 0xff00. + + * dosfns.c (Fmode25, Fmode4350): Clean up the coding and return + a well-defined value. + (syms_of_dosfns): Doc fix. + +1994-04-29 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * keymap.c (Fsingle_key_description): Undo previous change. + (describe_map): Skip string entries. + + * minibuf.c (do_completion): Initialize vars before gcpro. + +1994-04-29 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * dispnew.c (update_frame): Move those assignments even farther down. + + * xterm.c (x_wm_set_size_hint): Don't set PMaxSize. + Don't touch win_gravity field if no PWinGravity. + +1994-04-28 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * print.c: Doc fixes. + + * keymap.c (describe_map_tree, describe_buffer_bindings): gcpro stuff. + (describe_buffer_bindings): Delete unused code. + +1994-04-28 Per Abrahamsen (abraham@research.att.com) + + * keymap.c (Fsingle_key_description): Accept strings as keys since + the buffer menu uses them. + +1994-04-28 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * dispnew.c (update_frame): Move assignments to current_frame + and desired_frame. + + * floatfns.c (logb): Test HPUX, not hpux. + + * s/sunos4-1.h (LIBS_SYSTEM): #if 0'd. + + * xmenu.c (Fx_popup_menu): Doc fix. + + * xfns.c (x_window) [USE_X_TOOLKIT]: Call XSetWMHints. + +1994-04-28 Michael D. Ernst (mernst@monozygote.research.microsoft.com) + + * fileio.c (inhibit-file-name-handers): Correct documentation. + +1994-04-28 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * xterm.c (XTread_socket): Only top window cares about LeaveNotify. + + * frame.c (Fframe_parameters) [!MULTI_FRAME]: Unstub it again. + +1994-04-28 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * emacs.c (syms_of_emacs): Doc fix. + + * callproc.c (child_setup): Test PRIO_PROCESS, as in sys_subshell. + + * m/hp800.h: Renamed from hp9000s800.h. + (hp9000s800): Undo previous change. + + * process.c (create_process): If vfork fails, close forkin and forkout. + +1994-04-27 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (x_make_frame_visible): Use XtMapWidget, not XtPopup. + + * m/hp9000s800.h (hp800): Define this instead of hp9000s800. + + * Makefile.in.in (mostlyclean): Remove liblw.a. + + * lread.c (read1): Allow `\C- ' and `\C-?'. + +1994-04-27 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * unexmips.c (unexec): Cast pointers. + Fix error message. + + * Makefile.in.in: Use C-style comments. + + * frame.c (Fframe_parameters) [!MULTI_FRAME]: Replace with stub. + (Fframe_parameters, Fmodify_frame_parameters) [!MULTI_FRAME]: + Remove extra docstring. + +1994-04-27 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/sunos4-0.h (LD_SWITCH_SYSTEM): Undo previous change. + + * xterm.c (XTread_socket, case ClientMessage): Don't call + XSetInputFocus if event is not for an existing frame. + + * xmenu.c (xmenu_show, xdialog_show): + If we unread some events, set interrupt_input_pending. + + * xterm.c (XTread_socket) [USE_X_TOOLKIT]: Never pass motion + events to the toolkit. + + * CONFIGURATION now comes via config.h. + * Makefile.in.in (emacs.o): Use the default .c.o command. + (configuration): Make variable deleted. + * config.h.in (CONFIGURATION): Add #undef. + + * xterm.c (XTread_socket) [USE_X_TOOLKIT]: Undo previous change. + (x_wm_set_size_hint): Do set max_height, max_width, and PMaxSize flag. + +1994-04-26 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * process.c (create_process) [HAVE_TERMIOS && LDISC1]: Use tcsetattr. + +1994-04-26 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * alloc.c (mark_object, case frame): Mark menu_bar_vector field. + +1994-04-25 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (Vunread_command_events): + Renamed from unread_command_events. + All uses changed. + * command.h (Vunread_command_events): Renamed. + * lread.c (read_filtered_event): Use Vunread_command_events. + * minibuf.c (temp_echo_area_glyphs): Use Vunread_command_events. + + * keyboard.c (read_char): Don't use menus if we have events waiting. + + * xterm.c (XTread_socket) [USE_X_TOOLKIT]: Let toolkit handle + menu bar click. + +1994-04-25 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * insdel.c: Use PT, not point. + (gap_left, gap_right, adjust_markers): Make these functions static. + (adjust_point): New function. + (insert_1, insert_from_string_1, del_range_1): Use it. + + * xterm.c (x_term_init): Add explicit cast. + (XTmouse_position): Don't use last_mouse_frame if it's dead. + (XTread_socket): Ditto. + + * textprop.c (F*_property_change): Typecheck limit argument. + +1994-04-25 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xdisp.c (syms_of_xdisp): Set up Qmenu_bar_update_hook. + (update_menu_bar): Run that hook. + Fix failure to update menu bar when w->update_mode_line was nil. + + * frame.h (struct frame): New fields menu_bar_vector and + menu_bar_items_used. + * frame.c (make_frame): Initialize fields menu_bar_vector and + menu_bar_items_used. + + * keyboard.c (menu_bar_item): Put a list of keymaps into the third + slot of an item in menu_bar_items_vector. + +1994-04-24 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * fileio.c (Finsert_file_contents): Fix accessing buffer_file_type + since it is t or nil. Change to handle t or nil as value + of find-buffer-file-type. + + * buffer.c (Fkill_all_local_variables): Doc fix. + +1994-04-23 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * process.c (create_process): Use SETUP_SLAVE_PTY only if pty_flag. + Likewise for child_setup_tty. + + * window.c (Fselect_window): Use Fselect_frame. + + * frame.c (Fset_frame_selected_window): New function. + (syms_of_frame): Set up Lisp function. + + * lisp.h (Vascii_canon_table, Vascii_eqv_table): Declared. + + * buffer.c (reset_buffer_local_variables): Use Vascii_eqv_table + and Vascii_canon_table. + + * window.c: Implement special frames for specified buffers. + (Vspecial_display_buffer_names, Vspecial_display_regexps) + (Vspecial_display_function): New variables. + (syms_of_window): Set up Lisp variables. + (Fdisplay_buffer): Handle them. + +1994-04-22 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile.in.in (alloca.o): Use config_h. + (config_h): Use M_FILE and S_FILE. + (S_FILE, M_FILE): New variables hold names of config files. + + * fileio.c (syms_of_fileio): New Lisp var inhibit-file-name-operation. + (Ffind_file_name_handler): Obey that variable. Use new meaning + for inhibit-file-name-handlers. + + * config.h.in (HAVE_LIBRESOLV): Add #undef. + * s/sunos4-1.h (LIBS_SYSTEM): Test HAVE_LIBRESOLV, not HAVE_RES_INIT. + Do not test HAVE_GETHOSTNAME. + + * s/sunos4-1.h (LIBS_SYSTEM): Invert the HAVE_RES_INIT condition. + +1994-04-22 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * fileio.c (Ffind_file_name_handler): New argument OPERATION. + All callers changed. + +1994-04-22 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * process.c (max_process_desc): New variable. + (wait_reading_process_output): Don't look for process output + beyond that many bits. + (create_process, Fopen_network_stream, deactivate_process): Update it. + (init_process): Initialize it. + + * frame.c (Fmouse_pixel_position, Fset_mouse_pixel_position): + New functions. + (syms_of_frame): Set up Lisp functions. + + * xterm.c (x_set_mouse_pixel_position): New function. + +1994-04-21 Simon Leinen (simon@lia.di.epfl.ch) + + * process.c (send_process): If fpathconf fails, use 250. + +1994-04-21 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * emacs.c (init_cmdargs): Check only for etc and lib-src subdirs + when setting Vinstallation_directory. + (syms_of_emacs): Make Lisp vars invocation-name, invocation-directory + and installation-directory. + + * lread.c (init_lread): Maybe put build-time Lisp dirs on load-path. + + * callproc.c (init_callproc): Set Vdoc_directory like Vdata_directory. + + * lread.c (init_lread): Improve warning message. + + * xterm.c (x_make_frame_visible): Args to x_set_offset were swapped. + +1994-04-20 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * xterm.h (x_top_window_to_frame): Declare this function. + +1994-04-20 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * fns.c: Doc fixes. + + * Makefile.in.in (TAGS): Split off included tags file lisp/TAGS. + (../lisp/TAGS): New target uses recursive make. + (ctagsfiles, lisptagsfiles): New variables. + + * xfns.c (x_window): Test FRAME_EXTERNAL_MENU_BAR + to decide on calling initialize_frame_menubar. + +1994-04-20 Francesco Potorti` (pot@fly.cnuce.cnr.it) + + * m/delta.h (HAVE_SOCKETS): defined if HAVE_INET_SOCKETS is defined. + +1994-04-20 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * frame.c (Fmodify_frame_parameters, Fframe_parameters): + Define even if not MULTI_FRAME. + + * config.h.in (HAVE_INET_SOCKETS): Add #undef. + + * xterm.c (XTread_socket): Delete the non-NEW_SELECTIONS code + and simplify the toolkit conditional for those cases. + + * xterm.c (XTread_socket, case ClientMessage): + Always use x_window_to_frame. + + * xfns.c (x_top_window_to_frame): New function. + +1994-04-19 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * process.c (create_process): Call setsid only if pty_flag. + + * xterm.c (x_make_frame_invisible): Explicitly clear visible and + iconified flags, as well as the async flags. + +1994-04-19 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * keymap.c (describe_map): Merge with describe_map_2. + (describe_map_tree, describe_map): Skip keymaps we've seen before. + + * keyboard.c (read_avail_input): Don't retry read. + +1994-04-19 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (Vlast_event_frame): Define unconditionally. + (syms_of_keyboard): Always make the Lisp var. + + * Makefile.in.in (${etc}DOC): Delete redundant version.el from cmd. + +1994-04-19 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * keyboard.c (read_avail_input): Test EINTR, not EAGAIN. + Write loop as a do-while. + + * puresize.h (PURESIZE) [!MULTI_FRAME]: Increase to 200000. + +1994-04-18 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (XTread_socket): Call XSetInputFocus. + +1994-04-18 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * config.h.in: (EMACS_INT, EMACS_UINT): Omit if NOT_C_CODE. + +1994-04-18 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * mem-limits.h (get_lim_data): Handle NO_LIM_DATA. + + * xterm.c (x_make_frame_invisible) [USE_X_TOOLKIT]: Use XtPopdown. + (XTread_socket): Call _XEditResCheckMessages only if HAVE_X11R5. + + * m/convex.h (CRT0_DUMMIES): Ignore one arg. + (LIBS_TERMCAP): Use the system's termcap. + + * process.c (create_process): Fix previous change. + +1994-04-17 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xfns.c (Xatom_editres_name): Declared. + (Fx_open_connection): Initialize it. + * xterm.c (Xatom_editres_name): Variable defined. + (XTread_socket): Handle that kind of message. + (x_term_init): Specify -name option in XtAppInitialize. + + * xterm.c (Qface, Qmouse_face): Supply missing Lisp_Object. + + * config.h.in (EMACS_INT, EMACS_UINT): New typedefs. + + * casetab.c (set_case_table): Handle nil for EQV with non-nil CANON. + (Fcase_table_p): Accept nil for EQV with non-nil CANON. + + * keyboard.c (read_avail_input): Test both aix386 and _BSD. + + * window.c (set_window_width): + Don't delete root window for being too narrow. + + * xterm.c (dumpglyphs): When HL=2, check explicitly for using + the frame's default font or not. + + * keyboard.c (read_char_x_menu_prompt): Don't check for value = nil + if value was originally a cons. + + * xmenu.c (xmenu_show): Fix typo in last change. + +1994-04-16 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * frame.c (Fmouse_position): Don't clip. + * keyboard.c (make_lispy_movement): Don't clip. + +1994-04-16 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/netbsd.h: Add NO_SHARED_LIBS conditional. + * s/freebsd.h: Rewrite to use netbsd.h and define NO_SHARED_LIBS. + + * keyboard.c (read_avail_input): Fix previous change--test _BSD. + + * data.c (Fsetq_default): Doc fix. + + * eval.c (Fsetq): Doc fix. + + * Makefile.in.in (configuration): Use SET_MAKE to get + the value of $(MAKE). + +1994-04-15 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.h (map_prompt): Declared. + + * xmenu.c (xmenu_show): Don't cons on subprefix_stack[j] if nil. + + * keyboard.c (read_avail_input): Don't generate SIGHUP of aix386; + only on other AIX systems. + + * xterm.c (XTread_socket): + For UnmapNotify, use x_any_window_to_frame. + + * process.c (create_process): Test TIOCSETD along with NTTYDISC. + + * frame.c (Fset_frame_position): Pass new arg to x_set_offset. + + * xterm.c (x_set_offset): New arg CHANGE_GRAVITY. + (x_make_frame_visible): Pass new arg. + + * xfns.c (Fx_create_frame): Delete excess args to x_wm_set_size_hint. + + * xterm.c (x_wm_set_size_hint): Args spec_x and spec_y deleted. + (x_set_offset, x_set_window_size): Don't pass those args. + + * fileio.c (Finsert_file_contents): Fix test for unchanged file. + + * xterm.c (x_destroy_window): Just clear out mouse_face... vars. + + * keyboard.c (syms_of_keyboard): Init and staticpro system_key_syms. + (modify_event_symbol): Use the cdr of the alist entry. + Whenever value is nil, intern a new symbol. + + * Makefile.in.in (LIBX): Put LIBXT after LD_SWITCH_X_SITE. + +1994-04-15 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * xdisp.c (fix_glyph) [HAVE_X_WINDOWS]: When glyph face is 0, use + the computed face as given. + + * keyboard.c (read_avail_input): Fix comment delimiter. + + * m/pmax.h (C_SWITCH_X_MACHINE): add -DNeedVarargsPrototypes=0. + +1994-04-14 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * scroll.c (calculate_scrolling): Add explicit casts. + +1994-04-14 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (x_wm_set_size_hint): Use win_gravity from frame. + + * xterm.h (x_display): New field win_gravity. + * xfns.c (Fx_create_frame): Set win_gravity field. + + * xfns.c (x_window, both versions): + Don't call x_calc_absolute_position. + * xterm.c (x_make_frame_visible): Call x_set_offset. + + * xterm.c (x_make_frame_visible): Don't call XMapSubwindows. + (x_iconify_frame): Likewise. + + * s/isc4-0.h (LIBS_SYSTEM): Defined. + + * keyboard.c (make_lispy_event): Put mouse event code + into MULTI_FRAME conditional. + + * xfns.c (Fx_list_fonts): Error if non-X frame used. + + * xdisp.c (update_menu_bar): Take frame as arg. + (update_menu_bars): Function deleted. + (prepare_menu_bars): Call update_menu_bar; do it for all frames. + Simplify computation of all_windows; ignore irrelevant criteria. + + * xterm.h (HAVE_X11R4): If we define HAVE_X11R5, define this too. + + * xterm.c (pending_autoraise_frame): New variable. + (x_new_focus_frame): Don't autoraise here; just set that var. + (XTread_socket): Raise that frame here. + +1994-04-13 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * emacs.c (inherited_pgroup): Conditionalize on BSD_PGRPS. + + * s/netbsd.h (TABDLY): Defined. + + * doc.c, fileio.c, unexsunos4.c [HAVE_UNISTD_H]: Include unistd.h. + + * dired.c (Ffile_attributes): Cast st_size to int. + + * xmenu.c (last_menu_bar_item_end): New variable. + (xmenu_show): Set that var. + (other_menu_bar_item_p): Return 0 if mouse is not in any menu bar item. + + * keymap.c (describe_map_tree): Fix call to Flookup_key. + + * xfns.c (x_window): Don't call initialize_frame_menubar + if no menu bar. + (Fx_create_frame): Default menu-bar-lines parm before calling x_window. + +1994-04-13 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * dispnew.c (Vglyph_table): Doc fix. + + * frame.c (Fmouse_position) [MULTI_FRAME]: Use pixel_to_glyph, not + glyph_to_pixel. Skip the conversion if args are nil. + [!MULTI_FRAME]: All results are nil. Remove extra docstring. + + * window.c (Fnext_window, Fprevious_window, Fdisplay_buffer): Test + MULTI_FRAME when frame-walking. + (Fset_window_configuration): Only call X fns if HAVE_X_WINDOWS. + + * fns.c (Fy_or_n_p, Fyes_or_no_p): Test HAVE_X_MENU in popup code. + +1994-04-13 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * indent.c (compute_motion): Do not abort if window shows some + other buffer. + (Fcompute_motion): Use whatever buffer is current. + +1994-04-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/bsd4-2.h (BSD): Give it a number as definition. + + * s/sol2-3.h: Fix #include file name. + + * xterm.c (x_destroy_window): Call clear_mouse_face if necessary. + + * xmenu.c (xmenu_show, xdialog_show): Add casts in assignments + to widget_value fields from string contents. + (dispatch_dummy_expose): Cast arg to XtDispatchEvent. + [!USE_X_TOOLKIT] (xmenu_show): Right-justify char equivalents. + Use alloca for concatenated strings, if alloca is fast. + + * lisp.h (Fprocess_send_eof, Foverlay_get): Declared. + + * keymap.c (Fkey_binding): Declare accept_default. + + * sysdep.c (sys_siglist) [sun]: Check SIGFREEZE and SIGTHAW defined. + +1994-04-12 Per Bothner (bothner@cygnus.com) + + Provide a hook for elisp to signal a changed window size + to a process inferior. + * sysdep.c (set_window_size): New function. + * process.c (Fset_process_window_size): New function. + +1994-04-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * eval.c (specbind): Use find_symbol_value. + + * xfaces.c (frame_update_line_height): Don't call x_set_window_size. + Return 1 if line_height changed. + (Fset_face_attribute_internal): Call x_set_window_size here if nec. + * xterm.c (x_new_font): Always call x_set_window_size. + + * xmenu.c (xmenu_show) [USE_X_TOOLKIT]: Use XtTranslateCoords. + + * process.c (send_process): Test pty_flag field for nil, not 0. + +1994-04-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/sunos4-0.h (LD_SWITCH_SYSTEM): Alternate definition if __GNUC__. + + * callproc.c: If we include fcntl.h, define INCLUDED_FCNTL. + * systty.h: Check for INCLUDED_FCNTL already defined. + + * xterm.c (x_wm_set_size_hint): If PROMPTING is 0, + copy the old win_gravity field. + If USPosition is set, don't set PWinGravity. + + * keyboard.c (read_avail_input): Separate local var n_to_read + so that reading doesn't clobber that info when it sets nread. + + * s/isc4-0.h (LIBS_SYSTEM): Defined. + + * emacs.c (main): Fix typo in prev. change. + + * Makefile.in.in (temacs): Include ${ALL_LDFLAGS} within + the call to YMF_PASS_LDFLAGS. + +1994-04-11 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * keyboard.c (make_lispy_event): Initialize item. + + * indent.c (vmotion): Use minibuf_prompt_width despite window-start. + + * print.c (printchar, strout): Use FRAME_PTR, not struct frame *. + + * frame.c (Fmouse_position) [!MULTI_FRAME]: Declare col and row. + +1994-04-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (make_lispy_movement): Conditionalize on MULTI_FRAME. + (kbd_buffer_get_event): Call make_lispy_movement only if MULTI_FRAME. + + * xselect.c (x_decline_selection_request): Call XFlushQueue. + + * eval.c (Fsetq): Doc syntax fix. + * print.c (syms_of_print): Doc syntax fix. + * editfns.c (Fuser_real_login_name): Doc syntax fix. + * data.c (Fsetq_default, Fmake_local_variable): Doc syntax fix. + +1994-04-10 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (x_wm_set_size_hint): If change_gravity is 0, + just don't set the gravity. + +1994-04-09 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (dumpglyphs): Clear any extra pixel rows below the text. + + * xfns.c (x_figure_window_size): Don't call x_calc_absolute_position. + (x_window): Separate into two alternative definitions. + Call x_calc_absolute_position here. + + * widget.c (EmacsFrameSetCharSize): Do not attempt to preserve + the window position. + + * xfns.c (Fx_list_fonts): Doc fix. + + * buffer.c (Vafter_change_functions, Vbefore_change_functions): + New variables. + (syms_of_buffer): Set up Lisp vars. + * buffer.h (Vafter_change_functions, Vbefore_change_functions): + Declared. + + * insdel.c (before_change_functions_restore): + (after_change_functions_restore): New functions. + (signal_before_change): Handle Vbefore_change_functions. + (signal_after_change): Handle Vafter_change_functions. + + * cmds.c (internal_self_insert): Test Vafter_change_functions, + Vbefore_change_functions. + + * xfaces.c (frame_update_line_height): Check param_faces[i] not null. + + * emacs.c (main): Handle EXTRA_INITIALIZE. + + * s/isc4-0.h: New file. + + * keymap.c (get_keymap): Pass 1 as ERROR to get_keymap_1. + (get_keyelt): New arg AUTOLOAD means load keymaps indirected thru. + All callers changed; most pass 0. + (Fdefine_key, Flookup_key): Load all the keymaps we look in. + + * editfns.c (make_buffer_string): Copy properties whenever we + have some, even if they don't change. + + * xterm.c (x_display_box_cursor): Explicitly clear full height of line. + (dumpglyphs): New arg just_foreground. Callers changed. + (x_set_window_size): Call XSync. + + * xterm.c (note_mouse_highlight): Do nothing if buffer has changed. + + * xterm.c (x_new_font): Fix setting line_height. + + * Support fonts of different heights, using tallest as line height: + + * xfaces.c (frame_update_line_height): New function. + (Fset_face_attribute_internal): Call that. + + * xterm.c (x_new_font): If frame is new, set line_height field. + Otherwise call frame_update_line_height. + + * xterm.h (struct x_display): New field line_height. + (VERTICAL_SCROLL_BAR_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW) + (CHAR_TO_PIXEL_ROW): Use line_height field. + + * xterm.c (stufflines, scraplines, dumprectangle, x_do_pending_expose) + (pixel_to_glyph_coords, x_draw_box, clear_cursor, x_display_bar_cursor) + (x_set_resize_hint, x_set_mouse_position, x_wm_set_size_hint) + (XTclear_end_of_line, redraw_previous_char): Use line_height field. + * xfns.c (x_char_height): Use line_height field. + * widget.c (get_default_char_pixel_size): Use line_height field. + * dispnew.c (update_line): Use line_height field. + * xmenu.c (Fx_popup_menu): Use line_height field. + +1994-04-09 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * indent.c (Fvertical_motion): Use window arg, not selected_window. + +1994-04-08 Frederic Pierresteguy (fp@hal.gnu.ai.mit.edu) + + * xterm.c (show_mouse_face): Change the mouse cursor accordingly. + + * xterm.h (cross_cursor): New field for struct x_display. + + * xfns.c (syms_of_xfns): Define Vx_cross_pointer_shape. + (Vx_cross_pointer_shape): New variable. + (Vx_cross_pointer_shape): Create a mouse face cursor for the mouse-face + properties. + +1994-04-08 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xmenu.c (Fx_popup_dialog): Doc fix. + (list_of_items): Handle nil in item list as left/right boundary. + (push_left_right_boundary): Record the boundary. + (xmenu_show): Disregard a boundary if any. + (xdialog_show): Really obey a boundary. + +1994-04-07 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * intervals.h (Qintangible): New symbol, replacing Qhidden. + * textprop.c (syms_of_textprop): Initialize it. + * intervals.c (set_point): Skip past intangible regions. + + * term.c (system_uses_terminfo): New variable. + (syms_of_term): New function, to initialize it. + * emacs.c (main): Call syms_of_term. + + * termhooks.h (enum event_kind): Add buffer_switch_event. + * keyboard.c (kbd_buffer_get_event): Make it lispy. + (record_asynch_buffer_change): New. Store it in the event queue. + * process.c (read_process_output): If buffer changes, record that fact. + + * minibuf.c (Vminibuffer_exit_hook): New variable. + (read_minibuf): Run hook when exiting minibuffer. + + * xdisp.c (copy_part_of_rope): Replace non-glyph with 0. + + * insdel.c (insert_1): New function, extracted from insert. + (insert_from_string_1): Likewise, taken from insert_from_string. + (insert, insert_from_string): Call the new functions. + (insert_before_markers, insert_from_string_before_markers): Adjust + the markers before calling the after-change function. + +1994-04-07 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * scroll.c (struct matrix_elt): Use int, not short. + Use unsigned char for insertcount and deletecount. + (INFINITY): Increase to 1000000. + +1994-04-06 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * minibuf.c (Fminibuffer_prompt_width): Undo previous change. + * xdisp.c (display_text_line): minibuffer_prompt_width is a + distance, not an absolute position. + + * editfns.c (Fformat): Reword confusing error message. + * doprnt.c (doprnt): Likewise. + + * eval.c (Fsetq): Doc fix. + +1994-04-05 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * xdisp.c (display_string): Allow for hpos < 0 when clearing array. + + * indent.c (vmotion): Don't use minibuf_prompt_width if + window-start has suppressed the prompt. + + * minibuf.c (Fminibuffer_prompt_width): Allow for negative value. + + * buffer.c (Fget_buffer_create): Disallow empty string. + + * keymap.c (describe_buffer_bindings): Move XSYMBOL to after SYMBOLP. + Exclude trailing null in string copies. + + * indent.c (compute_motion): Add window argument. All callers changed. + + * minibuf.c (do_completion): gcpro some things. + + * minibuf.c, xdisp.c: Use PT, not point. + +1994-04-04 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * textprop.c (Fget_char_property): Doc fix. + + * dired.c (file_name_completion): Honor completion-regexp-list. + + * search.c (Freplace_match): Don't capitalize unless all matched + words are capitalized. + + * buffer.c (verify_overlay_modification): Run modification-hooks + for any deletion that intersects the overlay. + +1994-04-04 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * fileio.c (Fdo_auto_save): Don't turn off auto save mode. + Instead, store -1 in b->save_length. And don't auto save + if there is -1 there. + + * xterm.c (note_mouse_highlight): Temporarily widen the buffer. + + * xdisp.c (display_text_line): Rename startp to leftmargin. + Use that, not p1start, when checking for char off left edge. + + * dispnew.c (verify_charstarts): Handle truncation of lines. + + * xdisp.c (mark_window_display_accurate, redisplay): + Set window_end_valid to the buffer displayed, not Qt. + * xterm.c (note_mouse_highlight): Check window still shows that buffer. + +1994-04-03 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (show_mouse_face): Turn off cursor only if it's + in the area being manipulated. + (XTupdate_begin): Don't turn off highlight if we aren't updating + the window that it is in. + + * buffer.c (overlays_at): Fix previous change. + + * lisp.h (gc_in_progress): Declared. + + * xterm.c (note_mouse_highlight): Do nothing if gc_in_progress. + Set mouse_face_deferred_gc when that case arise. + (XTframe_up_to_date): If mouse_face_deferred_gc, redo highlighting. + + * xdisp.c (display_text_line): Properly handle charstarts for hscroll, + and for continuation in mid character. + (message2): Call frame_up_to_date_hook. + + * xterm.c (undefer_mouse_highlight, defer_mouse_highlight): New fns. + * alloc.c (Fgarbage_collect): Call ..._mouse_highlight. + + * buffer.c (overlays_at): Use XGCTYPE. + + * buffer.h (OVERLAY_POSITION): Use XGCTYPE. + + * xmenu.c (Fx_popup_dialog): If POSITION is t, use selected frame. + +1994-04-02 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xdisp.c (redisplay): do_verify_charstarts controls whether to + call verify_charstarts. + Fix one-off when checking for the last line. + + * xterm.c (note_mouse_highlight): Reject out-of-range pos value + before it causes an error. + + * dispnew.c (verify_charstarts): Count right for continued lines. + (direct_output_for_insert): Add charstarts entry after the new char. + Use the right point value for the inserted character. + + * xdisp.c (display_text_line): Always store in charstart + even if at endp. When clearing charstart, do the whole width. + + * dispnew.c (scroll_frame_lines): When updating charstarts, + treat all columns alike--don't zero out any. + Fix end tests of loops over i. + (adjust_window_charstarts): Fix typo. + + * xterm.c (fast_find_position): Always return coords within the window. + + * xdisp.c (redisplay): Call verify_charstarts. + + * dispnew.c (verify_charstarts): New function. + + * xdisp.c (redisplay): Don't call adjust_window_charstarts + if on last text line of window. + + * xterm.c (note_mouse_highlight): Handle disable_mouse_highlight. + +1994-04-01 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * buffer.c (list_buffers_1): Set buffer contents, then mode. + +1994-04-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * dispnew.c (scroll_frame_lines): Fix previous changes. + +1994-04-01 Frederic Pierresteguy (fp@hal.gnu.ai.mit.edu) + + * xterm.c (x_wm_set_size_hint): Add USE_X_TOOLKIT conditional and call + XtGetValues to get the width and the height of the Emacs frame. + + * xdisp.c (update_menu_bar): Pass 0 to set_frame_menubar. + + * widget.c (EmacsFrameSetCharSize): Clean up code. + Replace XtVaSetValues by XtSetValues. + +1994-04-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (construct_menu_click, construct_mouse_click): + Use XSET when setting result->x and result->y. + + * xmenu.c (xmenu_show): Undo part of March 11 change: + Do call lw_destroy_all_widgets at the end. + + * dispnew.c (scroll_frame_lines): Typo in previous change. + Arg POS_ADJUST replaced with arg NEWPOS. + * xdisp.c (try_window_id): Pass new arg to scroll_frame_lines. + + * xdisp.c (redisplay): In previous change, handle case where + no newline follows. + + * xterm.c (note_mouse_highlight): Use the value from sort_overlays. + Make the window's buffer current temporarily. + window_end_pos is relative to Z, not ZV. + +1994-03-31 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * dispnew.c (adjust_window_charstarts): New function. + (direct_output_for_insert): Call it. + (make_frame_glyphs): If EMPTY, don't leave junk in ->total_charstarts. + + * xdisp.c (redisplay): Call adjust_window_charstarts + to update the charstarts of following lines. + +1994-03-31 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * callproc.c (child_setup): Check out==err when relocating fds. + +1994-03-31 Frederic Pierresteguy (fp@hal.gnu.ai.mit.edu) + + * xfns.c (x_window) [USE_X_TOOLKIT]: When doing geometry management, + don't compute the size of the menubar if there is no menubar. + +1994-03-31 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (XTread_socket, MotionNotify and LeaveNotify cases): + If not in any frame, call clear_mouse_face. + +1994-03-31 Frederic Pierresteguy (fp@geech.gnu.ai.mit.edu) + + * xterm.h: Define HAVE_X11R4 if AIX3_2 is defined. + + * xfns.c (x_window) [USE_X_TOOLKIT]: New args window_prompting and + minibuffer_only. + Don't pass top_pos and left_pos to XtCreatePopupShell. + Call initialize_frame_menubar before creating the Emacs frame if it is + not the minibuffer. Call XtManageChild for the menubar widget if any. + Compute some geometry management. + (Fx_create_frame): Pass window_prompting and minibuffer_only to + x_window. + Don't call x_wm_set_size_hint. + Don't call initialize_frame_menubar. + + * xmenu.c (set_frame_menubar): New arg, first_time. + Don't update the menubar the first time it is created via x_window. + (initialize_frame_menubar): Pass 1 to set_frame_menubar. + + * widget.c (set_frame_size): Dont compute any geometry management. + +1994-03-31 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (x_term_init): Set frame_up_to_date_hook. + (XTframe_up_to_date): New function. + * termhooks.h (frame_up_to_date_hook): Declared. + * term.c (frame_up_to_date_hook): Defined. + * xdisp.c (redisplay): Call frame_up_to_date_hook. + +1994-03-30 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * scroll.c (do_scrolling): Handle charstarts like glyphs. + + * dispnew.c (scroll_frame_lines): Handle charstarts like glyphs. + (direct_output_for_insert): Likewise. + (preserve_other_columns): Likewise. + + * systty.h (INCLUDED_FCNTL): Define, if include fcntl.h. + * xterm.c [INCLUDED_FCNTL]: Don't include fcntl.h again. + +1994-03-30 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * minibuf.c (Fminibuffer_prompt, Fminibuffer_prompt_width): New funcs. + +1994-03-29 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * indent.c (Fcompute_motion): Doc fix. + (Fcompute_motion): Don't use XFASTINT on possibly-negative coords. + +1994-03-29 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * dispnew.c (update_line): Update charstarts like glyphs. + +1994-03-29 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * systime.h (EMACS_TIME_NEG_P): Cast to signed. + +1994-03-29 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (XTupdate_begin): Turn off mouse face display, and defer it. + (XTupdate_end): Undefer. + (mouse_face_defer): New variable. + (mouse_face_mouse_frame, mouse_face_mouse_x, mouse_face_mouse_y): + New variables. + + * xfaces.c (compute_char_face): New arg MOUSE. + (Qmouse_face): New variable. + (syms_of_xfaces): Initialize Qmouse_face. + * xterm.c (dumpglyphs): Handle HL = 3 by using mouse_face_face_id. + (note_mouse_movement): Check for mouse face. + (show_mouse_face, fast_find_position): New functions. + (clear_mouse_face): New functions. + (mouse_face_beg, mouse_face_end, mouse_face_face_id): New variables. + (mouse_face_window): New variable. + (syms_of_xterm): Init and staticpro it. + + * xdisp.c (display_text_line): Pass new arg to compute_char_face. + Fill in charstarts array. + (display_string): Clear part of charstarts array. + +1994-03-29 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * window.c (Fwindow_width): Delete unnecessary variable declarations. + + * indent.c (Fcompute_motion): Typecheck all arguments. + +1994-03-29 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xdisp.c (display_text_line): Fill in charstart values. + + * dispextern.h (struct frame_glyphs): New fields charstarts + and total_charstarts. + * dispnew.c (make_frame_glyphs): + Initialize charstarts, total_charstarts. + (free_frame_glyphs): Free those fields. + +1994-03-28 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * xdisp.c (display_text_line): Handle selective display at window edge. + + * dired.c (file_name_completion): Don't step on dirname. + + * xterm.c (x_find_modifier_meanings): Skip zero entries. + +1994-03-28 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * dired.c (file_name_completion): Protect things from GC. + + * buffer.c (verify_overlay_modification): + Copy TAIL before a hook, in case the hook recenters the overlay lists. + + * s/dgux.h (LIBS_SYSTEM): Commented out. + +1994-03-27 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * fileio.c (Vinhibit_file_name_handlers): New var. + (syms_of_fileio): Set up Lisp var. + (Ffind_file_name_handler): Obey the variable. + + * minibuf.c (Vcompletion_regexp_list): New var. + (syms_of_minibuf): Set up Lisp var. + (Ftry_completion, Fall_completions): + Limit possible completions to strings matching those regexps. + + * search.c (Freplace_match): Doc fix. + +1994-03-26 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * minibuf.c (read_minibuf): Return val via unbind_to. + +1994-03-25 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * commands.h (this_command, last_command): Declared. + + * minibuf.c (Fminibuffer_complete): Scroll the completion window + in some cases. + + * print.c (debug_print): New function. + * .gdbinit (pr): Use debug_print. + +1994-03-25 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * frame.c (Fframe_first_window): New function. + +1994-03-24 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * editfns.c (Fformat): Validate number and type of arguments. + + * xmenu.c (xmenu_show): Enable asynchronous events. + + * keymap.c (Fwhere_is_internal): Skip duplicate keybindings. + + * xfns.c (x_report_frame_params): Sample visibility. + (x_get_arg): Use downcased string in compare. + + * process.c (status_notify): Use assignment, not initialization. + * textprop.c (add_properties, remove_properties): Ditto. + * window.c (unshow_buffer, window_loop, Fdisplay_buffer): Ditto. + * xdisp.c (x_consider_frame_title, decode_mode_spec): Ditto. + * xfns.c (x_set_frame_parameters, x_get_arg, x_window, + Fx_create_frame, Fx_create_frame): Ditto. + * xselect.c (x_get_local_selection, x_handle_selection_request): Ditto. + * xterm.c (x_window_to_scroll_bar, x_new_font): Ditto. + +1994-03-24 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu) + + * xfns.c (Fx_create_frame): Add USE_X_TOOLKIT conditional around the + call to initialize_frame_menubar. + +1994-03-23 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * intervals.c (verify_interval_modification): For insertion in + middle of an interval, use the same criterion as between intervals + for whether read-only forbids it. + +1994-03-23 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * alloc.c (make_event_array): Use assignment, not initialization. + * buffer.c (sort_overlays, Fmake_overlay): Ditto. + * callint.c (check_mark, Fcall_interactively): Ditto. + * callproc.c (call_process_cleanup, getenv_internal): Ditto. + * cmds.c (internal_self_insert): Ditto. + * data.c (store_symval_forwarding, Fsymbol_value): Ditto. + * fileio.c (Finsert_file_contents): Ditto. + * filelock.c (lock_file): Ditto. + * frame.c (next_frame, prev_frame, other_visible_frames, + Fdelete_frame): Ditto. + * intervals.c (adjust_intervals_for_insertion, + merge_properties_sticky, delete_interval): Ditto. + * keymap.c (access_keymap, store_in_keymap, Fcopy_keymap, + Fdefine_key, Faccessible_keymaps, Fwhere_is_internal): Ditto. + * lread.c (read_filtered_event, intern): Ditto. + * minibuf.c (read_minibuf): Ditto. + * msdos.c (run_msdos_command): Ditto. + + * sysdep.c (reset_sys_modes): Turn off O_NDELAY. + + * window.c (Fscroll_up, Fscroll_down, Fscroll_other_window): Doc fix. + + * frame.c (do_switch_frame): Common code for Fselect_frame and + handle_switch_frame. + + * xfns.c (x_get_focus_frame): New function. + +1994-03-23 Frederic Pierresteguy (fp@geech.gnu.ai.mit.edu) + + * xmenu.c (update_frame_menubar): Function renamed from + update_one_frame_psheets. + (initialize_frame_menubar): New function. + (set_frame_menubar): Call menu_bar_items when items is NIL. + + * xfns.c (Fx_create_frame): Call initialize_frame_menubar. + +1994-03-23 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * buffer.c (reset_buffer): Init auto_save_failure_time slot. + +1994-03-22 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keymap.c: (where_is_string, Fwhere_is): Deleted. + (syms_of_keymap): Corresponding changes. + +1994-03-22 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * keymap.c (Fdefine_key): Check for non-events in keyvector. + + * minibuf.c (read_minibuf): Don't redirect focus unless minibuf is + on another frame. + + * lread.c (read1): Check for invalid modifier bits in a string. + (unreadchar): Don't back up the pointer when unreading EOF. + +1994-03-22 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * callproc.c (Fcall_process): Make sure to close descriptors. + (call_process_cleanup): Always close descriptor. + +1994-03-22 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu) + + * widget.c (set_frame_size): Put #if 0 around a lot of useless code. + Compute explicitely the geometry of the toplevel widget. + Call XtSetValues not XtVaSetValues. + +1994-03-22 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * emacs.c (__do_global_ctors, __do_global_ctors_aux) + (__do_global_dtors): Don't define if GCC_CTORS_IN_LIBC. + (__CTOR_LIST__, __DTOR_LIST__): Likewise. + +1994-03-21 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (init_keyboard): Don't handle SIGINT if using X. + +1994-03-21 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * keyboard.c (add_command_key): Use assignment, not initialization. + (command_loop_1, read_char, kbd_buffer_store_event, + kbd_buffer_get_event, make_lispy_event, make_lispy_movement, + apply_modifiers_uncached, parse_modifiers, apply_modifiers, + reorder_modifiers, read_key_sequence): Ditto. + +1994-03-21 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * data.c (Qwholenump): New variable. + (syms_of_data): Set and gcpro Qwholenump. + * lisp.h (Qwholenump): Declared. + (CHECK_NATNUM): Use Qwholenump. + +1994-03-21 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * keymap.c (Fcopy_keymap): Account for menus and equiv-key cache. + (Fkeymapp): Doc fix. + +1994-03-21 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * data.c (Fstring_to_number): Doc fix. + +1994-03-20 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * data.c (Fmake_local_variable): Void variables stay void. + +1994-03-20 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * alloca.c, alloca.s, gmalloc.c: Make them symlinks again. + + * fns.c (Fy_or_n_p, Fyes_or_no_p): Call Fx_popup_dialog the new way. + (Fyes_or_no_p): Always display just one dialog box + whether or not USE_X_TOOLKIT. + +1994-03-19 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xmenu.c (xdialog_show): Delete args x, y. + (Fx_popup_dialog): Don't pass those args; don't compute them. + Second arg is now just one pane. Lots of simplification. + Always start by decoding POSITION arg to get a frame. + [! USE_X_TOOLKIT]: Put the menu in middle of that frame. + + * s/freebsd.h (HAVE_TERMIOS, NO_TERMIO): Defined. + + * Makefile.in.in (emacs): rm emacs before the ln. + (tagsfiles): Accept capital letters. + + * process.c (wait_reading_process_input, both versions): Don't call + redisplay_preserve_echo_area unless do_display. + + * emacs.c (syms_of_emacs): Don't initialize Vinstallation_name + and Vinstallation_directory. + + * fns.c (Fyes_or_no_p) [USE_X_TOOLKIT]: Display just one menu. + + * xmenu.c (Fx_popup_dialog, Fx_popup_menu): Require 2 args. + (Fx_popup_dialog): Don't fail to set X, Y from POSITION. + (xdialog_show): Call lw_modify_all_widgets properly. + Generate dialog's name at run time to specify number of buttons. + Report error if too many buttons to handle or if multiple panes. + +1994-03-18 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * lisp.h (MAKE_GLYPH, GLYPH_CHAR, GLYPH_FACE): Handle termcap + frames as well as X. + (FAST_MAKE_GLYPH, FAST_GLYPH_CHAR, FAST_GLYPH_FACE): New macros. + * xdisp.c (fix_glyph): Handle termcap frames as well as X. + (display_text_line, copy_part_of_rope, display_mode_line): Ditto. + * dispnew.c (direct_output_for_insert): Ditto. + * xterm.c (dumpglyphs): Use the fast macros. + +1994-03-18 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xmenu.c (list_of_items): Arg to push_menu_item was missing. + +1994-03-18 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makefile.in.in (LIBXT): Add -lXext. + +1994-03-18 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * s/netbsd.h (LD_SWITCH_SYSTEM): Undo previous change. + +1994-03-17 Jim Blandy (jimb@totoro.bio.indiana.edu) + + * indent.c (compute_motion): Doc fixes. + +1994-03-17 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makefile.in.in (X_WINDOWS_SUPPORT): New macro. + (lisp): Include X_WINDOWS_SUPPORT. Also add version.el; it is no + longer changed by building. + +1994-03-17 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * process.c (create_process): Skip the ioctl if fd is -1. + + * lread.c (openp, Fload): GCPRO some things. + * callproc.c (Fcall_process): Ditto. + * process.c (Fstart_process): Ditto. + + * s/netbsd.h (LD_SWITCH_SYSTEM, HAVE_WAIT_HEADER): Define these. + +1994-03-16 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * data.c (Fchar_or_string_p, Fintegerp, Fnatnump): Doc fix. + + * minibuf.c (read_minibuf): Disallow trailing junk. + +1994-03-16 Morten Welinder (terra@diku.dk) + + * fileio.c (Ffile_modes) [MSDOS]: set exec-bit based on file suffix. + * s/msdos.h: use bcopy when moving gap. + +1994-03-16 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * fns.c (Frandom): Eliminate bias in random number generator. + + * floatfns.c (FLOAT_TO_INT, FLOAT_TO_INT2, range_error2): New macros. + (ceiling, floor, round, truncate): Use them. + +1994-03-15 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * xdisp.c (redisplay): Don't consider minibuffer name for frame title. + (update_menu_bar): Delete unused second argument. Callers changed. + + * fileio.c (Frename_file, Fcopy_file, Fadd_name_to_file, + Fmake_symbolic_link): Fix typo in previous change. + + * s/netbsd.h (LOCALTIME_CACHE): Define this symbol. + +1994-03-15 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * fileio.c (Frename_file): Use RETURN_UNGCPRO when run handler. + (Fcopy_file, Fadd_name_to_file, Fmake_symbolic_link): Likewise. + +1994-03-15 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * xdisp.c (message1): Call message2 instead of duplicating code. + +1994-03-14 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * floatfns.c (Flogb): Check for 0.0. Emulate logb if needed. + + * xterm.c (x_scroll_bar_expose): Don't make the right border thicker. + * xterm.h (VERTICAL_SCROLL_BAR_RIGHT_BORDER): Change from 3 to 2. + + * frame.c (terminal-frame) [! MULTI_FRAME]: Create this variable. + + * minibuf.c (read_minibuf): Make minibuffer frame visible when + minibuffer activated. + + * frame.c (Fhandle_switch_frame): Ignore switch to dead frame. + + * fileio.c (Fread_file_name): Delete docstring of second version. + * frame.c (framep, selected-frame, frame-char-height, frame-char-width, + frame-pixel-height, frame-pixel-width, set-frame-height, + set-frame-width, set-frame-size): Ditto. + + * buffer.c (buffer-display-table, buffer-undo-list): Ditto. + + * xdisp.c (redisplay_window): Avoid dividing negative numbers. + * window.c (window_scroll, Fmove_to_window_line): Ditto. + * search.c (search_buffer): Avoid boolean/integer confusion. + + * dispnew.c (Fredraw_frame) [! MULTI_FRAME]: Make noninteractive. + +1994-03-14 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xmenu.c (Fx_popup_dialog, Fx_popup_menu): Handle case where + mouse_position_hook doesn't store anything. + +1994-03-14 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu) + + * widget.c (EmacsFrameSetCharSize): Set the values of left_pos and + top_pos to the values of the toplevel widget coordinates. + +1994-03-13 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xmenu.c (Fx_popup_dialog) [! USE_X_TOOLKIT]: Call Fx_popup_menu. + + * indent.c (Fvertical_motion): New optional arg WINDOW. + * window.c (Fdelete_other_windows): Pass new arg to Fvertical_motion. + (window_scroll, Frecenter, Fmove_to_window_line): Likewise. + + * fileio.c (Finsert_file_contents): Don't let same_at_end be less + than same_at_start. + +1994-03-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * puresize.h (PURESIZE): Reduce to 230000. + +1994-03-11 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * floatfns.c (Fexpt): Delete extraneous `for' statement. + + * process.c (get_process): Allow arg to be a buffer object. + + * xdisp.c (x_consider_frame_title): New function, extracted from + display_mode_line. + (redisplay): Update frame title on iconified frames. + +1994-03-11 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu) + + * xmenu.c (xdialog_show): New function to handle the display of dialog + boxes. + (Fx_popup_dialog): New function. + (dialog_selection_callback): New function. + (xmenu_show) [USE_X_TOOLKIT]: Don't call lw_destroy_all_widgets at the + end. + Do the work of construct_mouse_click in the ButtonRelease case. + + * Makefile.in (LIBXT): Add -lXext to the list. + + * widget.c (EmacsFrameSetCharSize): Call XawPanedSetRefigureMode. + Call XtSetValues not XtVaSetValues. + + * fns.c (Fyes_or_no_p): Call Fx_popup_dialog instead of Fx_popup_menu. + (Fy_or_n_p): Likewise. + +1994-03-10 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * filelock.c (lock_superlock): Synchronize NFS cache. + + * search.c (Fre_search_forward, Fre_search_backward): Doc fix. + +1994-03-10 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * indent.c (compute_motion): Initialize prev_hpos. + + * keyboard.c (command_loop_1): On entry, set this_command + after running Vpost_command_hook. + + * puresize.h (PURESIZE): Increment to 240000. + + * xmenu.c (Fx_popup_menu): If POSITION is nil, + don't require an open X connection. + (single_keymap_panes, keymap_panes, menu_item_enabled_p): + New arg NOTREAL. + (Fx_popup_menu): Pass new arg (1 if POSITION is nil). + (menu_item_enabled_p): If NOTREAL, always return t. + + * xmenu.c (single_keymap_panes) [!USE_X_TOOLKIT]: + Append > to item_string if submenu. + +1994-03-09 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xmenu.c [USE_X_TOOLKIT]: Display submenus in Xt style. + (menu_items): Record where submenus start and end. + (menu_items_submenu_depth): New variable. + (init_menu_items): Init it. + (push_submenu_start, push_submenu_end): New functions. + (grow_menu_items): New function. + (push_menu_pane, push_menu_item): Use it. + (push_menu_pane): Increment menu_items_n_panes only if depth is 0. + (single_keymap_panes) [USE_X_TOOLKIT]: Record submenus in menu_items. + (xmenu_show) [USE_X_TOOLKIT]: Give submenus to toolkit. + + * xdisp.c (display_mode_line): Highlight partial-width mode lines + for a non-termcal frame. + + * lisp.h (GLYPH_MODE_LINE_FACE): New macro. + + * callproc.c: Don't kill remaining processes if child exits. + (call_process_exited): New variable. + (Fcall_process): Set it. + (call_process_cleanup): Test it. + +1994-03-09 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * window.c (Fselect_window): Undo previous minibuffer patch. + * callint.c (Fcall_interactively): Don't select an active minibuffer. + +1994-03-09 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * window.c (window_loop): Delete MULTI_FRAME + conditional within the loop, spuriously added in prev change. + Don't ignore invisible or iconified frames for GET_BUFFER_WINDOW; + instead, let Fnext_window skip them if appropriate. + +1994-03-08 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * window.c (Fselect_window): Don't select an inactive minibuffer. + +1994-03-08 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * window.c (Fdisplay_buffer): If pop_up_frames != 0, + consider just visible frames when looking for existing window. + + * undo.c (syms_of_undo): staticpro pending_boundary. + +1994-03-08 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * process.c (send_process) [_PC_MAX_CANON]: Also test #ifdef + HAVE_FPATHCONF before trying to use fpathconf. + * config.h.in: Add #undef HAVE_FPATHCONF. + + * term.c (term_get_fkeys_data): Variable removed. + (term_get_fkeys_define_1, term_get_fkeys_define): Functions removed. + (term_get_fkeys_address): New variable, to pass arg through + condition-case. + (term_get_fkeys): Set that to ADDRESS; just do condition-case + around call to term_get_fkeys_1, ignoring all errors. + (term_get_fkeys_1): New function, containing body of term_get_fkeys. + Don't use term_get_fkeys_define_1; call Fdefine_key directly. + +1994-03-08 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * window.c (Fprevious_window, Fnext_window): ALL_FRAMES = visible + means consider only visible frames. + (window_loop): Likewise for FRAMES. + (Fget_buffer_window, Fget_largest_window, Fget_lru_window): Doc fix. + (Fdelete_windows_on): Doc fix. + + * frame.c (next_frame, prev_frame): If MINIBUF is `visible', + consider only visible frames. + (Fnext_frame, Fprevious_frame): Doc fix. + (syms_of_frame): Staticpro Qvisible. + * lisp.h (Qvisible): Declared. + +1994-03-07 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * indent.c (Fcompute_motion): New function. + + * window.c (Fwindow_width): Doc fix. + +1994-03-07 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * doprnt.c (doprnt): Do the right thing for negative size spec. + + * minibuf.c (temp_echo_area_glyphs): Use quit_char, not C-g. + (Fminibuffer_complete, Fminibuffer_complete_word): Doc fix. + (get_minibuffer): Make name buffer large enough. + + * window.c (Fscroll_other_window): Doc fix. + +1994-03-06 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * alloc.c (mark_object): Add no-op cast. + + * eval.c (error): Use doprnt. Make buffer larger as necessary. + + * casefiddle.c (operate_on_word): Don't move point; store in *NEWPOINT. + (Fupcase_word, Fdowncase_word, Fcapitalize_word): + Set point after changing case. Rename opoint to beg. + + * undo.c (pending_boundary): New variable. + (syms_of_undo): Initialize it. + (Fundo_boundary): Use pending_boundary. + (record_insert, record_delete, record_property_change): + Set pending_boundary. + +1994-03-05 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * vmsproc.c: Include config.h, lisp.h, buffer.h, process.h, commands.h, + errno.h and file.h. + (write_to_vms_process): Change =- to -=. + (create_process): Set status field instead of obsolete flags field. + (child_sig): Likewise. + + * emacs.c (shut_down_emacs): Set Vrun_hooks to nil. + * minibuf.c (read_minibuf): Don't call Vrun_hooks if it is nil. + * keyboard.c (command_loop_1, read_key_sequence, Fcommand_execute): + Don't call Vrun_hooks if it is nil. + * editfns.c (save_excursion_restore): Don't call Vrun_hooks if nil. + * buffer.c (Fkill_buffer, Fkill_all_local_variables): + Don't call Vrun_hooks if it is nil. + + * fileio.c (Fdo_auto_save): Doc fix. + + * lisp.h (ARRAY_MARK_FLAG): Define here. + * alloc.c (ARRAY_MARK_FLAG): Not here. + +1994-03-04 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * keyboard.c (command_loop_1): Fix misplaced assignment of + last_point_position. + +1994-03-04 Paul Eggert (eggert@twinsun.com) + + * data.c (isnan): New macro. + (float_arith_driver): min and max yield NaN if any argument is a NaN. + +1994-03-04 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu) + + * xmenu.c (update_one_frame_psheets): Call EmacsFrameSetCharSize to + force the paned widget to resize to the right value. + (xmenu_show): No need to check a second time whether the mouse has + moved to another menu bar item. This slows down execution. + + * widget.c (EmacsFrameSetCharSize): Don't call XtMakeResizeRequest. Use + XtVaSetValues for geometry management. + +1994-03-04 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * xmenu.c [USE_X_TOOLKIT] (xmenu_show): Pass display to + XtWindowToWidget. + +1994-03-03 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * search.c (skip_chars): Treat `-' as alias for space, if syntaxp. + + * fileio.c (Finsert_file_contents): Pass del_range_1 two ends, + not a length. + +1994-03-03 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * process.h (chan_process): Don't specify size. + +1994-03-03 Karl Heuer (kwzh@mole.gnu.ai.mit.edu) + + * fileio.c (Fread_file_name): Do the right thing when + insert-default-directory is nil. + Allow for doubled dollar signs in dir when computing pos. + + * commands.h: New variable last_point_position. + * keyboard.c (command_loop_1): Set it to the value of point. + * undo.c (record_delete): Save this value in the undo record, + rather than the current value of point.) + + * buffer.c (Fget_file_buffer): Doc fix. + + * s/aix3-2.h (C_SWITCH_SYSTEM): Increase maxmem when using IBM's + compiler. + +1994-03-02 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * process.c (chan_process, Vprocess_alist): No longer static. + * process.h (chan_process, Vprocess_alist): Declared. + + * puresize.h (PURESIZE) [MULTI_FRAME]: Incremented to 230000. + + * minibuf.c (Fdisplay_completion_list): Restore original buffer + before running completion-setup-hook. + + * frame.c (Fdelete_frame): Don't initialize a Lisp_Object. + Clean up line breaks. + + * process.c: Include unistd.h. + (pty_max_bytes): New variable. + (send_process): Send an eof after each pty_max_bytes bytes. + + * keyboard.c (menu_bar_items): When moving an item to the end, + shift all the following ones forward one slot. + +1994-03-02 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * xfns.c (Fx_list_fonts): Avoid confused increment of info. + + * syntax.c (Fforward_comment): Do the right thing at eob. + +1994-03-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (menu_bar_items): Accept old vector as arg. + Return a vector. + (menu_bar_one_keymap, menu_bar_item): Associated changes. + (make_lispy_event): Use FRAME_MENU_BAR_LINES as vector. + * frame.c (make_frame): Init menu_bar_items field to 0. + * xdisp.c (update_menu_bar): Change call to menu_bar_items. + (display_menu_bar): Use FRAME_MENU_BAR_LINES as vector. + * xmenu.c (map_event_to_object, set_frame_menubar): + Use FRAME_MENU_BAR_LINES as vector. + +1994-03-01 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * s/aix3-2.h: Use -g with the native compiler. + * s/aix3-2-5.h: New file. Use -O with the native compiler. + +1994-03-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * lisp.h (struct handler): New field chosen_clause. + * eval.c (Fsignal): Record the clause in chosen_clause. + (Fcondition_case, internal_condition_case): Look there. + (internal_condition_case_1): Look there. + + * fileio.c (Finsert_file_contents): If undo_list was t, leave it t. + + * alloc.c (memory_signal_data): No longer static. + (syms_of_alloc): Stick Qerror onto memory_signal_data. + * lisp.h (memory_signal_data): Declare it. + * eval.c (Fsignal): If DATA is memory_signal_data, don't add to it. + +1994-02-28 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * alloc.c (memory_full): Use new variable memory_signal_data with + precomputed value instead of trying to build it after memory is + already exhausted. + +1994-02-28 Frederic Pierresteguy (F.Pierresteguy@frcl.bull.fr) + + * xmenu.c (xmenu_show): Test XtWindowToWidget before inserting into + the event_queue. + + * xterm.c (XTread_socket): For case ClientMessage and + Xatom_wm_delete_window, use x_any_window_to_frame. + +1994-02-26 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/sol2-3.h (LD_SWITCH_SYSTEM): New definitions, with #undef. + + * insdel.c (del_range_1): New function. + (del_range): Use it. + * fileio.c (Finsert_file_contents): Use del_range_1. + +1994-02-26 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * keyboard.c (Fsuspend_emacs): New variable cannot-suspend forces + a subshell even if the system seems to support job control. + * sysdep.c (sys_subshell): New function, split from sys_suspend. + +1994-02-25 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * window.c (Fset_window_configuration): Allow for menu-bar-lines + to have changed since the configuration was created. + +1994-02-25 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (Vsystem_key_alist): Renamed from Vvendor_key_alist. + (syms_of_keyboard): Rename Lisp var to system-key-alist. + +1994-02-25 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * buffer.h (OVERLAY_POSITION): Don't check which buffer it points to. + + * lisp.h: Delete extra backslash on last line of macro. + + * xdisp.c (display_text_line): Allow for invisible overlays in + next_invisible lookahead. + * indent.c (compute_motion): Likewise. + +1994-02-25 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu) + + * widget.c (EmacsFrameSetCharSize): Set coordinates values to the + toplevel widget. + + * xterm.c (XTread_socket): For case ConfigureNotify, call + x_any_window_to_frame. + [USE_X_TOOLKIT]: Call XTranslateCoordinates for case ConfigureNotify + when send_event is 0 and when the event is relative to toplevel widget. + + * widget.c (EmacsFrameSetCharSize): Call check_frame_size and update + vertical_scroll_bar_extra. + Call SET_FRAME_GARBAGED. + +1994-02-24 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * lread.c (Fload): Cast the args to stat. + +1994-02-24 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * xdisp.c (try_window): Add #ifdef USE_TEXT_PROPERTIES around call + to Fget_text_property. + + * textprop.c (Fget_char_property): New function. + * buffer.c (sort_overlays): Allow for null window. + * xdisp.c (try_window, display_text_line): Use Fget_char_property + to test for invisibility. + * indent.c (compute_motion, vmotion): Likewise. + * dispnew.c (direct_output_forward_char): Likewise. + +1994-02-24 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu) + + * xfns.c (x_window): Call XChangeWindowAttributes with the standard + event set to make all these events reach the Emacs frame. + +1994-02-24 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xmenu.c (Fx_popup_menu): Allow t as position, meaning use mouse pos. + + * fns.c (Fy_or_n_p): Use a popup menu if reached via mouse command. + (Fyes_or_no_p): Likewise. + + * unexelf.c (ELF_BSS_SECTION_NAME): New macro (config.h may override). + (unexec): Use it. + +1994-02-23 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * buffer.c (Fkill_buffer): Call the Vkill_buffer_query_functions. + (syms_of_buffer): Make Lisp var for kill-buffer-query-functions. + +1994-02-22 Karl Heuer (kwzh@geech.gnu.ai.mit.edu) + + * lisp.h: New variable Vdoc_directory. + * doc.c (get_doc_string, Snarf_documentation): Use it. + * callproc.c (syms_of_callproc, init_callproc_1): Initialize it. + * paths.h.in: Define PATH_DOC for default doc-directory. + +1994-02-22 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (make_lispy_movement, make_lispy_event): + In non-scrollbar mouse case, return coords in pixel units. + + * frame.c (Fmouse_position): Convert to glyph units. + + * xterm.c (construct_mouse_click): Don't convert to glyph units. + (XTmouse_position): Don't convert to glyph units. + * msdos.c (mouse_get_pos): Don't convert to glyph units. + + * fileio.c (Finsert_file_contents): If REPLACE, always do lseek. + Exit main loop if INSERTED reaches TOTAL. + +1994-02-22 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (XTmouse_position): Use x_any_window_to_frame. + +1994-02-22 Karl Heuer (kwzh@mole.gnu.ai.mit.edu) + + * emacs.c: Move extern declarations to top of file. + +1994-02-21 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (make_lispy_event): For menu bar event in USE_X_TOOLKIT + case, convert x position to glyphs after map_event_to_object. + Call window_from_coordinates later on. + + * xmenu.c (menu_item_equiv_key): Cached equiv-key data is a sublist. + * keymap.c (get_keyelt): Cached equiv-key data is now a sublist. + + * xterm.c (x_had_errors_p): New function. + (construct_menu_click): Move function after pixel_to_glyph_coords. + + * xmenu.c: Most of file rewritten. + (menu_items, menu_items_*): New variables. + (MENU_ITEMS_*): New macros. + (init_menu_items, discard_menu_items, push_menu_pane, push_menu_item) + (finish_menu_items): New functions. + (menu_item_enabled_p): New function. + (keymap_panes, single_keymap_panes): Major rewrite; most args changed. + (list_of_panes, list_of_items): Major rewrite; most args changed. + (Fx_popup_menu): Major rewrite. Now independent of display mechanism. + No more conditionals here. + (set_menu_items, free_menu_items): Functions deleted. + (xmenu_show): Both versions rewritten to work from menu_items + and to do all the conditionalized things that were in Fx_popup_menu. + (unread_menu_bar_button, other_menu_bar_item_p): New functions. + (check_mouse_other_menu_bar): New function. + + * xterm.c [!USE_X_TOOLKIT] (x_any_window_to_frame): + Define as x_window_to_frame. + +1994-02-20 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * unexsunos4.c: Move config.h after system includes. + + * syswait.h [BSD]: #undef WCOREDUMP before defining it. + +1994-02-19 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * frame.c (Fframe_visible_p): Do FRAME_SAMPLE_VISIBILITY first. + + * xterm.c (XTread_socket--cases KeyPress, EnterNotify, LeaveNotify) + (cases FocusIn, FocusOut): Use x_any_window_to_frame. + + * xfns.c (x_window_to_frame): Add parens for clarity. + + * xmenu.c: Find and display keyboard equivalents of menu items. + (menu_item_equiv_key): New function. + (single_keymap_panes): Call it. Properly skip help-string if any. + Rename item2 to item_string. + GCPRO some things. + (menu_item_equiv_key): Use either VECTORP or STRINGP, not both. + + * keymap.c (get_keyelt): Discard keyboard equivalents stored in a + menu keymap element. + +1994-02-18 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu) + + * widget.c (get_default_char_pixel_size): Clean up code. + Remove code inside #if 0 directive. + + * xmenu.c (popup_selection_callback): Clean up code. Remove code inside + #if 0 directive. + (popup_down_callback): Likewise. + +1994-02-18 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * fileio.c (restore_point_unwind): New function. + (Finsert_file_contents): In REPLACE case, set point and restore it. + + * gnu.h (gnu_bits): Use unsigned char. + + * bitmaps/*.xbm: Use unsigned char, not char. + + * window.c (unshow_buffer): Unconditionally set last_window_start. + +1994-02-17 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * window.c (Fdelete_other_windows): Don't call Frecenter; + do it by hand and avoid setting w->force_start. + + * xterm.c (dumpglyphs): Try various alternatives for foreground color + of a glyph with the cursor on it. + + * dosfns.c, msdos.c, widget.c: Use <...> for config.h. + + * fileio.c (Finsert_file_contents): New arg REPLACE. + New feature to replace buffer contents with file contents. + +1994-02-16 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * systty.h (EMACS_TTY_TABS_OK): Alternate definition if no TABDLY. + + * s/bsd4-2.h, s/dgux.h, s/rtu.h, s/umax.h (BSD_PGRPS): Defined. + * s/netbsd.h, s/bsd386.h (BSD_PGRPS): Add #undef. + * sysdep.c (init_sys_modes, reset_sys_modes): Test BSD_PGRPS. + (narrow_foreground_group, widen_foreground_group): Define if BSD_PGRPS. + + * sysdep.c (child_setup_tty): Use IUCLC, OLCUC, NLDLY only if defined. + + * emacs.c (main): Test BSD_PGRPS, not BSD. + + * s/netbsd.h (TAB3): Defined. + (NEED_ERRNO, NO_TERMIO, HAVE_TERMIOS, HAVE_UNION_WAIT): Defined. + + * sysdep.c (init_sys_modes): IEXTEN is in c_lflag, not c_iflag. + + * unexmips.c (unexec): Add cast to result of `sbrk'. + +1994-02-15 Chris Hanson (cph@klia.ai.mit.edu) + + * s/newsos5.h: Include usg5-4.h. + (LIBS_SYSTEM, LINKER, START_FILES, LIB_STANDARD): + Definitions moved here. + + * m/news-risc.h [NEWSOS5] (C_DEBUG_SWITCH, C_OPTIMIZE_SWITCH) + (LD_SWITCH_MACHINE): Definitions moved here. + + * m/mips.h: NEWSOS5 conditional deleted. + [NEWSOS5] (START_FILES, LIB_STANDARD, C_DEBUG_SWITCH) + (C_OPTIMIZE_SWITCH, LD_SWITCH_MACHINE): Definitions moved away. + +1994-02-15 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xfns.c (Fx_parse_geometry): Don't call check_x. + + * sysdep.c (sys_write): If any bytes were written, return how many. + + * xterm.c (XTread_socket): Do not assume that select returning + immediately with no events implies a hangup. + +1994-02-14 Karl Heuer (kwzh@geech.gnu.ai.mit.edu) + + * xterm.h (check_x): Declare it. + * xfns.c (check_x): Make it global. + (Fx_parse_geometry, Fx_list_fonts, Fx_close_current_connection): + call check_x. + + * xmenu.c (Fx_popup_menu): Likewise. + * xselect.c (Fx_own_selection_internal, Fx_get_selection_internal, + Fx_disown_selection_internal, Fx_rotate_cut_buffers_internal, + Fx_selection_exists_p, Fx_get_cut_buffer_internal, + Fx_store_cut_buffer_internal, Fx_selection_owner_p): Likewise. + + * indent.c (indented_beyond_p): New function. + (compute_motion, vmotion): Use it to treat blank lines specially + in selective display. + * xdisp.c (try_window_id, display_text_line): Likewise. + +1994-02-13 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * s/netbsd.h (BROKEN_START, TEXT_START): Don't define. + (HAVE_TEXT_START): Define this instead. + * sysdep.c (start_of_text): Don't define #ifdef HAVE_TEXT_START. + +1994-02-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xdisp.c (decode_mode_spec): Support %+. + + * keyboard.c (command_loop_1): + On entry, set last_command to this_command. + + * term.c (term_init): If no `se', use `me'; + if no `me' either, don't use standout mode at all. + +1994-02-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile.in.in (${libsrc}make-docfile): Don't pass ../arch-lib + as target to submake. + +1994-02-11 Karl Heuer (kwzh@mole.gnu.ai.mit.edu) + + * sysdep.c [USG]: Fix conditional includes. + + * m/convex.h, m/ibmps2-aix.h, m/ibmrs6000.h, m/tekxd88.h, + s/386bsd.h, s/bsd386.h, s/dgux.h, s/irix3-3.h, s/linux.h, + s/netbsd.h, s/usg5-4.h: Delete HAVE_SETSID; configure checks for + that. + + * xrdb.c (gethomedir): Look at LOGNAME before USER. + + * editfns.c (Fuser_real_login_name): Doc fix. + +1994-02-11 Paul Eggert (eggert@twinsun.com) + + * editfns.c (init_editfns): Look at LOGNAME before USER. + * fileio.c (Fsubstitute_in_file_name): Remove long-dead code + that looked at USER before LOGNAME. + +1994-02-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * buffer.c (syms_of_buffer): Doc fix. + + * xdisp.c (decode_mode_spec): Implement `P'. + +1994-02-11 Charles Hannum (mycroft@duality.gnu.ai.mit.edu) + + * s/netbsd.h (KERNEL_FILE, LDAV_SYMBOL): Undefine and leave them + that way. + (LIBS_TERMCAP): Define. Native libtermcap is better than the Emacs + version, and knows the correct path. + (N_PAGSIZ, N_BSSADDR, N_TRELOFF): Don't redefine if they already + exist (i.e. under NetBSD >0.9). + +1994-02-11 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * s/netbsd.h (SYSV_SYSTEM_DIR): Define. + (BROKEN_START, TEXT_START, START_FILES, UNEXEC, RUN_TIME_REMAP): + Define to use unexsunos4. + (N_PAGSIZ, N_BSSSADDR, N_TRELOFF): Define so unexsunos4.c compiles. + +1994-02-11 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu) + + * xfns.c (x_set_menu_bar_lines) [USE_X_TOOLKIT]: Dont Call + XtDestroyWidget but free_frame_menubar. + Undo previous changes. + * xterm.c (x_destroy_window) [USE_X_TOOLKIT]: Call free_frame_menubar. + * xmenu.c (free_frame_menubar) [USE_X_TOOLKIT]: New function to destroy + the X Widget instance of the menubar. + + * widget.c (EmacsFrameResize): Don't call XTranslateCoordinates. Code + removed. + + * xmenu.c (xmenu_show) [USE_X_TOOLKIT]: Return Qnil when val is null. + +1994-02-11 Karl Heuer (kwzh@mole.gnu.ai.mit.edu) + + * keyboard.c (Fexecute_extended_command): Copy this_command_keys + as a vector, not a string. + +1994-02-10 Karl Heuer (kwzh@mole.gnu.ai.mit.edu) + + * keyboard.c (syms_of_keyboard): Add a DEFVAR for command-hook-internal. + (command_loop_1): Use it for post-command-hook. + +1994-02-10 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * process.c (sys_siglist): Protect decl with #ifndef + SYS_SIGLIST_DECLARED. + * config.h.in: Add #undef SYS_SIGLIST_DECLARED. + +1994-02-10 Karl Heuer (kwzh@mole.gnu.ai.mit.edu) + + * lread.c (read_filtered_event): Retry read_char after a buffer change. + * keyboard.c (read_char, read_char_minibuf_menu_prompt, + read_key_sequence): Likewise. + + * dispnew.c (buffer_posn_from_coords): Take hscroll into account. + * window.c (Fpos_visible_in_window_p): Likewise. + + * editfns.c (Fmessage): Copy the text to be displayed into a + malloc'd buffer. + +1994-02-10 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu) + + * xmenu.c (xmenu_show): Test again event.xmotion.x_root in the + MotionNotify case. + +1994-02-09 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * vmsdir.h: File renamed from dir.h. + * ndir.h, fileio.c: Use new name vmsdir.h. + +1994-02-09 Karl Heuer (kwzh@mole.gnu.ai.mit.edu) + + * alloc.c (Fgarbage_collect): Save and restore echo_area_glyphs_length. + * fileio.c (Fdo_auto_save): Likewise. + + * buffer.c (Fkill_all_local_variables): Run change-major-mode-hook. + + * xterm.c (x_display_cursor, process_expose_from_menu): Block input. + + * editfns.c (difftm): Simplify return expression. + + * m/news.h (CRT0_DUMMIES): Definition deleted. + + * alloc.c (mark_object): Fetch obj from *objptr at loop, not at + the gotos. + +1994-02-09 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu) + + * Implement a Motif behavior for the menubar. Now, if you move the + pointer on another menubar item while displaying the contents of a + selected menubar item, the current pulldown menu is closed and the new + one corresponding to the new pointed item is displayed. + * xmenu.c (xmenu_show) [USE_X_TOOLKIT]: Clean up code. + Handle the MotionNotify events in the XEvent loop. + +1994-02-08 Karl Heuer (kwzh@mole.gnu.ai.mit.edu) + + * xfaces.c (compute_char_face): Extract overlay-sorting code as a + separate function, which is now in buffer.c. + * buffer.c (sort_overlays): New function, extracted from xfaces.c. + +1994-02-08 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * print.c (print): If print_escapes_newlines, print '\f' as "\\f". + (syms_of_print): Update docstring. + +1994-02-08 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * process.c (Fprocess_kill_without_query): Doc fix. + +1994-02-07 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu) + + * xterm.c (x_make_frame_invisible): Add USE_X_TOOLKIT conditional. + +1994-02-06 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (x_set_window_size): New arg CHANGE_GRAVITY. + (x_new_font): Pass CHANGE_GRAVITY arg to x_set_window_size. + (x_wm_set_size_hint): New arg CHANGE_GRAVITY. + (x_set_offset, x_set_window_size): + Pass CHANGE_GRAVITY arg to x_set_window_size. + * xfns.c (x_set_internal_border_width, x_set_vertical_scroll_bars): + Pass CHANGE_GRAVITY arg to x_set_window_size. + (Fx_create_frame): Pass CHANGE_GRAVITY arg to x_wm_set_size_hint. + * frame.c (Fset_frame_height, Fset_frame_width, Fset_frame_size): + Pass CHANGE_GRAVITY arg to x_set_window_size. + + * frame.c (other_visible_frames): + New function; code taken from Fdelete_frame. + (Fdelete_frame): Use it. + (Fmake_frame_invisible): Use it. New arg FORCE. + * xfns.c (x_set_visibility): Pass new arg to Fmake_frame_invisible. + + * xdisp.c (fix_glyph): New function. + (display_text_line, display_string): Use fix_glyph. + + * xfaces.c (init_frame_faces): Clear FRAME_N_COMPUTED_FACES + and FRAME_SIZE_COMPUTED_FACES. + +1994-02-05 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xdisp.c (copy_rope): Function deleted. + (copy_part_of_rope): Merge the glyph's face using compute_glyph_face. + Take frame as additional arg. + (display_text_line): Use copy_part_of_rope always, not copy_rope. + Pass the frame as arg. + (display_string): Likewise. + + * xfaces.c (compute_glyph_face): New arg CURRENT_FACE + specifies face to merge with. + + * emacs.c (main) [AIX]: Don't handle signal 20, 21 or 22. + Call signal 24 by name (SIGXCPU). + + * eval.c (internal_condition_case_1): New function. + * lisp.h (internal_condition_case_1): Declared. + * keyboard.c (menu_bar_item): Use internal_condition_case_1. + (menu_bar_item_1): New function. + * xmenu.c (single_keymap_panes): Use internal_condition_case_1. + (single_keymap_panes_1): New function. + +1994-02-04 Karl Heuer (kwzh@mole.gnu.ai.mit.edu) + + * intervals.c (verify_interval_modification): When checking + read-only, allow for the case that stickiness might be t instead + of a list. + + * data.c (fmod): Implement it on systems where it's missing, using + drem if available. + +1994-02-04 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu) + + * xmenu.c (xmenu_show) [USE_X_TOOLKIT]: Remove the #if 0 directives + and reverse one to avoid the flickering of the menubar. + +1994-02-04 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keymap.c (Fwhere_is_internal): Take just one keymap arg. + (where_is_string): Pass Voverriding_local_map for that arg. + * doc.c (Fsubstitute_command_keys): Pass keymap as that arg + to Fwhere_is_internal. Init keymap from Voverriding_local_map. + +1994-02-03 Karl Heuer (kwzh@mole.gnu.ai.mit.edu) + + * intervals.c (merge_properties_sticky): Preserve original order + of properties. + +1994-02-03 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/hpux8.h (X_IO_BUG): Defined. + + * fileio.c (Fwrite_region): + If FILENAME has no handler, see if VISIT has one. + + * search.c (scan_buffer): New arg ALLOW_QUIT. + (find_next_newline): Pass new arg. + * xdisp.c (display_count_lines): Pass new arg to scan_buffer. + * syntax.c (find_defun_start): Pass new arg to scan_buffer. + * cmds.c (Fforward_line): Pass new arg to scan_buffer. + +1994-02-02 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (XTread_socket): Add X_IO_BUG conditional. + + * xdisp.c (display_menu_bar): Pass explicit max arg to display_string. + (display_string): New arg OBEY_WINDOW_WIDTH. All callers changed. + +1994-02-02 Karl Heuer (kwzh@mole.gnu.ai.mit.edu) + + * xterm.c (x_iconify_frame): Fix misbalanced + BLOCK_INPUT/UNBLOCK_INPUT. + + * xdisp.c (try_window_id): Don't pass value beyond ZV to + compute_motion. + * window.c (Fpos_visible_in_window_p): Return nil if POS > ZV. + + * sysdep.c (get_system_name): Remove restriction on hostname size. + * lisp.h (get_system_name): Declared. + * xterm.c (x_term_init): Use get_system_name instead of gethostname. + * xrdb.c (x_get_customization_string): Use get_system_name instead + of gethostname. + +1994-02-02 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (kbd_buffer_get_event): Pass 1 to read_avail_input. + +1994-02-01 Karl Heuer (kwzh@mole.gnu.ai.mit.edu) + + * config.h.in (HAVE_FMOD): Add another #undef. + * data.c (Fmod): Use HAVE_FMOD. + +1994-02-01 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu) + + * xfns.c (x_set_menu_bar_lines): Test also menubar_widget before + calling XtDestroyWidget. + +1994-02-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (dumpglyphs): Don't crash for invalid face code. + +1994-01-31 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * undo.c (record_first_change): Check for buffer-undo-list = t. + Make an undo boundary if appropriate. Set last_undo_buffer. + (record_property_change): Use BUFFER, not current_buffer, + when testing undo_list. + +1994-01-29 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * widget.c: Don't declare arg types in decls or fn definitions. + + * syntax.h (SYNTAX_MATCH, SYNTAX): Fix non-GNUC definitions. + + * widget.h (EmacsFrameSetCharSize): Don't declare arg types. + + * Makefile.in.in (configuration): Change # comment to C comment. + +1994-01-29 Karl Heuer (kwzh@mole.gnu.ai.mit.edu) + + * keymap.c (currrent_minor_maps): Scale by sizeof when allocating + objects. + + * buffer.c (Fkill_all_local_variables): Follow symbol forwarding. + +1994-01-29 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * callproc.c: Include stdio.h. + (init_callproc): Put non-ex-dir warnings on stderr. + + * lread.c (init_lread): Put non-ex-dir warnings on stderr. + +1994-01-28 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * lread.c (init_lread): Put non-ex-dir warnings on stderr. + * callproc.c: Include stdio.h. + (init_callproc): Put non-ex-dir warnings on stderr. + +1994-01-28 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu) + + * xterm.c (x_set_window_size): Add USE_X_TOOLKIT conditional. Call + EmacsFrameSetCharSize and return. + + * xterm.c (x_term_init): Cast to (char **) before assignment to argv. + +1994-01-27 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu) + + * keyboard.c (make_lispy_event): Add USE_X_TOOLKIT conditional and + test FRAME_EXTERNAL_MENU_BAR. + (map_event_to_object) [USE_X_TOOLKIT]: Declare and use it. + +1994-01-26 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (x_set_mouse_position): Don't raise the frame. + + * s/sunos4-0.h [__GNUC__] (MKDIR_PROTOTYPE): Defined. + + * sysdep.c (mkdir): Use MKDIR_PROTOTYPE if defined. + +1994-01-26 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu) + + * xterm.h [USE_X_TOOLKIT]: Don't include Xaw/Box.h. + + * xdisp.c (update_menu_bar): Add USE_X_TOOLKIT conditional and test + FRAME_EXTERNAL_MENU_BAR. + +1994-01-26 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile.in.in (widgetobj): New variable. + (otherobj): Use widgetobj. + (XOBJ): Undo previous change. + +1994-01-25 Francesco Potorti` (pot@cnuce.cnr.it) + + * m/delta.h (HAVE_BCOPY): undef'd for efficiency. + (bcopy, bzero, bcmp): define'd for efficiency. + (GAP_USE_BCOPY, BCOPY_DOWNWARD_SAFE): define'd for GHc compiler. + +1994-01-24 Francesco Potorti` (pot@cnuce.cnr.it) + + * m/delta.h (HAVE_RANDOM, BROKEN_FIONREAD): Defined if X is used. + (HAVE_XSCREENNUMBEROFSCREEN): Defined if X is used. + (LIB_X11_LIB, LIBX11_SYSTEM): Override only if X is used. + (USG_SHARED_LIBRARIES): Undefine only if X is used. + +1994-01-23 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * fns.c (Fconcat): Doc fix. + +1994-01-22 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (read_key_sequence): Properly gcpro fkey_map while + using keytran_map. + + * fns.c (Fassq, Fassoc): Doc fixes. + + * data.c (Faset): Doc fix. + +1994-01-21 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xdisp.c (display_menu_bar): Add USE_X_TOOLKIT conditional. + (redisplay_window) [USE_X_TOOLKIT]: Test FRAME_EXTERNAL_MENU_BAR. + (update_menu_bar) [USE_X_TOOLKIT]: Call set_frame_menubar. + + * widget.c: Include X11/ObjectP.h. + + * keyboard.c (syms_of_keyboard): New Lisp var command-hook-internal. + (command_loop_1): Use it when running the command hooks. + + * Makefile.in.in (LWLIB_OPTIONS): Define if not defined. + (LIBXT): New variable. + (LIBX): Use LIBXT. + (widget.o): New target. + (XOBJ) [USE_X_TOOLKIT]: Add widget.o. + + * xmenu.c: Find lwlib.h and xlwmenuP.h in ../lwlib. + * xfns.c: Find lwlib.h in ../lwlib. + + * widgetprv.h: Renamed from widgetP.h. + + * Makefile.in.in (lwlibdir): New variable. + ($(OLDXMENU)) [USE_X_TOOLKIT]: Alternate rule. + (OLDXMENU) [USE_X_TOOLKIT]: Alternate value. + (really-lwlib): New rule. + + * xterm.h [USE_X_TOOLKIT]: Include StringDefs.h, IntrinsicP.h, + CoreP.h, StringDefs.h, Xaw/Box.h. + * xterm.c: Don't include them. + + * xrdb.c (search_magic_path): Fix logic testing for empty path element. + +1994-01-20 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (x_wm_set_size_hint): Swap southeast and northwest. + + * xrdb.c (S_ISDIR): Define if not defined. + (file_p): Use S_ISDIR. + + * xterm.c (XTupdate_end): No need to test updating_frame. + * term.c (update_end): Clear updating_frame before calling hook. + + * fileio.c (double_dollars): New function. + (Fread_file_name_internal): Use double_dollars. + (Fread_file_name): Likewise. + + * textprop.c (Fprevious_property_change): Move back at least 1 char. + (Fprevious_single_property_change): Likewise. + * textprop.c: Doc fixes. + + * xfns.c (store_class_hints): Function deleted. + + * intervals.c (graft_intervals_into_buffer): Fix one-off + comparing lengths of over and under. + + * keyboard.c (read_key_sequence): Don't call echo_truncate + the first time through. + +1994-01-19 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/sunos4-1-3.h: Add #undef SYSTEM_MALLOC. + + * xfns.c (Fx_create_frame): Bind x-resource-name to explicit title. + (Qx_resource_name): Declared. + (syms_of_xfns): Set up Qx_resource_name. + + * xmenu.c: Reshuffle functions; put new ones in #ifdef USE_X_TOOLKIT. + (Fx_popup_menu): Add USE_X_TOOLKIT conditional around new decls. + + * xterm.c: Put new functions in #ifdef USE_X_TOOLKIT. + + * xdisp.c (truncate_echo_area): New function. + * keyboard.c (echo_truncate): Call truncate_echo_area. + +1994-01-18 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * config.h.in: Add #undef for USE_X_TOOLKIT. + + * xfns.c (x_window): Fix error message. + +1993-01-18 Frederic Pierresteguy (F.Pierresteguy@frcl.bull.fr) + + * Support use of X toolkit. + (USE_X_TOOLKIT): New macro to conditionalize the use of Xt. + * widget.c, widgetP.h, widget.h: New files. + * frame.h (struct frame): New field external_menu_bar. + (FRAME_EXTERNAL_MENU_BAR): New macro. + * xterm.h (struct x_display): New fields widget, column_widget, + edit_widget, menubar_widget. + (x_any_window_to_frame): Declared. + * lisp.h (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): + New macros. + * xfns.c (x_any_window_to_frame): New function. + (x_window_to_frame, x_window): Handle USE_X_TOOLKIT. + (x_set_icon_type, x_set_menu_bar_lines, x_set_name): Likewise. + (store_class_hints, hack_wm_protocols): New function. + * xmenu.c (string_width): New function. + (event_is_in_menu_item, map_event_to_object): Likewise. + (set_menu_items, free_menu_items, popup_selection_callback): Likewise. + (popup_down_callback, free_menubar_widget_value_tree): Likewise. + (update_one_frame_psheets, set_frame_menubar): Likewise. + (Fx_popup_menu, xmenu_show): Handle USE_X_TOOLKIT. + * xterm.c (construct_mouse_click): New function. + (process_expose_from_menu): Likewise. + (XTread_socket, x_set_offset, x_set_window_size): Handle USE_X_TOOLKIT. + (x_raise_frame, x_lower_frame, x_make_frame_visible): Likewise. + (x_iconify_frame, x_destroy_window, x_wm_set_window_state): Likewise. + (x_term_init): Likewise. + + * xmenu.c (dispatch_dummy_expose): New function. + (XMenu_xpos, XMenu_ypos): Change the values of the constant assignment. + (xmenu_show): Change the way to make the menubar to redraw itself by + generating a dummy expose event. + + * xterm.c (x_term_init): Pass argv, argc to XtAppInitialize with the + display_name value. + +1994-01-16 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/linux.h: Don't include stdio.h. + + * dispnew.c: Include stdio.h before config.h. + + * emacs.c (init_cmdargs): Set Vinstallation_directory. + (syms_of_emacs): staticpro it. + * lisp.h (Vinstallation_directory): Declared. + * lread.c (init_lread): Use Vinstallation_directory. + * callproc.c (init_callproc): Use Vinstallation_directory. + + * fileio.c (Ffile_symlink_p): Doc fix. + + * keyboard.c (Voverriding_local_map): New variable. + (syms_of_keyboard): Set up Lisp variable. + (read_key_sequence, menu_bar_items): Handle Voverriding_local_map. + + * keymap.c (Fkey_binding): Handle Voverriding_local_map. + (describe_buffer_bindings): Likewise. + +1994-01-15 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * config.h.in (LD_SWITCH_X_SITE_AUX): Add #undef. + * s/sol2.h (LD_SWITCH_SYSTEM): Use LD_SWITCH_X_SITE_AUX. + + * floatfns.c (Fffloor, Ffceil, Ffround, Fftruncate): New functions. + (syms_of_floatfns): Turn them on. + +1994-01-14 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (command_loop_1): If there's an error in the + post-command-hook or pre-command-hook, leave that hook nil. + + * s/sco4.h (BSTRING): Don't define it here. + +1994-01-13 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile.in.in (xterm.o): Depends on syssignal.h. + +1994-01-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * sysdep.c (sys_siglist) [sun]: Additional Sun-specific signal names. + +1993-01-12 Thomas Horsley (tahorsley@csd.harris.com) + + * cxux-crt0.s: New file. + + * emacs.c (main) [USG5 and INTERRUPT_INPUT]: Call setpgrp. + + * m/nh3000.h: New file for the Night Hawk 3000 series hardware defs. + + * m/nh4000.h: New file for the Night Hawk 4000 & 5000 series hardware. + + * s/cxux.h: New file for the CX/UX operating system used by Night + Hawks. + + * s/cxux7.h: New file. + + * sysdep.c (request_sigio, unrequest_sigio): Add new versions of + these routines for the CX/UX operating system. + (sys_signal) [SA_RESTART]: Set this flag. + + * xterm.c: Include syssignal.h. + +1994-01-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * process.c (sigchld_handler, status_message): + Handle a NULL in sys_siglist. + +1994-01-11 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * buffer.c (syms_of_buffer): Don't do (put 'erase-buffer 'disabled t). + (keys_of_buffer): Do it here instead. + +1994-01-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * lread.c (Fload): Record descriptor numbers on load_descriptor_list. + (load_descriptor_unwind, close_load_descs): New function. + (syms_of_lread): Init and staticpro load_descriptor_list. + (init_lread): Clear load_descriptor_list. + + * callproc.c (child_setup): Call close_load_descs. + + * eval.c (Fcondition_case): Allow a list of condition names + in a handler. + (find_handler_clause): Likewise. + (Fsignal): Rename 1st arg to error_symbol. + (Fcondition_case): Doc fix. + + * process.c (read_process_output): Supply second arg to unbind_to. + (exec_sentinel): Likewise. + +1994-01-11 (afs@hplb.hpl.hp.com) + + * keyboard.c (read_char_x_menu_prompt, read_char_minibuf_menu_prompt): + New functions made by dividing up read_char_menu_prompt. + (read_char): Call read_char_minibuffer_menu_prompt before the sit_for + if X menus are not going to be used. + (read_char_minibuf_menu_prompt): Correct access to keymaps for + menus when not using X menus. Only store character read in a keyboard + macro if it is not the menu help character. + +1994-01-10 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * process.c (create_process): Set line discipline only if pty_flag. + + * search.c (set_search_regs): New subroutine. + (search_buffer): Use set_search_regs. + Record beginning and end after matching null string. + +1994-01-09 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * mem-limits.h: Include before . + + * process.c: Don't declare sys_nerr. Don't declare sys_errlist + unless #ifdef VMS. Declare strerror instead. + (wait_reading_process_input): Call strerror instead of using + sys_errlist. + +1994-01-09 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xfns.c (x_sync): Block input. + + * buffer.h (struct buffer): New field auto_save_failure_time. + + * fileio.c (Fdo_auto_save): If auto save times out, + don't try again for 20 minutes. + (Fclear_buffer_auto_save_failure): New function. + (Fset_buffer_auto_saved): Clear auto_save_failure_time. + + * xfns.c (x_sync): New function. + * frame.c (Fdelete_frame): Call x_sync. + +1994-01-09 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdep.c: Restore big block of #ifdef and #include lines for + fcntl.h and friends, apparently accidentally removed in revision + 1.70 (Jan 5 changes). + +1994-01-08 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * callproc.c (child_setup): Don't declare PID `register'; we later + take its address. + + * config.h.in: Add #undef HAVE_STRERROR. + * sysdep.c [! VMS]: Don't declare sys_errlist here. + [! HAVE_STRERROR] (strerror): New function. + (dup2): Use strerror instead of sys_errlist. + * fileio.c: Don't declare sys_errlist; declare strerror instead. + (err_str): Macro removed. + (Finsert_file_contents, Fwrite_region): Call strerror instead of + err_str. + (report_file_error): Call strerror instead of using sys_errlist. + * emacs.c (main): Call strerror instead of using sys_errlist. + * callproc.c: Don't declare sys_errlist; declare strerror instead. + (relocate_fd): Call strerror instead of using sys_errlist. + * unexenix.c: Don't declare sys_errlist; declare strerror instead. + (fatal_unexec): Call strerror instead of using sys_errlist. + * unexmips.c: Likewise. + +1994-01-08 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * frame.c (Fdelete_frame): Do FRAME_SAMPLE_VISIBILITY before + testing visibility of a frame. + + * emacs.c (main): Don't call setpgrp if !initialized. + + * Makefile.in.in (${etc}DOC): Put back ${lisp} accidentally deleted. + + * keymap.c (describe_map_tree): New arg NOMENU. + (describe_buffer_bindings): Pass new arg. + * doc.c (Fsubstitute_command_keys): Pass new arg to describe_map_tree. + +1994-01-08 Morten Welinder (terra@diku.dk) + + * keyboard.c (interrupt_signal) [MSDOS]: write explicit CRs since + stdout has been made binary. Start at the top of the screen since + the internal terminal otherwise will write "below the screen." + +1994-01-07 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile.in.in (emacs): Don't run inc-vers.el. + + * config.h.in: Handle HAVE_BCMP. + (BSTRING): Don't define unless HAVE_BCMP. + +1994-01-05 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/msdos.h (getppid): Define as macro. + + * dired.c (DIRENTRY_NONEMPTY): New macro; two definitions. + (Fdirectory_files, file_name_completion): Use it. + +1993-01-05 Morten Welinder (terra@diku.dk) + + * buffer.c, buffer.h [MSDOS]: New buffer-local variable: + buffer-file-type to handle DOS newlines. + + * callproc.c (syms_of_callproc) [MSDOS]: New lisp variable: + binary-process. + (init_callproc) [MSDOS]: Initialize binary-process. + [MSDOS]: Declare binary-process. + [MSDOS]: Include , , , + and needed for the next changes. + (Fcall_process) [MSDOS]: Create temporary file for process output. + Run the subprocess using `run_msdos_command' instead of forking. + Arrange for cleanup to erase temporary file. + (Fcall_process) [not subprocesses]: Barf if zero buffer argument. + (call_process_cleanup) [MSDOS]: Close and erase temporary file + instead of the pid-stuff. + (Fcall_process_region) [MSDOS]: Create temporary file in $TMP or + $TEMP. + (Fchild_setup) [MSDOS]: #if 0, as it is not used. + + * cmds.c (keys_of_cmds) [MSDOS]: Chars 0200 to 0237 self-insert. + + * data.c (Frem) [MSDOS]: use `fmod', not `drem'. Put in config.h? + + * dired.c [MSDOS]: #include instead of . Avoid + some external definitions. + (Ffile_attributes) [MSDOS]: Set execute bits from file name. + (Ffile_name_all_completions) [FILE_SYSTEM_CASE]: Convert + case of file name as as indicated by conditional. + + * emacs.c (main) [MSDOS]: Call init_environment. Set file types to + binary for all files. Call init_dosfns. + (fatal_error_signal) [MSDOS]: Uncomment sigblock. + + * fileio.c [MSDOS]: #include "msdos.h" and needed for + the following changes. + (Ffile_name_directory, Fexpand_file_name) [FILE_SYSTEM_CASE]: Apply + case conversion if defined. + (Ffile_name_directory, Ffile_name_nondirectory, file_name_as_directory, + directory_file_name, Fexpand_file_name, Fsubstitute_in_file_name, + expand_and_dir_to_file) [MSDOS]: Drive letter support. + (Fexpand_file_name) [MSDOS]: Support for multiple default directories. + (Ffile_writeable_p) [MSDOS]: Don't call access with file name ending + in a slash. + (Finsert_file_contents) [MSDOS]: Determine file type by name (call + find-buffer-file-type) and change CR+LF to LF if it is a text file. + (Fwrite_region) [MSDOS]: Use text/binary mode as specified by + buffer_file_type. + (syms_of_fileio) [MSDOS]: Set Qfind_buffer_file_type. + (Fsubstitute_in_file_name) [MSDOS]: Ignore case in environtment + variable. + + * floatfns.c [MSDOS]: Don't define HAVE_MATHERR. + + * keyboard.c [MSDOS]: #include and , but not + . + (read_avail_input) [MSDOS]: Work around `ioctl'. Also read through + dos_keyread for better keyboard support. + (interrupt_signal) [MSDOS]: Don't claim we can core dump. + (kbd_buffer_store_event): Cast a pointer to avoid a compiler warning. + + * lread.c [MSDOS]: Use text mode for all files but ".elc" files. + (complete_file_name) [MSDOS]: Drive letter support. + + * mem-limits.h [MSDOS] (get_lim_data): Use go32 call. + + * sysdep.c [MSDOS]: #include , "dosfns.h", "msdos.h", and + needed for the following changes, but not + (discard_tty_input) [MSDOS]: Do it by reading till no more keys + available. + (init_baud_rate) [MSDOS]: Assume highest possible speed. + (sys_suspend) [MSDOS]: Save default directory. Call via system, not + via fork. + (emacs_get_tty, emacs_set_tty) [MSDOS]: Don't do anything. + (init_sys_modes) [MSDOS]: Use raw mode. + (get_frame_size) [MSDOS]: Get from bios. + (reset_sys_modes) [MSDOS]: Back to cooked mode. + (start_of_text) [MSDOS]: Reference _tstart. + (select) [MSDOS]: Don't use signals, use sleeping. + (init_sys_modes) [MSDOS]: Initialize internal terminal. + + * systty.h [MSDOS]: don't #include . We haven't got it. + Declare dummy main field. Don't ever use TABs. + + * termcap.c (tgetent) [INTERNAL_TERMINAL]: Fake internal terminal + without reading any files. + (valid_file_name, tgetent) [MSDOS]: Drive letter support. + (tgetent) [MSDOS]: Use text mode for database. + + * unexec.c [MSDOS]: Don't #include , but use other headers. + (make_hdr) [MSDOS]: Cast a pointer for bzero. + (write_segment) [EFAULT]: Check for before using. + (adjust_lnnoptrs) [MSDOS]: Use provided descriptor. + (adjust_lnnoptrs): Return 0 if ok. + + * xdisp.c (decode_mode_spec) [MSDOS]: Let 't' expand to 'T' for + text mode or 'B' for binary mode. + (decode_mode_spec) [not subprocesses]: Don't access Fprocess_status. + + * s/msdos.h, m/dos386.h: New files (for MSDOS). + * dosfns.c, dosfns.h: New files (for MSDOS). + * msdos.c, msdos.h: New files (for MSDOS). + +1994-01-04 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/sunos4-1.h (SUNOS_LOCALTIME_BUG): #if 0'd. + + * print.c (strout, printchar): Use proper frame for minibuffer. + + * keyboard.c (read_avail_input): Args to `kill' were backwards. + (kbd_buffer_get_event): If deleting last frame, call Fkill_emacs. + + * fns.c (Fmapconcat): Doc fix. + + * s/sco4.h (bcopy, bzero, bcmp): Defined. + +1994-01-03 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xfns.c (Fx_list_fonts): Don't fail to init `tail'. + +1994-01-02 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * buffer.c: Don't include syntax.h. + * Makefile.in.in (buffer.o): Don't depend on syntax.h. + + * syntax.h (enum syntaxcode): Add Sinherit. + (RAW_SYNTAX, RAW_SYNTAX_MATCH, SYNTAX_CHOOSE_TABLE): New macros. + (SYNTAX, SYNTAX_MATCH, SYNTAX_COMSTART_FIRST, SYNTAX_COMSTART_SECOND) + (SYNTAX_COMEND_FIRST, SYNTAX_COMEND_SECOND, SYNTAX_PREFIX) + (SYNTAX_COMMENT_STYLE): Handle Sinherit. + Alternative definitions if __GNUC__. + + * syntax.c (describe_syntax): Handle Sinherit. + (syntax_code_spec, syntax_spec_code): Add entry for @ and Sinherit. + + * Makefile.in.in (temacs): Delete redundant use of LDFLAGS. + +1994-01-02 Ulrich Mueller (ulm@vsnhd1.cern.ch) + + * sysdep.c (get_system_name): If the official name of the host is + not a fully qualified domain name, then try to find one in the + list of alternate names. + +1994-01-02 Rick Sladkey (jrs@world.std.com) + + * intervals.h (NULL_RIGHT_CHILD, NULL_LEFT_CHILD): + Assume children must be intervals, never strings or buffers. + + * intervals.c (rotate_right, rotate_left): Simplify + total_length calculation. Minimize pointer dereferencing. + (balance_an_interval): Remove recursive rebalancing. + Rebalance precisely when imbalanced. If a rotation is done, + rebalance only the node which may have become unbalanced. + Iterate until the current node is balanced. + (balance_possible_root_interval): New function. + (balance_intervals): Move the interation into rebalance_an_interval. + (balance_intervals_internal): New subroutine of balance_intervals. + (split_interval_right, split_interval_left): Speed up by + not checking LEAF_INTERVAL_P. + (split_interval_right, split_interval_left, find_interval, + adjust_intervals_for_insertion, graft_intervals_into_buffer): + Add dynamic rebalancing anywhere a node may become unbalanced. + (graft_intervals_into_buffer, copy_intervals): No longer + any need to do a full rebalance as the tree stays balanced. + +1994-01-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * fileio.c (Fwrite_region): Don't change START and END from nil + until after checking for a magic handler. + + * .gdbinit: Delete `show env TERMCAP'. + + * process.c (read_process_output): Use clip_to_bounds when moving + to the process marker. + + * keyboard.c (modify_event_symbol): New arg NAME_ALIST. + Allow SYMBOL_TABLE to be an alist. + (Vvendor_key_alist): New variable. + (syms_of_keyboard): Initialize it. + (make_lispy_event): Handle vendor-specific keysyms. + (lispy_function_keys): Delete `remove' and th HP keysyms. + + * xterm.c (XTread_socket): temp_buffer and temp_index deleted. + Put all vendor-specific keys into the buffer. + (x_is_vendor_fkey): Function deleted. + (XTread_socket): Don't call it. + + * Makefile.in.in (SOME_MACHINE_OBJECTS): New var. + (${etc}DOC): Use SOME_MACHINE_OBJECTS, + not OBJECTS_MACHINE or OBJECTS_SYSTEM. + Don't depend on SOME_MACHINE_OBJECTS. + + * dired.c (file_name_completion_stat): If have symlinks, use lstat. + +1993-12-31 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * buffer.c (Qget_file_buffer): New variable. + (syms_of_buffer): Set up Qget_file_buffer. + (Fget_file_buffer): For magic file names, run the handler. + + * fileio.c (Finsert_file_contents): Don't run after change hook + if inserted is 0. + Avoid setting modtime or buffer-file-name field if ran a handler. + + jrs: + * s/linux.h (PENDING_OUTPUT_COUNT): Two alternate definitions + for different versions of stdio.h. + +1993-12-30 Morten Welinder (terra@diku.dk) + + * frame.c: Always include termhooks.h. + [! MULTI_FRAME] (Fmouse_position): New definition. + [! MULTI_FRAME] (syms_of_frame): Add mouse-position. + +1993-12-30 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * doc.c (Fsubstitute_command_keys): Fix previous change. + +1993-12-30 Lawrence R. Dodd (dodd@roebling.poly.edu) + + * minibuf.c (read_from_minibuffer): Rename arg initial_input + to initial_contents. + +1993-12-30 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * editfns.c (Femacs_pid): New function. + (syms_of_editfns): Define it for Lisp. + + * keyboard.c (read_avail_input): Turn O_NDELAY off on DGUX as on USG. + + * minibuf.c (Fall_completions): Allow completions that start with space + if the input starts with space. + + * Makefile.in.in (LDFLAGS): Define as empty. + (ALL_LDFLAGS): Define as LDFLAGS used to be defined. + (temacs): Use ALL_LDFLAGS. + + * xfns.c (Fx_create_frame): Add to Vframe_list before making visible. + +1993-12-29 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keymap.c (describe_command): If binding is a kbd macro, say so. + +1993-12-26 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * emacs.c (main) [AIX]: Call putenv. + + * s/linux.h (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Defined. + + * keyboard.c (lispy_accent_codes): Cope if an XK symbol is undefined. + (make_lispy_event): Define i. + + * termhooks.h (struct input_event): FIx typo in previous change. + + * xterm.c (XTflash): Use EMACS_GET_TIME. + (XTread_socket): Make proper junk values to pass to select. + +1993-12-25 Jerry Frain (jerry.frain@tivoli.com) + + * s/usg5-4.h (bcopy): Use memmove instead of memcpy. + + * systime.h (EMACS_GET_TIME) [USG5_4]: Give gettimeofday just one arg. + +1993-12-25 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * alloc.c (Fmemory_limit): No longer interactive. + +1993-12-24 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (command_loop_1): Test of whether disp tab elt + was a vector was backwards. + + * fileio.c (Fwrite_region): If handler, don't mess with modtime. + (Finsert_file_contents): Likewise. + + * config.h.in: Add #undef HAVE_SETSID. + + * process.c (create_process) [NTTYDISC]: Set the tty line discipline. + + * callproc.c: Include systty.h. + (child_setup): Use EMACS_SET_TTY_PGRP. + * Makefile.in.in (callproc.o): Depend on systty.h and syssignal.h. + + * xdisp.c (redisplay_window): Before altering lpoint, + make sure the buffer it pertains to is the one being displayed. + + * syntax.c (Fmodify_syntax_entry): Doc fix. + +1993-12-23 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * process.c (Fopen_network_stream): Turn off SIGIO while connecting. + +1993-12-22 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (lispy_accent_codes): New variable. + (make_lispy_event): Use that to handle lots of dead accent keys. + + * xterm.c (XTread_socket): Handle a bunch more dead keys. + +1993-12-22 Francesco Potorti` (pot@cnuce.cnr.it) + + * m/delta.h (BROKEN_CLOSEDIR): added because closedir is interruptible. + (HAVE_UNISTD_H): deleted because configure takes care of it. + (C_SWITCH_MACHINE): added optimisation options for gnu cc. + +1993-12-17 Mike Long (mike.long@analog.com) + + * s/vms.h (TERMCAP_NAME): Defined. + * s/netbsd.h (TERMCAP_NAME): Defined. + These correspond with changes in termcap.c. + +1993-12-17 Richard Stallman (rms@gnu.ai.mit.edu) + + * xterm.c (XTread_socket): Don't offset keysym here. + Special handling for "dead accent" keysyms. + * keyboard.c (make_lispy_event): Offset the event code here. + Special handling for "dead accent" keysyms. + + * keyboard.c (quit_throw_to_read_char): Don't switch frames if + internal_last_event_frame is not a frame. + + * termhooks.h (struct input_event): `code' is now an int. + * xterm.c (construct_mouse_click, x_scroll_bar_handle_click) + (XTread_socket): `code' of an event is now an int. + * keyboard.c (kbd_buffer_store_event, make_lispy_event) + (stuff_buffered_input): `code' of an event is now an int. + + * s/sol2-3.h: New file. + * xfns.c (Fx_list_fonts): Handle BROKEN_XLISTFONTSWITHINFO. + +1993-12-16 Richard Stallman (rms@gnu.ai.mit.edu) + + * xterm.c (pixel_to_glyph_coords): New arg NOCLIP. Callers changed. + + * keyboard.c (make_lispy_movement): If we have a frame but pos is not + in a window, return an event with the frame. + + * xterm.c (XTread_socket): For MotionNotify, if x_mouse_grabbed, + use last_mouse_frame. + (construct_mouse_click): Set last_mouse_frame. + (XTmouse_position): If x_mouse_grabbed, use last_mouse_frame. + + * xdisp.c (message): Use message2, not message1. + +1993-12-15 Richard Stallman (rms@gnu.ai.mit.edu) + + * xfns.c (Fx_create_frame): Add frame to Vframe_list. + * frame.c (make_terminal_frame): Add frame to Vframe_list. + (make_frame): Don't add to frame list here. + + * window.c (Fdisplay_buffer): If pop_up_frames, pass t to + Fget_buffer_window. + + * Makefile.in.in (configuration): New variable. + (emacs.o): Define macro CONFIGURATION. + * emacs.c (syms_of_emacs): Define Lisp var system-configuration. + + * xdisp.c (display_string): Fix truncation-criterion after main loop + for termination due to LENGTH. + * window.h (echo_area_glyphs_length): Declared. + * print.c (printchar, strout): Set echo_area_glyphs_length. + + * keyboard.c (read_key_sequence): Don't return if in middle + of possible function-key-map sequence, if the bindings were all + found by case conversion. + + * lisp.h: Use WORDS_BIG_ENDIAN, not BIG_ENDIAN. + (Qmenu_bar): Declared. + + * process.c (Fprocess_status): Use get_process, not Fget_process. + + * s/dgux.h (SYSTEM_TYPE): Make it dgux. + + * m/sun2.h (OTHER_FILES): Use ${libsrc} as dir. + +1993-12-15 Michal Jankowski (michalj@fuw.edu.pl) + + * insdel.c (del_range): Second argument in call to + offset_intervals is 'from', not 'point'. + +1993-12-14 Richard Stallman (rms@gnu.ai.mit.edu) + + * emacs.c (memory_warning_signal): New function. + (main): Handle SIGDANGER, if defined. + + * minibuf.c (minibuffer_auto_raise): Really define it. + + * process.c [BROKEN_O_NONBLOCK]: Undefine O_NONBLOCK. + +1993-12-14 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * dispnew.c (update_frame): Only call sleep (outq / baud_rate) if + baud_rate >= OUTQ. Calling sleep (0) causes a gratuitous delay on + some systems. + +1993-12-13 Andreas Luik (luik@kepler.isa.de) + + * xterm.c (x_calc_absolute_position): Borderwidth must be doubled + before subtracting from width to get correct value. + + * xfns.c (Fx_create_frame): Fix order of arguments of + x_wm_set_size_hint call. This corrects handling of +x-y and -x+y + geometry specifications. + +1993-12-12 Richard Stallman (rms@gnu.ai.mit.edu) + + * xdisp.c (echo_area_glyphs_length): New variable. + (message1): Set it. + (message2): New function. + (display_string): New arg LENGTH. + (echo_area_display): Pass new arg to display_string. + (redisplay_window): Likewise. + (display_text_line): Likewise. + (display_menu_bar): Likewise. + (display_mode_element): + + * editfns.c (Fmessage): Use message2. + + * keyboard.c (set_waiting_for_input): Code testing echo_flag deleted. + (echo_flag, echo_now): Vars deleted. + + * keyboard.c (read_key_sequence): Bind case_converted at top level. + Clear it at replay_sequence. + (follow_key): Never clear *CASE_CONVERTED. + +1993-12-11 Richard Stallman (rms@gnu.ai.mit.edu) + + * xselect.c (x_get_foreign_selection): Use x_catch_errors. + + * fileio.c (Fmake_symbolic_link): Do expand FILENAME if starts with ~. + + * keymap.c (Fwhere_is_internal): Doc fix. + + * buffer.c (Fbuffer_disable_undo): Make arg optional. + +1993-12-11 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * unexsunos4.c [! MAP_FILE] (MAP_FILE): Define to zero. + (unexec): Remove unused variable BUF. + Use MAP_FILE bit in mmap call. + (run_time_remap): Use MAP_FILE bit in mmap call. + +1993-12-09 Richard Stallman (rms@gnu.ai.mit.edu) + + * insdel.c (modify_region): Call record_first_change if necessary. + + * emacs.c (main): Don't handle SIGDANGER. + + * minibuf.c (minibuffer_auto_raise): New variable. + (syms_of_minibuf): Set up Lisp var. + (read_minibuf): Maybe raise the minibuffer's frame. + +1993-12-08 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * dispnew.c (PENDING_OUTPUT_COUNT) [__GNU_LIBRARY__]: Alternate + definition for the GNU C library. I changed this in version 18 in + 1991, but the change never got propagated. + +1993-12-07 (pmr@legacy.pajato.com) + + * s/dgux.h (SYSV4_PTYS): Remove. + (SIGNALS_VIA_CHARACTERS): Defined. + + * process.c (create_process): Delete SYSV4_PTYS code. + (deactivate_process): Likewise. + +1993-12-06 Richard Stallman (rms@gnu.ai.mit.edu) + + * doc.c (Fsubstitute_command_keys): Ignore menu bar bindings. + + * s/sunos4-1.h (LIBS_SYSTEM): Use -lresolv if HAVE_RES_INIT + is not defined and HAVE_GETHOSTNAME is defined. + + * keyboard.c (syms_of_keyboard): Define Lisp var track-mouse. + + * keyboard.c (follow_key): New arg case_converted. + (read_key_sequence): Pass the new arg. + If key has a binding via case-conversion, that does not prevent + use of function_key_map. + +1993-12-05 Richard Stallman (rms@gnu.ai.mit.edu) + + * m/pmax.h (SET_CHILD_PTY_PGRP): Defined. + + * process.c (create_process) [SET_CHILD_PTY_PGRP]: Do ioctls + to set the pgrp of the pty. + +1993-12-04 Richard Stallman (rms@gnu.ai.mit.edu) + + * xfns.c (XSetWMProtocols): New function, defined conditionally. + + * config.h.in (HAVE_XSETWMPROTOCOLS): Add #undef. + + * intervals.c (graft_intervals_into_buffer): If SOURCE is null + and TREE is null, no need to call Fset_text_properties. + + * dispnew.c (Fsit_for): Call prepare_menu_bars. + * keyboard.c (read_char): Call prepare_menu_bars. + * xselect.c (x_handle_selection_clear): Call prepare_menu_bars. + * vmsproc.c (Fcall_process): Call prepare_menu_bars. + * sysdep.c [VMS] (wait_for_kbd_input): Call prepare_menu_bars. + * process.c (wait_reading_process_input): Call prepare_menu_bars. + * callproc.c (Fcall_process): Call prepare_menu_bars. + * keyboard.c (tracking_off): Call prepare_menu_bars. + * xdisp.c (update_menu_bar, update_menu_bars): New functions. + (prepare_menu_bars): New function. + (redisplay_window): Don't update menu bar here. + (display_menu_bar): Assume item list already updated. + +1993-12-02 Richard Stallman (rms@gnu.ai.mit.edu) + + * editfns.c (Fsubst_char_in_region): Move the NOUNDO hacking code + after the modify_region call. + +1993-12-01 Richard Stallman (rms@gnu.ai.mit.edu) + + * eval.c (Fmacroexpand): For an autoload definition, + check the 4th elt, not the car of the 4th elt. + + * m/mips4.h (C_DEBUG_SWITCH): Delete -systype bsd43; not needed. + + * regex.c (regex_compile) [!MATCH_MAY_ALLOCATE]: If fail_stack.stack + is nonzero, leave it alone. + + * fileio.c (Fread_file_name): If defalt is nil and user tries to use + it, signal an error. + + * lisp.h (DEFUN_ARGS_MANY, DEFUN_ARGS_UNEVALLED, DEFUN_ARGS_0,...): + New macros. + (DEFUN) [__STDC__]: Use those macros. + + * doc.c (Fdocumentation_property): 3 args is maximum. + + * callproc.c (Fgetenv): One arg is maximum. + +1993-11-30 Richard Stallman (rms@gnu.ai.mit.edu) + + * dispnew.c (direct_output_forward_char): + Give up if in truncated text at end of line. + + * process.c (create_process): The test to avoid closing forkin + is now conditional on #ifndef SIGNALS_VIA_CHARACTERS. + + * xdisp.c (redisplay_window): Don't alter lpoint when w is + selected window in a non-selected frame. + +1993-11-30 Richard Stallman (rms@gnu.ai.mit.edu) + + * Makefile.in.in [__GNUC__ > 1]: Maybe define LINKER_WAS_SPECIFIED. + [LINKER_WAS_SPECIFIED] (YMF_PASS_LDFLAGS): Define as identity. + + * m/mips4.h (NO_MODE_T): Defined. + +1993-11-27 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.22 released. + + * m/tek4300.h (NO_MODE_T): Defined. + +1993-11-26 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * process.c (deactivate_process) [SVR4_PTYS]: + If subtty is not nil, close it. + + * keyboard.c (kbd_buffer_get_event): For delete-window-event, + do count iconified frames. + + * xfns.c (x_window): Call XSetWMProtocols. + + * keyboard.c (kbd_buffer_get_event): If user destroys the last frame, + exit before calling Fdelete_frame. + + * s/irix5-0.h (SYSTEM_TYPE): Make it "irix". + + * sysdep.c (closedir): Test BROKEN_CLOSEDIR, not INTERRUPTIBLE_CLOSE. + +1993-11-25 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (read_avail_input): Undo Nov 18 change. + + * lread.c (readevalloop): Get error if buffer being eval'd is killed. + + * s/irix3-3.h (SETPGRP_RELEASES_CTTY): Defined. + * s/irix5-0.h (IRIX5, SETPGRP_RELEASES_CTTY): Defined. + * process.c (create_process): Do setpgrp for USG regardless of IRIX. + (process_send_signal) [IRIX5]: For SIGTSTP, use VSUSP, not VSWTCH. + * callproc.c (child_setup): Test SETPGRP_RELEASES_CTTY, not IRIX. + (init_callproc): Fix previous change. + + * s/sunos4-1-3.h [!SYSTEM_MALLOC] (MEMMOVE_MISSING): Defined. + + * keyboard.c (quit_throw_to_read_char): + Look at internal_last_event_frame only if MULTI_FRAME. + + * m/ibmrt.h (HAVE_FTIME): Deleted (autoconf does it). + + * m/hp9000s800.h (bcopy, bzero, bcmp): If HAVE_BCOPY, don't #define. + + * s/sco4.h (LIBS_SYSTEM): Always define this one way or another. + Include -lPW in it. + + * intervals.c (merge_properties_sticky): Declared. + + * regex.c (MAX, MIN): Undef before defining. + + * frame.c (Fhandle_switch_frame, Fredirect_frame_focus): Declared. + + * m/delta.h (HAVE_RANDOM, HAVE_XSCREENNUMBEROFSCREEN, BROKEN_FIONREAD): + Add definitions. + (LIB_X11_LIB, LIBX11_SYSTEM): Add override definitions. + (USG_SHARED_LIBRARIES): Add #undef. + + * sysdep.c (init_baud_rate): Avoid referring to sg uninitialized. + +1993-11-24 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * emacs.c (main) [AIX]: Don't handle signals 23, SIGAIO, SIGPTY. + + * indent.c (Fmove_to_column): Increments for control characters + were too low by 1. + + * process.c (Fdelete_process): Fix paren error. + + * sysdep.c (closedir): Pass on the value from sys_closedir. + Do use this definition, if INTERRUPTIBLE_CLOSE. + +1993-11-23 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/sco4.h (LIBX11_SYSTEM): Override the definition. + + * xterm.c (XTread_socket): Really handle Xatom_wm_window_moved events. + + * s/irix5-0.h (SIGNALS_VIA_CHARACTERS): Defined. + + * fileio.c (Finsert_file_contents): Don't call signal_after_change + if we did not call prepare_to_modify_buffer. + + * editfns.c (make_buffer_string): Don't copy intervals + if we don't really have any properties. + + * lisp.h: Declare Fnext_single_property_change + and Fnext_property_change. + + * s/sco4.h (HAVE_GETTIMEOFDAY): Define only if HAVE_SOCKETS. + Fix up conditionals changed recently. + + * editfns.c (Finsert_buffer_substring): + Pass graft_intervals_into_buffer the current buffer. + + * intervals.c (graft_intervals_into_buffer): New arg LENGTH. + If source has no intervals, set dest properties to nil. + * editfns.c (Finsert_buffer_substring): Pass new arg. + * insdel.c (insert_from_string): Likewise. + + * callproc.c (init_callproc): Maybe add ../lib-src to exec-path + and maybe store it in exec-directory. + Mabe put ../etc into data-directory. + (init_callproc_1): Part of init_callproc is split out. + * emacs.c (main): Call init_callproc and init_callproc_1. + +1993-11-22 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * editfns.c (Fsubst_char_in_region): Call modify_region only if + a change has to be made. Call signal_after_change just once, at end. + + * lread.c (OBARRAY_SIZE): Increase from 509. + + * xrdb.c (search_magic_path): Fix colon-colon case. + + * textprop.c (Ftext_property_not_all): + For trivial yes, return start, not Qt. + + * xselect.c (Fx_disown_selection_internal): When making the fake + event for x_handle_selection_clear, use SELECTION_EVENT_... macros. + +1993-11-21 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/sunos4-1-3.h (HAVE_TERMIOS, BSD_TERMIOS): Deleted. + + * systty.h (EMACS_GET_TTY_PGRP, EMACS_SET_TTY_PGRP): + If HAVE_TERMIOS and BSD_TERMIOS, don't use tc[sg]etpgrp. + + * xfns.c (x_set_frame_parameters): Call check_frame_size + before Fset_frame_size and Fset_frame_position. + + * termhooks.h (delete_window_event): New event kind. + * xterm.c (XTread_socket): Generate delete_window_event's. + * keyboard.c (kbd_buffer_get_event): Handle delete_window_event's. + + * s/sco4.h [HAVE_SOCKETS] (HAVE_XSCREENNUMBEROFSCREEN): Defined. + + * keymap.c: Doc fix. + + * window.c (window_loop, case DELETE_BUFFER_WINDOWS): + Select a new buffer only if w is selected window. + + * hftctl.c: Include config.h. Include sys/signal.h before config.h. + (sav_alrm): Use SIGTYPE. + (FUNC): Typedef deleted. + + * Makefile.in.in (hftctl.o): New rule. + + * process.c (wait_reading_process_input): + Use -1 to mean wait_channel is empty. + Start process loop with descriptor 0 if keyboard_descriptor is not 0. + (make_process): Initialize descriptors to -1. + (Fdelete_process): -1 means empty, in infd. + (deactivate_process): Likewise. + (process_send_signal): Likewise. + (kill_buffer_processes): Likewise. + (sigchld_handler): Likewise. + (status_notify): Likewise. + (close_process_descs): Likewise. + (create_process): Likewise. + (Fopen_network_stream): Likewise. + (send_process): Likewise. + (Fprocess_send_eof): Likewise. Use XINT when closing outfd. + (Fset_process_filter): Use XINT to get infd value. + (wait_reading_process_input): Likewise. + + * process.c (wait_reading_process_input): When bypassing select, + clear Available. + + * sysdep.c (getwd): If getcwd returns 0, we return 0. + (getwd for VMS): Likewise. + +1993-11-20 Paul Reilly (pmr@legacy.pajato.com) + + * s/dgux.h (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): + Defined (copied from usg5-4.h). + (FIRST_PTY_LETTER): Deleted. + +1993-11-20 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * frame.c (Fmake_frame_visible): Doc fix. + + * textprop.c (Ftext_property_not_all): Swap t and nil values in + the case where there are no intervals. + (Fprevious_single_property_change, Fprevious_property_change) + Extra arg LIMIT. Return value was off by 1. + (Fnext_single_property_change, Fnext_property_change): + Extra arg LIMIT. + (Fnext_single_property_change): Require at least 2 args. + * indent.c (compute_motion): + Pass new arg to Fnext_single_property_change. + * xfaces.c (compute_char_face): Accept new arg LIMIT. + Pass Fnext_single_property_change its new arg LIMIT. + * xdisp.c (display_text_line): Pass new arg to compute_char_face + and to Fnext_single_property_change. + * dispnew.c (direct_output_for_insert): + Pass new arg to compute_char_face. + + * keyboard.c (follow_key): When downcasing, downcase just the + basic part of the character, and preserve the modifier bits. + +1993-11-19 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (read_key_sequence): If we get a quit, and current buffer + has changed, replay it to get proper keymap. + (quit_throw_to_read_char): Switch frames to the frame the quit was in. + +1993-11-19 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * buffer.c (Frename_buffer): When the current buffer is already + named NAME, don't short-circuit and just return unless UNIQUE is + nil. This makes passing UNIQUE=t equivalent to (rename-buffer + (generate-new-buffer-name NAME)). This is useful way to rename + the buffer automatically so you can create another with the + original name. + +1993-11-19 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (quit_throw_to_read_char): Select the frame + which the quit char was typed in. + + * s/linux.h (HAVE_UNISTD_H): No need to define here. + + * buffer.c (Flist_buffers): Always return a value. + + * minibuf.c (read_minibuf): History list always gets strings, + not Lisp objects made by read. + +1993-11-18 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (read_avail_input): Don't set nread to -1 + if we loop around in the loop that calls read. + + * sysdep.c (read_input_waiting): read_socket_hook + delivers events, not characters. Make buf smaller + in the case where we actually call read itself. + + * ralloc.c (r_alloc_init): Explicitly use real_morecore + to allocate the entire incomplete page. + + * frame.c (Fmake_frame_visible): Use FRAME_SAMPLE_VISIBILITY. + + * s/dgux.h (FIRST_PTY_LETTER): Defined. + +1993-11-17 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keymap.c (Fkey_binding): Doc fix. + + * cmds.c (keys_of_cmds): Make 0377 self-inserting. + +1993-11-16 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.21 released. + + * doprnt.c (doprnt): Cast the value alloca returns. + + * gmalloc.c [HPUX8]: Include unistd.h earlier on. + + * s/sunos4shr.h (GNU_MALLOC, REL_ALLOC): Don't define if + already defined. + + * s/hpux8.h (LD_SWITCH_SYSTEM) [hp9000s700]: Add -L/lib/pa1.1. + + * Makefile.in.in (extraclean): Prevent wildcard from starting comment. + (distclean): Do delete Makefile and Makefile.in. + +1993-11-14 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * systty.h [BSD_TERMIOS]: Under NL0, NL1..., ECHO, NOFLSH, TOSTOP, + FLUSHO and PENDIN. + * s/sunos4-1-3.h (BSD_TERMIOS): Defined. + + * regex.c (re_set_registers): Use `regoff_t *' when casting 0. + + * Makefile.in.in: Delete spurious CFLAGS=-g. + + * s/sco4.h (HAVE_GETTIMEOFDAY): Don't define if already defined. + + * keyboard.c (read_avail_input): Make cbuf 1 char shorter. + +1993-11-14 Paul Reilly (pmr@legacy.pajato.com) + + * s/dgux.h (INTERRUPT_INPUT): Undefined. + (BROKEN_FIONREAD): Defined to work around a problem in DGUX + whereby emacs will stop on a background write when invoked from a + job control shell for the first time in a session. + (FIRST_PTY_LETTER): Undefined. + (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Defined + to use all the available PTYs in a COFF environment. + (LINKER): Removed "-nostdlib" from to be compatible with a prior + mod removing "/lib/crt0.o" from the LIBS_SYSTEM define. + (LIBS_SYSTEM): Delete /lib/crt0.o. + +1993-11-14 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (XTread_socket): Increase length of copy_buffer to 81. + + * lread.c (read1): If token has a \, don't treat it as a number. + +1993-11-13 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * process.c (IN_ADDR, NUMERIC_ADDR_ERROR): New macros (two versions). + (Fopen_network_stream): Use them. + + * doprnt.c: Include config.h. + + * keyboard.c (read_avail_input) [no FIONREAD]: On DGUX, as on USG, + read input with O_NDELAY. + + * s/dgux.h (SYSTEM_MALLOC): Turned off. + (NO_TERMIO): Defined. + (BROKEN_FASYNC): Turned off. + + * buffer.c (Foverlay_put): Don't call redisplay_region + if overlay has no buffer. + +1993-11-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * process.c (get_process): Add `static' to definition. + + * xterm.c (XTmouse_position): Delete test inserted Nov 10. + + * fileio.c (syms_of_fileio): Fix missing \n\'s. + + * keyboard.c (Fread_key_sequence): Split the doc string with "". + + * textprop.c (Fprevious_single_property_change): Fix missing \n\. + (Fnext_single_property_change): Likewise. + +1993-11-10 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.20 released. + + * callproc.c (Fcall_process): Clear synch_process_death and + synch_process_retcode before the vfork. + + * xterm.c (XTmouse_position): Undo roland's change. + Fix bug in bfox change. + +1993-11-10 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * unexec.c [! HPUX]: Don't declare sbrk at all, so as not to + conflict with system headers. + + * xterm.c (XTmouse_position): First arg is FRAME_PTR, not + FRAME_PTR *. + +1993-11-10 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/convexos.h: New file. + +1993-11-10 Brian Fox (bfox@mole.gnu.ai.mit.edu) + + * Makefile.in.in (intervals.o): Depend on puresize.h. + + * intervals.c (create_root_interval): Check to see if PARENT is in + pure memory. If so, we cannot write it. + (includes): Add "puresize.h" so we get the definition of CHECK_IMPURE. + + * xterm.c (XTmouse_position): If the passed in frame is not an + Xwindow frame, don't do anything. + + * frame.c (Fraise_frame): Do like the documentation says, and make + the frame visible first. + + * systty.h (EMACS_GETPGRP): New macro hides argument passing to + system getpgrp. Reinstate some semblance of control over this + macros behaviour by paying attention to GETPGRP_NO_ARG. + * sysdep.c (sys_suspend): Use EMACS_GETPGRP macro. + * emacs.c (main): Use EMACS_GETPGRP macro. + (shut_down_emacs): Use EMACS_GETPGRP macro. + + * alloc.c (make_pure_string): If we USE_TEXT_PROPERTIES, set the + interval of the pure string to NULL_INTERVAL. + + * syswait.h: Treat convex like hpux. + + * search.c (Fskip_chars_backward, Fskip_chars_forward): Doc fix. + +1993-11-10 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * syntax.c (Fforward_comment): On backward scan, exit inner loop + after we reach beginning of a comment. + Check the SYNTAX_COMMENT_STYLE of a one-character comment ender. + (scan_lists): Check the SYNTAX_COMMENT_STYLE + of a one-character comment ender. + + * sysdep.c (read_input_waiting): Don't mess with meta bit + if read_socket_hook is nonzero. + + * sysdep.c (LPASS8, LNOFLSH): Move definitions earlier. + (child_setup_tty): Turn on LPASS8. + + * search.c (skip_chars): Finish reenabling checks for buffer bounds. + Use XINT, not XFASTINT, when testing. + + * fileio.c (Fwrite_region): Fix minor bugs in POS arg to awrite. + + * xterm.c (syms_of_xterm): Initialize last_mouse_scroll_bar. + +1993-11-09 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * buffer.c, editfns.c: Doc fix. + +1993-11-06 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * sysdep.c (child_setup_tty): Make the pty handle 8-bit characters. + +1993-11-04 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/linux.h [TERM]: Alternate definitions of LIBS_MACHINE + and C_SWITCH_MACHINE. + + * process.c [TERM]: Include client.h. + (Fopen_network_stream): Handle TERM. + +1993-11-03 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (x_new_font): xmalloc arg was 1 too small. + +1993-11-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/sunos4-1-3.h (HAVE_TERMIOS): Defined. + +1993-10-25 Brian Fox (bfox@albert.gnu.ai.mit.edu) + + * process.c (Fopen_network_stream): Cast arg to inet_addr to (char *). + + * search.c (Freplace_match): Fix argument names to match doc string. + (Fmatch_beginning): Fix doc string to match argument name. + + * floatfns.c: Declare `logb' only if HAVE_LOGB is defined. + + * fileio.c (Fcopy_file): Don't allow the copying of anything other + than regular files or symlink files. + +1993-10-24 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (read_key_sequence): Arg prompt is now a Lisp object. + Pass it to functions found in function-key-map and key-translation-map. + (Fread_key_sequence, command_loop_1): Calls changed. + +1993-10-22 Brian Fox (bfox@albert.gnu.ai.mit.edu) + + * config.h.in: Add #undef HAVE_UNISTD_H so configure can edit it + correctly. + +1993-10-21 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * process.c (status_notify): Don't read from process if filter is t. + (Fset_process_filter): Set or clear bit in input_wait_mask when nec. + +1993-10-19 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * data.c [hpux 7] (_MAXLDBL, _NMAXLDBL): New macro definitions. + +1993-10-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (read_key_sequence): Allow function in key-translation-map + just as in function-key-map. + +1993-10-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * buffer.c (Fdelete_overlay, Foverlay_put): Use marker_position, + not OVERLAY_POSITION, to get args for redisplay_region. + + * fileio.c (Fcar_less_than_car): Fix typo in previous change. + +1993-10-09 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * floatfns.c [hpux 7] (_MAXLDBL, _NMAXLDBL): New macro definitions. + + * fileio.c (Vafter_insert_file_functions): New variable. + (Vwrite_region_annotate_functions): New variable. + (Qcar_less_than_car): New variable. + (Fcar_less_than_car): New function. + (syms_of_fileio): Make Lisp variables and function available. + staticpro Qcar_less_than_car. + (a_write, build_annotations): New functions. + (Fwrite_region): Call them. + (Finsert_file_contents): Run the Vafter_insert_file_functions. + +1993-10-08 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/sco4.h (SYSTEM_TYPE): Put into #if 0. + (BSTRING): Define only if HAVE_BCOPY. + +1993-10-08 Brian Fox (bfox@albert.gnu.ai.mit.edu) + + * search.c (skip_chars): Re-instate the check against the end of + the buffer, ignoring cryptic comment. + +1993-10-07 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (read_key_sequence): Allow function-key-map to have a + function as the binding; call the function and use its value. + +1993-10-04 Brian J. Fox (bfox@ai.mit.edu) + + * minibuf.c (Fminibuffer_complete_word): GCPRO1 `completion' + during calls to Ftry_completion. + + * keyboard.c (read_key_sequence): Don't declare first_event; it is + no longer used. Change "#if 0" for first_event reading to + "#if defined (GOBBLE_FIRST_EVENT)". + +1993-10-03 Brian J. Fox (bfox@ai.mit.edu) + + * lisp.h: Doc fix. + + * minibuf.c (read_minibuf): Rewrite change of Sep 14. Save the + return value on the history list provided in the form that the + value is returned, iff the value is not equal to the front of the + history list. + +1993-10-03 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makefile.in: File removed. It is now generated by ../configure. + + * Makefile.in.in (LIBES): Add $(GNULIB_VAR) again at end. This + change to ymakefile was mysteriously lost. Were any others lost + too? + +1993-10-02 Brian J. Fox (bfox@ai.mit.edu) + + * minibuf.c (Fread_no_blanks_input): Change DEFUN to allow 2nd arg + to be optional. The code was already written correctly. + +1993-09-30 Brian J. Fox (bfox@ai.mit.edu) + + * systty.h: If POSIX and HAVE_UNISTD_H are defined, and unistd.h + hasn't already been included, include it. + + * s/linux.h (POSIX_SIGNALS): Comment fix. + +1993-09-30 Brian Fox (bfox@albert.gnu.ai.mit.edu) + + * Makefile.in.in (ALL_CFLAGS): Make sure that `.' is searched + before `${srcdir}' when looking for include files. + +1993-09-28 Jim Blandy (jimb@geech.gnu.ai.mit.edu) + + * termhooks.h (enum event_kind): Doc fix. + +1993-09-27 Brian Fox (bfox@ai.mit.edu) + + * ymakefile: Merged into Makefile.in.in. + + * Makefile.in.in: New file. Now ../configure creates Makefile.in + from Makefile.in.in, and creates Makefile from Makefile.in. + ymakefile no longer exists, and xmakefile is never created. + +1993-09-24 Brian Fox (bfox@ai.mit.edu) + + * textprop.c (validate_plist): Add declaration for `list' + argument. + + * frame.c (Fhandle_switch_frame): Doc fix. + +1993-09-25 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * puresize.h: [MULTI_FRAME]: Increase PURESIZE to 220000. + +1993-09-16 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/sunos4-1.h (LIBS_SYSTEM): Use -lresolv if it seems appropriate. + + * config.h.in: Add #undef HAVE_RES_INIT. + +1993-09-14 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * m/mips4.h (LIB_STANDARD): Add a second -lc after crtn.o. + +1993-09-13 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * pwd.h: File deleted. + + * intervals.c (graft_intervals_into_buffer): New arg INHERIT. + + * editfns.c (Finsert_buffer_substring): Pass extra arg to + graft_intervals_into_buffer. + * insdel.c (insert_from_string): Likewise. New arg INHERIT. + (insert_from_string_before_markers): New arg INHERIT. + + * search.c (Freplace_match): Call Finsert_and_inherit. + + * editfns.c (Finsert_and_inherit): New function. + (Finsert_and_inherit_before_markers): New function. + (Finsert, Finsert_before_markers): Pass new arg to insert_from_string*. + * minibuf.c (Fminibuffer_complete_word): + Pass new arg to insert_from_string*. + * doc.c (Fsubstitute_command_keys): Pass new arg. + * abbrev.c (Funexpand_abbrev, Fexpand_abbrev): Pass new arg. + + * s/aix3-2.h (AIX3_2): Defined. + * m/ibmrs6000.h (LIBS_MACHINE): Include -lrts, -liconv only if AIX3_2. + + * xterm.h (HAVE_X11R4): If AIX, do not define HAVE_X11R4. + +1993-09-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * sysdep.c (bzero, bcopy, bcmp): Don't define as functions + if they are defined as macros. + +1993-09-11 Roland McGrath (roland@baalperazim.gnu.ai.mit.edu) + + * lread.c, callproc.c, filelock.c: Include , not "paths.h". + +1993-09-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/linux.h (LIBS_MACHINE): Make definition empty. + +1993-09-10 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Support configuring in a different directory when ${srcdir} has + already been configured. + * frame.c, xfns.c, xdisp.c, casetab.c, cm.c, casefiddle.c, xterm.c, + xrdb.c, eval.c, doc.c, lread.c, callint.c, cmds.c, term.c, fns.c, + data.c, alloc.c, unexconvex.c, fileio.c, indent.c, bytecode.c, + sunfns.c, xmenu.c, buffer.c, textprop.c, marker.c, print.c, + emacs.c, dispnew.c, syntax.c, undo.c, mocklisp.c, scroll.c, + search.c, ralloc.c, unexaix.c, unexec.c, unexenix.c, unexmips.c, + unexsunos4.c, vmsfns.c, vmsmap.c, dired.c, xselect.c, floatfns.c, + filelock.c, sysdep.c, abbrev.c, minibuf.c, xfaces.c, callproc.c, + insdel.c, intervals.c, process.c, vm-limit.c, window.c, + vmsgmalloc.c, keymap.c, editfns.c, keyboard.c, macros.c, vmstime.c: + Include instead of "config.h". + * ymakefile (ALL_CFLAGS): Put -I. before -I${srcdir}. + * Makefile.in (xmakefile): Use -I. in cpp run. + + * Makefile.in (clean): Use rm -f. + + * s/netbsd.h: New file. + * ymakefile (LIBES): Add $(GNULIB_VAR) again at end. + +1993-09-08 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * sysdep.c (stuff_char): Use input_fd. + (narrow_foreground_group, widen_foreground_group, init_sys_modes) + (init_baud_rate, init_sigio, request_sigio, unrequest_sigio): Likewise. + (change_input_fd): New function. + + * process.c (keyboard_descriptor): New variable. + (wait_reading_process_input, init_keyboard): Use it. + Also call change_input_fd. + (change_keyboard_wait_descriptor): New function. + * xterm.c (x_term_init): Call change_keyboard_wait_descriptor, + instead of dup2. Use the existing X desc number in fcntl calls. + * xterm.c (XTread_socket): Don't forget to clear out `mask'. + +1993-09-08 Francesco Potorti` (pot@cnuce.cnr.it) + + * filelock.c (fill_in_lock_short_file_name): Fix the crc + generation algorithm. + +1993-08-19 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * textprop.c (F{next,previous}_single_property_change): Doc fix. + +1993-09-15 Brian Fox (bfox@ai.mit.edu) + + * data.c: Add declaration for atof if not predefined. + + * xfns.c (XScreenNumberOfScreen): Move assignments out of + declarations for (dpy, dpyscr). + + * sysdep.c (sys_write): Keep trying to write out the data until + all of the data is written, or until we receive an error which is + not an interrupted write. + +1993-09-14 Brian Fox (bfox@ai.mit.edu) + + * keyboard.c (Qextended_command_history): New variable prevents + sharing of M-x command history with other commands that read + values in the minibuffer. + + * doprnt.c (doprnt): Use a fixed buffer to store the format + specification, but only if we are sure it will fit. Otherwise, + use alloca to get enough space. Don't allow negative size + specifications to core dump; instead, treat them as positive + ("%-20d" == "%20d"). + + * minibuf.c (read_minibuf): Don't add history item if it is + string-equal to the most recent history item. + +1993-07-09 Karl Berry (karl@cs.umb.edu) + + * dired.c (file_name_completion): Install case-preserving + changes from Emacs 18 for completion_ignore_case. + (completion_ignore_case): Declare. + +1993-09-01 Brian Fox (bfox@ai.mit.edu) + + * window.c (Fdelete_windows_on): Fix DEFUN to allow optional + second argument to appear. + +1993-08-30 Brian Fox (bfox@ai.mit.edu) + + * ymakefile (alloc.o): Remove explicit compilation rule, since it + is identical to the default rule, and `$<' doesn't work in + explicit rules in all "make"s. + +1993-08-27 Brian Fox (bfox@ai.mit.edu) + + * gmalloc.c (safe_bcopy): Compile if MEMMOVE_MISSING is defined, + but only if we aren't compiling for emacs. + + * sysdep.c (read_input_waiting): If the user specifies + `meta-flag', then notice characters with high-bit set. + + * Added fixes from Karl Berry for ISC-2.2. + * s/isc2-2.h (MEMMOVE_MISSING): Define. + (SIGNALS_VIA_CHARACTERS): Define. + (LIB_STANDARD): Do not include -lcposix. + (C_SWITCH_SYSTEM) [__GNUC__]: Do not use -traditional. + +1993-08-17 Brian Fox (bfox@ai.mit.edu) + + * alloca.c: Invert sense of conditional for entire file (GNUC >= + 2). Added `#else'. + + * xterm.c (x_wn_set_size_hint): Make recent window gravity + addition depend on "PWinGravity" being `#defined'. + +1993-08-14 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.19 released. + + * Makefile.in (mostlyclean): Don't delete emacs here. + (clean): Delete emacs and emacs-* here. + (distclean): Don't delete emacs-* here. + + * xselect.c (struct property_change): New field `arrived'. + (expect_property_change): Return struct property_change *. + Clear `arrived'. + (unexpect_property_change): Take one as argument. + (wait_for_property_change): Take one as argument. + If `arrived' is set, don't wait. + (wait_for_property_change_unwind): Corresponding changes. + (receive_incremental_selection): Corresponding changes. + (x_reply_selection_request): Corresponding changes. + (property_deleted_p): Function deleted. + + * xselect.c (x_handle_selection_clear): Redisplay. + + * search.c (compile_pattern): Cast result of re_compile_pattern. + + * emacs.c (init_cmdargs): Check openp result for 1, not != 0. + + * xterm.c (x_wm_set_size_hint): New args spec_x and spec_y. + Set the window gravity. All callers changed. + * xfns.c (Fx_create_frame): Pass the new args to x_wm_set_size_hint. + + * xmenu.c (Fx_popup_menu): Adjust coords so they are relative + to the inner window. + + * syswait.h: New file. + * sysdep.c, process.c: Include it. + * ymakefile (sysdep.o, process.o): Depend on syswait.h. + + * process.c (wait_reading_process_input): Exit without waiting + if wait_for_cell is already non-nil. + + * sysdep.c (mkdir, rmdir): Use wait_for_termination to wait. + Redirect descriptors 0...2 to /dev/null. + + * emacs.c (__CTOR_LIST__): Don't declare it on Linux. + + * filelock.c (getpwuid): Declare it as in xrdb.c. + (init_filelock): Don't use return value of strcpy. + + * fns.c (internal_equal): Typo in previous change. + + * xfns.c (x_set_frame_parameters): Don't die if just one of + height and width was set. Likewise left and top. + + * textprop.c (property_change_between_p): Test NULL_INTERVAL_P + in loop, before looking at next->position. + + * intervals.c (adjust_intervals_for_insertion): If inserting in middle + of interval that is sticky in neither direction, don't copy props. + (merge_properties_sticky): Handle non-list as front-sticky or + rear-nonsticky property. + +1993-08-13 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * fns.c (internal_equal): All markers in no buffer are equal. + +1993-08-13 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * config.h.in: Added #undef HAVE_XSCREENNUMBEROFSCREEN. + +1993-08-13 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xfns.c (XScreenNumberOfScreen): New function. + + * m/tek4300.h (C_DEBUG_SWITCH, SYSTEM_MALLOC): Defined. + + * m/iris4d.h (START_FILES, LIB_STANDARD): Don't define if USG5_4. + (DEFAULT_ENTRY_ADDRESS): Likewise. + (UNEXEC): Use unexelfsgi.o if USG5_4. + + * s/irix5-0.h (C_SWITCH_MACHINE): Deleted. + +1993-08-13 Frederic Pierresteguy (F.Pierresteguy@frcl.bull.fr) + + * m/dpx2.h: Delete conditionals for HAVE_X_WINDOWS and HAVE_SOCKETS. + +1993-08-13 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * m/iris4d.h (C_ALLOCA): Don't define it. + + * keyboard.c (kbd_buffer_store_event): Use bcopy to copy + a selection request event. + + * unexnext.c (get_data_region): Add cast to avoid warning. + +1993-08-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * ymakefile (prefix-args, filemode.o, lastfile.o): Dep on $(config_h). + + * floatfns.c (Flogb): Error at run time if not supported. + + * ymakefile (emacs.o): Depend on process.h and syssignal.h. + * emacs.c: Include process.h. + (init_cmdargs): Use EXEC_SUFFIXES. + + * s/irix5-0.h: Include alloca.h if appropriate. + Fix the #include file name. + (ULIMIT_BREAK_VALUE, GETPGRP_NO_ARG, NO_MATHERR): New macros. + (LIB_STANDARD): #undef it. + + * frame.c (Fdelete_frame): Add parens for clarity. + + * keyboard.c (read_char): Never start echoing if -batch. + + * minibuf.c (Qread_file_name_internal): New var. + (syms_of_minibuf): Set it up and protect it. + (Fminibuffer_complete_word): When completing a file name, + expand envvar references. + + * xterm.c (XTread_socket): Make copy_buffer unsigned. + + * s/usg5-4-2.h (HAVE_GETHOSTNAME): #if 0'd. + +1993-08-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/hpux8.h (LD_SWITCH_SYSTEM): Delete the -L options. + + * termhooks.h (enum event_kind): Delete final comma. + (meta_modifier): Delete final comma. + * window.c (enum window_loop): Delete final comma. + * xfns.c (enum resource_types): Delete final comma. + + * m/ibmrs6000.h (BIG_ENDIAN): Don't actually define it. + + * window.c (Frecenter): Preserve point in the buffer we change it in. + + * cmds.c (Fnewline): If we don't do the first SET_PT, + clear flag, so we don't do the second SET_PT. + + * keyboard.c (make_lispy_event): Clear all but 0377 in event->code. + + * xselect.c (receive_incremental_selection): Use bcopy, not memcpy. + + * m/tek4300.h (BIG_ENDIAN): Provide a value that matches the system. + + * config.h.in: Add #undef HAVE_FTIME. + + * ymakefile (ALL_CFLAGS): Use C_SWITCH_X_SITE before + C_SWITCH_X_SYSTEM and C_SWITCH_X_MACHINE. + + * s/hpux8.h (C_SWITCH_X_SYSTEM): Define instead of C_SWITCH_SYSTEM. + +1993-08-11 Shane Hartman (shane@nugget.spr.com) + + * buffer.c (verify_overlay_modification): Initialize endpos. + + * keymap.c (describe_buffer_bindings): Declare shadow just once. + +1993-08-10 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (x_calc_absolute_position): For negative coords, take + account of added width from window manager's outer window. + + * term.c (term_get_fkeys_define_1, term_get_fkeys_define): + New functions. + (term_get_fkeys): Use them. + + * m/tekxd88.h: Renamed from tekXD88.h. + (LIB_X11_LIB, LIBX11_SYSTEM): Make #undefs unconditional. + + * systty.h: Handle NO_TERMIO in principal HAVE_TERMIOS case. + + * xrdb.c (x_get_customization_string): Don't use value of strcpy. + + * floatfns.c (Fexpt): Use IN_FLOAT2. + +1993-08-10 Frederic Pierresteguy (F.Pierresteguy@frcl.bull.fr) + + * m/dpx2.h (HAVE_TCATTR): Macro #defined. + (HAVE_CLOSEDIR): #undef to allow use of closedir in sysdep.c. + (SIGTSTP): Commented #undef to allow use of ^Z in shell-mode. + (SIGNALS_VIA_CHARACTERS): #defined. + +1993-08-09 Paul Eggert (eggert@twinsun.com) + + * data.c (Fmod): New function; result is always same sign as divisor. + (syms_of_data): Add Smod. + * emacs.c (main): Invoke syms_of_floatfns even if LISP_FLOAT_TYPE + isn't defined, since `(floor A B)' is now needed for integers. + * floatfns.c (syms_of_floatfns): Likewise. + (Ffloor): Optional second operand specifies divisor, as in Common Lisp. + +1993-08-09 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * unexelf.c (unexec): Add casts for some comparisons. + (PATCH_INDEX): Likewise. + +1993-08-08 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.18 released. + + * term.c (term_init): Improve error messages (give sh commands). + + * xterm.c (struct font_info): New structure. + (x_font_table): Use struct font_info as elements. + (x_new_font): Corresponding changes. + Use XListFonts, not XListFontsWithInfo. + Use XFreeFontNames, not XFreeFontInfo. + Compare fonts by name, not by fid. + If already_loaded is 0, that counts as "yes". + + * minibuf.c (Qminibuffer_setup_hook, Vminibuffer_setup_hook): New vars. + (syms_of_minibuf): Set them up. + (read_minibuffer): Run the hook, if not empty. + + * dispnew.c (direct_output_forward_char): Fix previous change: + verify position is in range before calling Fget_text_property, + and calculate position properly. + + * s/bsd4-2.h, s/bsd4-3.h, s/umax.h, s/rtu.h, s/dgux.h (HAVE_VFORK): + Defined. + + * ymakefile (alloc.o): Don't use DEBUG_MOLE. + (DEBUG_MOLE): Deleted. + * gnu-hp300: File deleted. + + * .gdbinit: Don't put -q in args. + Don't unset TERM and TERMCAP--show them instead. + + * alloc.c (mark_object): Declare ptr volatile, or don't use it + after a recursive call. Delete the aborts if ptr is clobbered. + + * fileio.c (expand_and_dir_to_file): Use Fdirectory_file_name. + +1993-08-08 Jim Blandy (jimb@geech.gnu.ai.mit.edu) + + * config.h.in (HAVE_LOGB, HAVE_FREXP): Add #undefs for the + configuration script to edit. + * floatfns.c (Flogb): Use HAVE_LOGB and HAVE_FREXP, instead of + assuming that all USG systems have FREXP. + +1993-08-07 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * emacs.c (Vinvocation_directory): New var. + (init_cmdargs): Set up its value. + (Finvocation_directory): New function. + (main): Call init_buffer, init_callproc and init_cmdargs + before init_lread. + (syms_of_emacs): Install the function, and protect the variable. + * lisp.h (Vinvocation_directory): Declared. + * lread.c (init_lread): Normally put Vinvocation_directory + at end of Vload_path, if not present already. + +1993-08-06 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (set_poll_suppress_count): New function. + * eval.c (unwind_to_catch): Call set_poll_suppress_count. + + * xterm.c (x_term_init): Set the hooks before we call Fset_input_mode. + * keyboard.c (Fset_input_mode): Start polling, if appropriate. + At the beginning, stop polling. + Remove period from error message. + (stop_polling, start_polling): Check for interrupt_input. + (POLL_FOR_INPUT): Define whether or not target supports SIGIO. + + * m/ibm370aix.h (HAVE_VFORK, INTEL386, aix386): Add #undef. + +1993-08-05 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * eval.c (do_autoload): Don't report autoload failure + if the autoload definition now is a different one. + + * m/ibm370aix.h: Total rewrite; includes ibmps2-aix.h. + + * m/ibmps2-aix.h (SYSTEM_TYPE): Don't redefine it here. + + * syntax.c: Doc fix. + +1993-08-04 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * fns.c (Fyes_or_no_p): Use Qyes_or_no_p_history. + (syms_of_fns): Set up Qyes_or_no_p_history. + + * fileio.c (expand_and_dir_to_file): Remove final / by copying abspath. + + * data.c (Frem): Don't accept floats, just ints and markers. + + * m/vax.h [BSD4_2] (HAVE_FTIME): Defined. + +1993-08-03 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * m/7300.h (CRT0_COMPILE): Add -O and -Demacs. + * ymakefile (CRT0_COMPILE): Add missing #endif. + +1993-08-03 Jim Blandy (jimb@geech.gnu.ai.mit.edu) + + Changes for 3b1 suggested by Andy Fyfe + * 7300.h [__GNUC__]: #define HAVE_ALLOCA. + [not __GNUC__]: #define SWITCH_ENUM_BUG, C_ALLOCA, and STACK_DIRECTION. + (HAVE_SYSVIPC, USE_UTIME): #define these. + (memmove): We don't have this; call safe_bcopy. + (CRT0_COMPILE): #define this, so we always use the system's cc. + * config.h.in: Add #undefs for HAVE_MKDIR and HAVE_RMDIR, for + configure to edit. + * sysdep.c [not HAVE_MKDIR] (mkdir): New function, taken from tar, + for use on systems lacking the mkdir function. + [not HAVE_RMDIR] (rmdir): New function, taken from tar, for use on + systems lacking the rmdir function. + * ymakefile (crt0.o): Replace the compiler and switches with the + symbol CRT0_COMPILE. + (CRT0_COMPILE): If the system and machine description files have + left this undefined, then define it to do the same as the old + crt0.o rule used to. + +1993-08-02 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * sysdep.c (vfork): Move this outside the USG conditional. + +1993-08-02 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * frame.c (Fprevious_frame): New function, for parity with + Fnext_frame. + (syms_of_frame): Add defsubr for Sprevious_frame. + +1993-08-02 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * xdisp.c (display_menu_bar): Redisplay all lines occupied by the + menu bar, not just the first. + +1993-08-02 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (read_key_sequence): Use XFASTINT to convert value + of Flength to an int. + + * buffer.c (Fmove_overlay): Avoid initializer for Lisp_Object vars. + (verify_overlay_modification): Declare ostart, oend as Lisp_Object. + + * frame.c (Fset_frame_position): Doc fix. + +1993-08-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * From daveg@synaptics.com: + * keyboard.c (last_mouse_button): Renamed from button_up_button. + (last_mouse_x, last_mouse_y): Likewise. + (button_down_time): Replaces button_up_time. + (make_lispy_event): Set button_down_time. + Detect and report double-down and double-drag events. + (apply_modifiers_uncached): Put `double' or `triple' first. + (read_key_sequence): Convert unbound double-drag/down to drag/down. + + * fileio.c (Finsert_file_contents): Don't call prepare_to_modify_buffer + if inserting zero characters. + + * syntax.c: Doc fix. + +1993-07-31 Gregor Schmid (schmid@fb3-s7.math.tu-berlin.de) + + Handle `sticky' text properties. + * intervals.c (adjust_intervals_for_insertion): Handle insertion + between two unlike intervals via merge_properties_sticky. + (merge_properties_sticky): New function. + (graft_intervals_into_buffer): Leave handling of `sticky'-ness to + adjust_intervals_for_insertion, then merge properties of the + inserted text onto the old ones. + (textget_direct): New function. + (set_point): Fix calculating of fromprev. + (verify_interval_modification): Check for `read-only' property + and take its `sticky'-ness into account. + * intervals.h (MERGE_INSERTIONS): Define as 1. + (FRONT_STICKY): Add real definition. + (END_NONSTICKY): New macro. + (END_STICKY): Deleted. + (textget_direct, Qfront_sticky, Qrear_nonsticky): Declared. + * textprop.c (Qfront_sticky, Qrear_nonsticky): New variables. + (syms_of_textprop): Set them up. + + Change display code to handle the `invisible' text property. + * dispnew.c (direct_output_for_insert): Fail if character + just inserted has text properties. + (direct_ouput_forward_char): Fail if moving near invisible chars. + * indent.c (compute_motion): Compute correctly for invisible text. + (vmotion): Take care of invisible newlines. + * intervals.c (set_point): Ignore `invisible' property + unless property value is `hidden'. + * intervals.h (Qhidden): Declared. + * textprop.c (Qhidden): New variable. + (syms_of_textprop): Set up Qhidden. + * xdisp.c (try_window): Handle invisible newline at end of buffer. + (display_text_line): Don't display invisible text. + +1993-07-31 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * indent.c (Fmove_to_column): After we split a tab, make sure + to set last_known... consistently. + + * editfns.c (save_excursion_restore): Never make the buffer visible. + + * s/isc3-0.h: Don't mention dir `s/' in #include. + +1993-07-30 Jim Blandy (jimb@geech.gnu.ai.mit.edu) + + * config.h.in (HAVE_AIX_SMT_EXP): New #undef for configure to edit. + * m/ibmrs6000.h (LD_SWITCH_MACHINE): Don't mention + /usr/lpp/X11/bin/smt.exp unless HAVE_AIX_SMT_EXP is #defined. + + * config.h.in (HAVE_BCOPY): Add an #undef for this. + (BSTRING): #define this iff HAVE_BCOPY is #defined here. Ignore what + the system-description files say. They don't always make fine + enough distinctions between systems, and sometimes the bcopy + routines are available only with X windows. + + * config.h.in (HAVE_XSCREENRESOURCESTRING): New #undef for + configure to edit. + * xrdb.c (get_user_db): Test it to decide whether or not to try to + retrieve the screen-dependent resources. + + * xfns.c (Fx_open_connection): Test the CPP symbol + HAVE_XRMSETDATABASE to decide whether or not to call + XrmSetDatabase. + + * xfns.c (x_set_background_color): Change the foreground color of + the cursor, too. + +1993-07-30 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * editfns.c (syms_of_editfns): Just staticpro Vuser...name + and Vsystem_name; don't make them Lisp variables. + + * xselect.c (prop_location_identifier): Was named prop_location_tick. + (property_change_reply_identifier): Renamed from ...-tick. + (struct prop_location): Field `identifier' renamed from `tick'. + Various functions changed accordingly. + (x_handle_selection_request): Delete local struct var `reply'. + + * xselect.c (wait_for_property_change_unwind): New function. + (wait_for_property_change): Add unwind protect. + +1993-07-29 Jim Blandy (jimb@geech.gnu.ai.mit.edu) + + * xfns.c (syms_of_xfns): Don't staticpro Vx_resource_name; + DEFVAR_LISP takes care of that, and it's deadly to staticpro a + variable containing a string twice. + + * window.c (check_frame_size): Include the menu bar height in the + minimum frame height. + + * ymakefile (DEBUG_MOLE): Don't put parens around the command we + run to detect the GNU hp300 machines. If the make is still + somehow using csh, it complains about the parens. + +1993-07-29 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * frame.c (Fdelete_frame): New arg FORCE allows deletion + of last non-invisible frame. + + * s/usg5-4.h (bzero, bcmp, bcopy): New macros. + (LIB_STANDARD): Don't include libucb.a. + +1993-07-28 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * xfns.c (syms_of_xfns): Use DEFVAR_LISP, not DEFVAR_INT, for + Vx_pointer_shape. + +1993-07-28 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * cmds.c (Fnewline): Disable the "insert one position before" + optimization if it would screw up text property behavior. + * textprop.c (property_change_between_p): New function. + +1993-07-27 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (command_loop_1): + Call Qrecompute_lucid_menubar only if defined. + + * emacs.c (decode_env_path): Strip trailing slashes if there are any. + + * unexec.c (make_hdr): Use & in call to bzero. + + * xfns.c (Fx_rebind_key, Fx_rebind_keys): Functions deleted. + + * syntax.c (scan_sexps_forward): Delete extra Fcdr when analyzing + OLDSTATE. + + * xterm.c (x_iconify_frame): Handle case where frame was invisible. + + * s/hpux8.h (OLDXMENU_OPTIONS): Definition deleted. + + * ymakefile (really-oldXMenu): Pass down C_SWITCH_X_SYSTEM. + + * m/delta88k.h [USG5_4] (LIBX11_SYSTEM): Don't redefine in this case. + + * search.c (search_buffer): If n is 0, just return POS. + +1993-07-26 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/usg5-4.h (BROKEN_TIOCGETC, BROKEN_TIOCGWINSZ): Add #undefs. + + * window.c (Fset_window_buffer): Clear window_end_{pos,valid}. + + * dispnew.c (Fsleep_for): If arg is 0, return right away. + +1993-07-26 Francesco Potorti` (pot@spiff.gnu.ai.mit.edu) + + * m/delta.h (SWITCH_ENUM_BUG): Defined only for AT&T's pcc. + (BSTRING): Deleted because they are stubs to the memory funcs. + (memmove): Defined as safe_bcopy since memcpy is not safe. + (HAVE_X_WINDOWS): Does not conditionally define anything any more. + Added support fo the GNU C compiler bundled with R3V7. + +1993-07-26 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * puresize.h [MULTI_FRAME] (PURESIZE): Increased to 210000. + +1993-07-25 Sam Dooley (dooley@watson.ibm.com) + + * keyboard.c (kbd_buffer_store_event): Apply all the modifiers bits + before testing for quit_char and stop_character. Don't alter + event->code, though. + +1993-07-25 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xselect.c (wait_for_property_change): Eventually time out with error. + (x_reply_selection_request): XFlushQueue and UNBLOCK_INPUT + before calling wait_for_property_change. + (x_get_window_property): Simplify input blocking/unblocking. + Don't delete the property here. + (receive_incremental_selection): Delete property here. + Call XSelectInput to enable and disable PropertyChangeMask. + (x_get_window_property_as_lisp_data): And here. + + * process.c (wait_reading_process_input): Undo last two changes: + when wait_for_cell, do not check the keyboard. + + * filelock.c: Fix typo in previous change. + + * xselect.c (lisp_data_to_selection_data): New arg NOFREE_RET. + For a string, just return its data's address. + (x_handle_selection_request): Pass new arg. + If value comes back 1, don't call xfree. + + * xfns.c (MAXREQUEST): Defined. + (Fx_server_max_request_size): New function. + (syms_of_xfns): Set it up. + + * window.c (Fwindow_end): Don't assume WINDOW shows the current buffer. + + * s/386bsd.h (LOCALTIME_CACHE): Defined. + (HAVE_SETSID): Defined. + (LIB_STANDARD): Override, adding $(GNULIB_VAR). + + * emacs.c (main): Test LOCALTIME_CACHE. + + * filelock.c (getpwuid): Declare at top level, and not if __386bsd__. + + * keyboard.c (interrupt_signal): Tell Fdo_auto_save not to print msg. + Print "Auto-save done" here. + + * fileio.c (Fdo_auto_save): Temporarily clear Vquit_flag. + + * xfns.c (Fx_create_frame): Typo in previous change. + +1993-07-24 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * .gdbinit (xscrollbar): Fix typo specifying doc string. + + * process.c (Fprocess_status): Use Fget_process, to avoid error + if unknown process name. + + * xfaces.c (face_name_id_number): Use assq_no_quit, not Fassq. + +1993-07-23 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (command_loop_1): Run post-command-hook first thing. + + * xterm.c (redraw_previous_char): New function. + + * xfns.c (Fx_create_frame): Don't look for default font + if the caller has specified a valid font. Try several + alternative font patterns. + +1993-07-23 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * mem-limits.h: [_LIBC]: Define BSD4_2. + +1993-07-23 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/sco4.h (HAVE_SOCKETS): Define, if HAVE_INET_SOCKETS. + + * sunfns.c: Fix comment syntax. Put back the comment + saying that we don't maintain this file. + + * xterm.c (XTread_socket) [! HAVE_X11R5]: + Check for XK_Mode_switch and XK_Num_Lock, if defined. + + * m/hp9000s300.h (TEXT_START) [__GNUC__]: Define as 0. + + * intervals.h (Vinhibit_point_motion_hooks): Declared. + * textprop.c (syms_of_textprop): Set up Lisp var. + * intervals.c (set_point): Test it. + +1993-07-22 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/irix5-0.h (PTY_OPEN): Use sigaction, not sigsetmask. + + * s/386bsd.h (DECLARE_GETPWUID_WITH_UID_T): Declared. + * xrdb.c (getpwuid): Test DECLARE_GETPWUID_WITH_UID_T. + + * process.c (Fget_buffer_process): Delete doc string from + second alternative definition. + +1993-07-22 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * ralloc.c (ALIGNED, ROUNDUP): + Use `unsigned long int' instead of `unsigned int' for + casting addresses and sizes. It matters on the 64-bit Alpha. + + * mem-limits.h [_LIBC]: Just include , and skip + hairy #ifdef mess. + +1993-07-22 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (Fread_key_sequence): Doc fix. + (read_key_sequence): Handle Vkey_translation_map. + (kbd_buffer_get_event): Discard an event whose kind is no_event. + + * buffer.c (syms_of_buffer): Lisp var doc fixes. + + * m/att3b.h (NO_MODE_T): Defined. + + * intervals.c (graft_intervals_into_buffer): When TREE is null, + pass buffer as 2nd arg to reproduce_tree. + +1993-07-21 Paul Eggert (eggert@twinsun.com) + + * print.c (float_to_string): Don't use uninitialized pointer `cp'. + Set width to -1 at lose: and other places. + Default to .17g, not .20g. + +1993-07-21 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * buffer.c (Qmodification_hooks, Qinsert_in_front_hooks) + (Qinsert_behind_hooks): Moved here. + (syms_of_buffer): Lisp vars set up here. + * textprop.c: No longer here. + + * alloc.c (compact_strings): Add USE_TEXT_PROPERTIES conditional. + + * intervals.h (Ftext_property_not_all): Fix typo in decl. + + * s/sunos4-1.h (SUNOS_LOCALTIME_BUG): Defined. + + * frame.c (Fdelete_frame): Allow deletion if there is some other + visible (perhaps iconified) frame. Also allow deleting terminal frame + if there are X frames. + + * s/sunos4shr.h (memmove): Defined. + + * m/att3b.h (memmove): Defined as macro. + +1993-07-20 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile.in (xmakefile): Use CFLAGS after C_SWITCH_SYSTEM. + + * xfns.c (validate_x_resource_name): Call make_string properly. + + * m/next.h (X_NOT_POSIX): Defined. + + * s/sol2.h (BROKEN_TIOCGETC, BROKEN_TIOCGWINSZ): Add #undefs. + + * s/isc3-0.h (memmove): Delete extra parens in the safe_bcopy call. + + * m/ibmrs6000.h (LD_SWITCH_MACHINE): Add -bI:/usr/lpp/X11/bin/smt.exp. + +1993-07-19 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * eval.c (Fwhile): If mocklisp, test for nonzeroness. + + * s/sunos4shr.h (SYSTEM_MALLOC): Add #undef. + (GNU_MALLOC, REL_ALLOC): Defined. + +1993-07-19 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu) + + * ymakefile: config.h is in current directory, not ${srcdir}. + +1993-07-18 Jim Blandy (jimb@totoro.cs.oberlin.edu) + + * Version 19.17 released. + + * xfns.c (Fx_create_frame): Block input around call to + x_new_font. Test if the return value is a string, not if it's + nil; x_new_font can return things besides nil and strings, to + indicate error conditions. + + * window.c [not MULTI_FRAME] (Fdelete_windows_on): Set FRAME + argument to Qt, instead of trying to typecheck it. + + * ymakefile (config_h): Set this to ${srcdir}/config.h; all the + source dependencies mention $(config_h), but until now it never + had a value. + + * xfns.c (Fx_open_connection): Don't trust HAVE_XRMSETDATABASE; + use XrmSetDatabase only when HAVE_X11R5 is defined. + + * dispnew.c (direct_output_for_insert): By the time this function + is called, we have already inserted the character into the buffer; + the proper buffer position to pass to compute_char_face is point + - 1, not point. + +1993-07-17 Jim Blandy (jimb@totoro.cs.oberlin.edu) + + * Makefile.in (C_SWITCH_SYSTEM): New variable, set by top-level + Makefile. + (xmakefile): Pass it to the C preprocessor. + + * window.c (Fdelete_windows_on): New optional argument FRAME; if + nil, delete windows on all frames. If t, delete windows on the + selected frame only. If a frame, delete windows on that frame + only. + + * intervals.c (split_interval_left, split_interval_right): Change + OFFSET argument of these functions to be origin 0, not origin 1. + This is what all the callers currently want. + * intervals.c, textprop.c: All callers changed. + + * textprop.c (Ftext_property_not_all): Renamed from + Ftext_property_all, and changed sense of return value, so that it + returns useful information if not all characters have properties + EQ to value. Now all the existential and universal questions can + be asked. + + * textprop.c (syms_of_textprop): Don't forget defsubr for + Stext_property_all. + + * textprop.c (Ftext_property_any, Ftext_property_all): Use EQ to + compare property values, not Fequal. + + * xterm.c (x_term_init): Adjust message printed when we can't + connect to the X server. + + * xfns.c (Vx_resource_name): Renamed from Vxrdb_name, and made a + lisp-visible variable, so lisp/term/x-win.el can set it. Doc it + for "internal use only"; no need for NEWS entry. + (validate_x_resource_name): New function. + (Fx_get_resource): Doc fix. References to Vxrdb_name renamed. Call + validate_x_resource_name. + (x_window): References to Vxrdb_name renamed. Call + validate_x_resource_name. + (Fx_open_connection): References to Vxrdb_name renamed. Instead + of setting and validating its value here, just call + validate_x_resource_name. + (syms_of_xfns): Add DEFVAR_LISP for Vx_resource_name. + +1993-07-16 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (Vhelp_menu_bar_map): Deleted. + (menu_bar_items): Move elts for events in Vmenu_bar_final_items to end. + (syms_of_keyboard): Corresponding changes. + +1993-07-15 Jim Blandy (jimb@totoro.cs.oberlin.edu) + + Consistently use the mark bit of the root interval's parent field + to say whether or not the interval tree has been visited (and skip + it when revisited), and the mark bit of the plist field to say + whether or not that interval has been visited (and abort if + revisited); don't try to use the plist mark bit for both + meanings. + * alloc.c (mark_interval_tree): Don't test if the interval tree + has already been visited here; let the MARK_INTERVAL_TREE macro do + that; avoid function call overhead. Mark the interval tree as + having been visited by setting TREE->parent's mark bit. + (MARK_INTERVAL_TREE): If the tree has been visited (according to + I->parent's mark bit), don't call mark_interval_tree. + (gc_sweep): Rebalance the interval trees of those large strings + which are still alive. This also clears the mark bits of those + trees' root intervals' parent fields. + (compact_strings): Rebalance the interval tree of each small + strings which is still alive. This also clears the mark bits of + that tree's root interval's parent field. Since the string has + moved, update the root interval's parent pointer to contain the + new address. + * lisp.h (struct interval): Doc fix; explain the roles of the mark + bits of the parent and plist members. + + * termhooks.h: In order to avoid declaring struct input_event + (which contains Lisp_Objects) in those .c files which need access + to the terminal hooks but don't #include lisp.h (like cm.c), test + to see if the macro CONSP is #defined. We used to test XINT, but + config.h will #define that everywhere on systems that use tailored + tagging schemes. + + * window.c (Fnext_window, Fprevious_window): Put these docstrings + in comments; the strings are too long for some C compilers. + + * s/hpux9.h: Doc fix. + +1993-07-15 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * ymakefile (DEBUG_MOLE): New variable; a shell expression which + expands to -DDEBUG_MOLE on HP 9000/300's in the domain + gnu.ai.mit.edu, and the empty string on all other machines. + (alloc.o): Cite ${DEBUG_MOLE}, so DEBUG_MOLE is #defined when + compiling on mole. + +1993-07-15 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (read_char_menu_prompt): If the user rejects a menu, + return t. This makes read_char also return t. + (read_key_sequence): If read_char returned t, return -1. + (Fread_key_sequence): If read_key_sequence returned -1, quit. + (command_loop_1): If read_key_sequence returned -1, loop around. + +1993-07-15 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * keyboard.c (menu_bar_one_keymap): If the key's binding is the + symbol `undefined', don't try to take that symbol's cdr before + passing it to menu_bar_item; pass the `undefined' binding itself, + so menu_bar_item can remove bindings for the same key from result. + +1993-07-14 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * buffer.c (Fbuffer_local_variables): For local var that is unbound, + put just the symbol in the result, not a cons of (symbol . value). + + * keyboard.c (Qdisabled_command_hook): New variable. + (Vdisabled_command_hook): Deleted. + (syms_of_keyboard): Corresponding changes. + (Fcommand_execute): Use Qdisabled_command_hook. + + * alloc.c (mark_object) [DEBUG_MOLE]: Add abort at beginning. + + * keyboard.c (Vhelp_menu_bar_map): New var. + (syms_of_keyboard): Set up Lisp var for it. + (menu_bar_items): Use Vhelp_menu_bar_map. + +1993-07-14 Jim Blandy (jimb@totoro.cs.oberlin.edu) + + * textprop.c (Ftext_property_any, Ftext_property_all): New + functions, from David Gillespie. + * intervals.h (Ftext_property_any, Ftext_property_all): Declare them. + + * keyboard.c (read_key_sequence): Accept both strings and vectors + as bindings in function-key-map. + * keymap.c (Vfunction_key_map in syms_of_keymap): Doc fix. + + * keyboard.c (Fsuspend_emacs): Pass selected_frame as the first + argument to change_frame_size, not 0. This function may be called + in an Emacs compiled with multi-frame support. + +1993-07-13 Jim Blandy (jimb@totoro.cs.oberlin.edu) + + * xterm.c (XTread_socket, UnmapNotify case): Add missing comment + terminator. + + * intervals.c (graft_intervals_into_buffer): Properly compute + length of buffer. + +1993-07-13 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * minibuf.c (Fdisplay_completion_list): Run completion-setup-hook. + +1993-07-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * textprop.c (Qinsert_in_front_hooks, Qinsert_behind_hooks): New vars. + (syms_of_textprop): Set them up. + * lisp.h (Qinsert_in_front_hooks, Qinsert_behind_hooks): Declared. + (Qmodification_hooks): Declared. + + * intervals.c (verify_interval_modification): + For insertion, run the insert-in-front-hooks and insert-behind-hooks, + not the modification-hooks. + * buffer.c (verify_overlay_modification): New function. + (call_overlay_mod_hooks): New function. + * insdel.c (prepare_to_modify_buffer): Call that. + + * keyboard.c (Qundefined): New variable. + (syms_of_keyboard): Set up Qundefined. + (menu_bar_items): Don't reverse the items. + Process the maps in reverse order. + (menu_bar_item): If definition is `undefined', + delete any menu bar item already made, and don't make one. + +1993-07-12 Jim Blandy (jimb@totoro.cs.oberlin.edu) + + * print.c (float_to_string): Distinguish between a precision of + zero and an omitted precision. Do allow %.0f to produce strings + containing no decimal point or exponent. + (syms_of_print): Doc fix for float-output-format. + + * xfns.c (x_set_frame_parameters): Don't set the frame's size and + position unless those parameters are actually specified in ALIST. + + * syntax.c (Fmodify_syntax_entry): Doc fix. + +1993-07-12 Frederic Pierresteguy (F.Pierresteguy@frcl.bull.fr) + + * xterm.c, sysdep.c (F_SETOWN_BUG): Defined. + * m/dpx2.h: New file. + +1993-07-10 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * textprop.c (set_properties): Call modify_region. + (remove_properties): Call modify_region before record_property_change. + (add_properties): Likewise. + +1993-07-10 Jim Blandy (jimb@totoro.cs.oberlin.edu) + + * xrdb.c: Implement search for app-defaults directory and + localized default databases, along with some other functionality + provided by Xt. + #include , since we call sprintf. + [emacs] (malloc, realloc, free): #define these to xmalloc, + xrealloc, and xfree. + (x_get_string_resource, file_p): Add forward declarations for + these. + (x_customization_string): New variable. + (x_get_customization_string): New function. + (gethomedir): Return malloc'ed space of the right size, instead of + writing into a fixed-size buffer; this means that our callers do + not impose an arbitrary limit on file name length. + (magic_file_p): Rewrite of decode_magic; actually do the + substitutions, instead of expanding all %-escapes to "". Support + the customization string. Return 0 or the expanded file name, + instead of just zero or one. Allocate the space for the expanded + file name ourselves, instead of writing into a fixed-size buffer + passed to us; this removes an arbitrary limit. + (search_magic_path): Rewrite of magic_searchpath_decoder. Return + 0 or the expanded file name, instead of just zero or one. + Allocate the space for the expanded file name ourselves, instead + of writing into a fixed-size buffer passed to us; this means that + our callers do not impose an arbitrary limit on file name length. + (get_system_app): Changed to work with search_magic_path. + (get_user_app): Rewritten to work with search_magic_path, and not + to assume that the values of XAPPLRESDIR is a single directory. + (get_user_db): Properly use the new version of gethomedir. + (get_environ_db): Remove arbitrary limit on length of host name. + (x_load_resources): Take a new argument, myname. Call get_user_db + early to obtain the customization string. + Changes to stand-alone testing code. + * xfns.c (Fx_open_connection): Set Vxrdb_name early, and pass it + to x_load_resources. + + * keymap.c (syms_of_keymap): Doc fix. + +1993-07-09 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * process.c (wait_reading_process_input): If wait_for_cell, do call + swallow_events and do_pending_window_change when appropriate. + +1993-07-08 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * editfns.c (region_limit): Declare Vmark_even_if_inactive. + + * callint.c (syms_of_callint): + Fix DEFVAR_LISP for Vmark_even_if_inactive to use right + Lisp symbol name (without V prepended). + +1993-07-08 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * callint.c (check_mark): Don't check mark-active unless in + transient-mark-mode. + For inactive mark, signal mark-inactive instead of error with a + message. + * editfns.c (region_limit): Don't error if Vmark_even_if_inactive + is set. + When the mark is inactive and that is a no-no, signal + mark-inactive instead of using error with a message. + * data.c (syms_of_data): Staticpro Qmark_inactive. + * data.c: Define Qmark_inactive. + (syms_of_data): Initialize it. + * lisp.h: Declare Qmark_inactive. + +1993-07-07 Jim Blandy (jimb@geech.gnu.ai.mit.edu) + + * editfns.c (Fformat): Since floats occupy two elements in the + argument list passed to doprnt, we must use separate indices for + the array of arguments passed to Fformat, and the array of + arguments to be passed to doprnt. + + * .gdbinit: Add size to geometry spec. + Specify sevenbit-strings in set print. + (xfloat): New command. + +1993-07-06 Jim Blandy (jimb@geech.gnu.ai.mit.edu) + + * Version 19.16 released. + + * ymakefile [not ORDINARY_LINK && __GNUC__ && __GNUC__ > 1 && not + LIB_GCC] (LIB_GCC): Use "$(CC)" instead of "gcc". + +1993-07-06 Jim Blandy (jimb@geech.gnu.ai.mit.edu) + + * textprop.c (copy_text_properties): Pass a copy of POS to + validate_interval_range; that function increments its arguments, + which isn't what we want. + + * fns.c (Fsubstring, concat): Pass all six arguments to + copy_text_properties. + + * intervals.c (find_interval): Doc fixes, computation of + tree->position rearranged for clarity. + + * intervals.c (find_interval): Consistently treat POSITION as an + actual buffer position, i.e. origin 1. The old code seemed + undecided on this point. Treat the end of the buffer as being + part of the rightmost interval. + (adjust_intervals_for_insertion): Consistently treat POSITION as + origin 1. + (interval_deletion_adjustment): The exception: FROM should be + origin zero here. Consistently treat it as such. Simplify code + which shrinks and possibly deletes intervals. + (adjust_intervals_for_deletion): Treat start as origin 1; our + caller does. + (set_point): Use buffer positions throughout, not a mix of buffer + posns and origin zero posns. + (get_local_map): Remove special case for POSITION at end of buffer; + find_interval handles that case correctly. + (verify_interval_modification): Remove special case for START at + end of buffer. + * textprop.c (validate_interval_range): End-of-buffer/string + positions no longer need special handling. + + * intervals.c (make_new_interval): #if 0 this out. Nobody calls it. + + * textprop.c (copy_text_properties): New function, from David + Gillespie. + * intervals.h: Declare copy_text_properties. + * fns.c: #include "intervals.h". + (Fsubstring): Copy text properties to result string. + (concat): Copy text properties to result string. + * ymakefile (fns.o): Note that this depends on INTERVAL_SRC. + + * print.c: Get rid of extra space at the end of print syntax for + strings with intervals. + [USE_TEXT_PROPERTIES] (print): Don't print a space before the + interval property lists. + [USE_TEXT_PROPERTIES] (print_interval): Print a space before this + internal's properties, not after. + + * m/pmax.h (C_SWITCH_X_MACHINE): Set this to + "-DNeedFunctionPrototypes=0", to avoid lossage in DEC X11 header + files. + * ymakefile (really-oldXMenu): Pass C_SWITCH_X_MACHINE to the + oldXMenu make. + + * doc.c (Fsubstitute_command_keys): Pass all five arguments to + describe_map_tree. + +1993-07-05 Jim Blandy (jimb@geech.gnu.ai.mit.edu) + + Compare the values of text properties using EQ, not Fequal. + * intervals.c (intervals_equal): Call EQ, not Fequal. + * textprop.c (interval_has_all_properties, add_properties): Same. + + * textprop.c (validate_interval_range): Don't increment both + *begin and *end if they point to the same thing. + (validate_plist): Call QUIT while scanning LIST. + + * intervals.c (intervals_equal): Test the return value of Fequal + against Qnil, not 0. + + * keyboard.c (Vdouble_click_time): Renamed from double_click_time, + and made a Lisp_Object instead of an int. + (make_lispy_event): If Vdouble_click_time is t, impose no time + limit on double-clicks. + (syms_of_keyboard): DEFVAR_LISP (not DEFVAR_INT) + Vdouble_click_time (not double_click_time), and adjust doc string + to say that `nil' means no double clicks, and `t' means no time + limit. + +1993-07-04 Jim Blandy (jimb@churchy.gnu.ai.mit.edu) + + * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): New + accessors. + + * s/sunos4-1.h (LIBS_SYSTEM): Don't link against -lresolv; that's + only needed for misconfigured systems. + +1993-07-04 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keymap.c (describe_map_tree): When inserting TITLE, mention PREFIX. + Insert newline at end, if inserted anything else. + (describe_buffer_bindings): Corresponding changes. + For minor mode maps, build up a title string, + then let describe_map_tree insert it. + + * eval.c (Fsignal): Clarify error message. + +1993-07-03 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (read_char): After Fgarbage_collect, call redisplay. + +1993-07-03 Jim Blandy (jimb@churchy.gnu.ai.mit.edu) + + * frame.c (Fredirect_frame_focus): Allow redirection of focus of + dead frames. + + * s/sunos4-1.h (LIBS_SYSTEM): Make this be -lresolv, so we get the + versions of gethostbyname and such that use the DNS. + +1993-07-03 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * fileio.c (Frename_file): + After prompting for ok-if-already-exists, pass only nil or + t to copy-file, never an integer. + +1993-07-02 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keymap.c (Faccessible_keymaps): Doc fix. + +1993-07-02 Jim Blandy (jimb@churchy.gnu.ai.mit.edu) + + * textprop.c (set_properties): Don't try to make undo records if + OBJECT is a string. + +1993-07-02 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (read_key_sequence): When inserting `menu-bar' prefix, + modify the position field to prevent doing so twice. + Do all these forms of event expansion after replayed events also. + Set last_real_key_start before each key. + Use last_real_key_start in criterion for being the first event. + + * process.c (wait_reading_process_input): Do include the keyboard + in the select, if read_kbd was a cons cell. + +1993-07-01 Jim Blandy (jimb@churchy.gnu.ai.mit.edu) + + * xterm.c (XTread_socket): When handing non-synthetic + ConfigureNotify events, don't refer to the parent window + descriptor. + + * textprop.c (set_properties): Add undo records to remove entirely + new properties. Only record old property values for those + properties whose values have changed. + +1993-07-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * callint.c (Vmark_even_if_inactive): New var, with Lisp variable. + (check_mark): Use it. + +1993-07-01 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * xfaces.c [XOS_NEEDS_TIME_H]: #undef USG while #including + , so that file doesn't try to define struct timeval and + struct timezone. + + * xterm.c (frame_highlight, frame_unhighlight): Don't test + Vx_no_window_manager. BLOCK_INPUT around the border manipulation + calls. + +1993-06-30 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * xterm.c (XTread_socket): Initialize event_found to zero, and + pass a zeroed timeout to select, not a null pointer; the latter + means "wait forever". + + * s/hpux8.h (random, srandom): No need to define these to be + foo_random and foo_srandom; autoconf should autodetect when the + real random functions are available. + + * xdisp.c (redisplay): If we're not already showing the region, + then don't disable the single-line optimizations just because the + mark isn't where we last displayed it. + +1993-06-30 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (syms_of_keyboard): Doc fix. + (Vhelp_char): Renamed from help_char. + (Vprefix_help_command): New Lisp variable. + (read_key_sequence): Use that, for help char after prefix key. + + * keyboard.c (kbd_buffer_get_event): + Clear f before calling mouse_position_hook. + + * emacs.c, callproc.c (PRIO_PROCESS): Definition deleted. + + * vm-limit.c (check_memory_limits): Make data_size and five_percent + unsigned long. + +1993-06-30 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * keyboard.c (kbd_buffer_get_event): Correctly generate + switch-frame events when reading mouse motion events. + +1993-06-29 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * xterm.c: Add CPP tangle from process.c to get definitions for + FD_SET, etcetera. + (XTread_socket): Use those macros when testing for dropped connection. + +1993-06-29 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * alloc.c (mark_object): Add aborts in Lisp_Symbol case. + + * keymap.c (describe_map_tree): Insert key_heading here. + New arg TITLE. + (describe_buffer_bindings): Corresponding changes. + + * process.c (wait_reading_process_input): Use SIGIO only if defined. + + * keymap.c (shadow_lookup): New function. + (describe_map_2): Call it. SHADOW is now a list of maps. + (describe_vector): Likewise. + (describe_map): SHADOW is now a list of maps. + (describe_map_tree): Likewise. + (describe_buffer_bindings): Build suitable list to pass as SHADOW. + (Faccessible_keymaps): New arg PREFIX. Callers changed. + (describe_map_tree): New arg PREFIX. + (Fdescribe_bindings): New arg PREFIX. + Pass to describe_buffer_bindings along with buffer. + (describe_buffer_bindings): Extract PREFIX and pass along. + +1993-06-28 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keymap.c (describe_map_2): Cleanups. + Check there's no previous definition in same keymap. + +1993-06-24 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * keyboard.c (read_char): Don't do idle autosaves if we're not + interactive. + +1993-06-23 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * xfns.c (Fx_create_frame): Check for internalBorder resource, as + well as internalBorderWidth. + + * xterm.c (XTread_socket): Remove #if 0''s around code which tests + for dropped connection (i.e. sigio but no events). + +1993-06-22 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * keyboard.c (menu_bar_items, read_key_sequence): Use + current_global_map, not global_map; the latter is only meant to be + used for initial_define_key. + * commands.h: Doc fix. + + * commands.h (Vglobal_mouse_map): Removed; unused. + * xfns.c (Vglobal_mouse_map): Same. + + * buffer.c (list_buffers_1): Make desired_point a lisp object; set + it to nil, unless we find the current buffer. + (Flist_buffers): Don't try to set point in the buffer list unless + list_buffers_1 actually returns an integer. Don't use a full + save_excursion; just save and restore the buffer. + + Separate parameter faces (those created and modified by the user) + from the computed faces (the combinations created by + compute_char_face), so that we don't waste global face id's. + * xterm.h (struct x_display): Replace the fields faces and n_faces + with fields param_faces, n_param_faces, computed_faces, + n_computed_faces, and size_computed_faces. + (FRAME_FACES, FRAME_N_FACES): Replaced by... + (FRAME_COMPUTED_FACES, FRAME_N_COMPUTED_FACES, FRAME_PARAM_FACES, + FRAME_N_PARAM_FACES): New macros. + * xfaces.c: Doc fixes. + (init_frame_faces): Call new_computed_face to create entries for + the default and mode line faces. Use the FRAME...PARAM_FACES + macros. + (free_frame_faces): Use the FRAME...PARAM_FACES and + FRAME...COMPUTED_FACES macros. Don't use the copy flag; all + parameter faces have real X resources, and all computed faces just + have copies. Free both the parameter and computed face arrays. + (new_computed_face): New function. + (intern_computed_face): Renamed from intern_frame_face; callers + changed. Call new_computed_face. + (ensure_face_ready, compute_char_face, compute_glyph_face): Use the + FRAME...PARAM_FACES macros. + (recompute_basic_faces): Use the FRAME...PARAM_FACES and + FRAME...COMPUTED_FACES macros. Produce the computed faces by + starting with the base faces and merging in the parameter faces. + (Fset_face_attribute_internal): Use the FRAME...PARAM_FACES + macros. Just call recompute_basic_faces if the default or mode + line faces have changed. + * xfns.c (Fx_list_fonts): Use the FRAME...PARAM_FACES macros. + * xterm.c (dumpglyphs): Use the FRAME...COMPUTED_FACES macros. + * dispextern.h (struct face): Remove the copy member. This is no + longer necessary; all computed faces are copies, and no parameter + faces are. + + * xfaces.c (face_vector, nfaces, nfaces_allocated): Make these + static. + + * xdisp.c (redisplay_window): Remember to compute end relative to + the start of the visible region, too. + +1993-06-21 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * xrdb.c (get_user_db): Remember to free the screen-local resource + string after we've merged its data into db. + + * keyboard.c (make_lispy_event): Added detection of double-click + and triple-click events. + (parse_modifiers_uncached, apply_modifiers_uncached): Same. + (read_key_sequence): Coerce double-clicks to clicks, and triple-clicks + to double-clicks or clicks, by analogy with drag events. + (double_click_time): Added variable. + * termhooks.h: Added multi-click event modifier bits. + +1993-06-21 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * textprop.c (Fremove_text_properties, Fadd_text_properties): + Really do next_interval when skipping the first interval. + +1993-06-20 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * xfns.c (Fx_open_connection): Remember to block input while + calling x_load_resources. + * xrdb.c: Undo change of June 19th; it was a BLOCK_INPUT problem, + not a server-specific bug. + + * alloc.c (Fgarbage_collect): If the minibuffer is active, don't + display the "...done" message; allow the minibuffer to show again. + + * config.h.in (HAVE_LONG_FILE_NAMES): Add an #undef, for autoconf + to chew on. Re-arrange macros to reflect the ordering of the + corresponding macros in configure.in, to facilitate this kind of + checking. + +1993-06-19 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * version 19.15 released. + +1993-06-19 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * puresize.h (PURESIZE): Up this to 205000 for MULTI_FRAME Emaces, + and 190000 for non-MULTI_FRAME Emaces. + + * xfaces.c (recompute_basic_faces): This shouldn't be declared static. + + * xrdb.c (get_user_db): Some NCD xterms seem to hang in + XScreenResourceString. Consult the ServerVendor and VendorRelease + variables to see if we're talking to such a server. + + * xterm.c (XTread_socket): Never treat a modifier key as a + non_ascii_keystroke. + + * emacs.c (Fkill_emacs): Pass third argument to shut_down_emacs. + * lisp.h (shut_down_emacs): Doc fix. + +1993-06-18 Jim Blandy (jimb@geech.gnu.ai.mit.edu) + + * frame.c (Fmake_frame_visible): Make this interactively callable; + frames can accept input while iconified, so it makes sense to put + this on a key. + + * xfaces.c: Add forward declaration for recompute_basic_faces. + + * fileio.c (Fset_visited_file_modtime): We're only passing two + arguments to the file name handler; use call2, not call3. + + Changes for Irix 4.0, tested this time: + * s/irix4-0.h: Get rid of our fake definitions for setpgrp and + getpgrp. + * callproc.c (Fcall_process): Go ahead and use the USG calling + convention for setpgrp. + * ymakefile (pre-crt0.o): Add rule for this. Perhaps it will help + separate-source-directory compilation. + * emacs.c (shut_down_emacs): Some USG systems #define + EMACS_HAVE_TTY_PGRP; call getpgrp as appropriate for such systems. + * sysdep.c (sys_suspend): Call getpgrp as appropriate for USG and + non-USG. + + * sysdep.c (rename): Make arguments const. autoconf #defines + const away on systems which don't have it; any system with + prototypes will declare the arguments const (the ones to which I + have access do); and systems without prototypes won't notice. + + * process.c [IRIX] (create_process): Don't put child in process + group zero before opening the tty; Irix is like USG in this + regard. + + * s/isc2-2.h, s/linux.h, s/usg5-4.h, m/alliant-2800.h, m/convex.h, + m/pfa50.h: Remove #definition of HAVE_CLOSEDIR; autoconf figures + this out. + + * xfns.c: Always #include "bitmaps/gray.xbm"; the bitmaps seem to + be missing on some systems, and there's no point in having + configure check; it should work fine to always use our copy. + + * minibuf.c (Fread_minibuffer): Add missing semicolon after + CHECK_STRING macro. + +1993-06-17 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * Version 19.14 released. + +1993-06-17 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * m/iris4d.h (LIB_STANDARD): Do *not* include -lbsd. We are + now calling the BSD[sg]etpgrp functions directly, so this library + is not needed; it just provides the BSD[sg]etpgrp functions under + the [sg]etpgrp names. + + * callproc.c [IRIX] (child_setup): Don't call setpgrp this time. + It's already been called up in Fcall_process, and create_process. + + * callproc.c (Fcall_process, child_setup): If IRIX is #defined, + call setpgrp with arguments, even if USG is #defined. + * process.c [IRIX] (create_process): Don't call setpgrp before + opening the pty. Call it after doing the TIOCNOTTY ioctl. + + * xfaces.c (compute_base_face): Initialize the face's stipple. + Although we don't use this feature now, face_eql notices it. + + * xfaces.c (compute_base_face): Set cached_index to an invalid + index, to avoid an unnecessary comparison. + + * keyboard.c (read_key_sequence): Don't confuse mock input with + function-key-map expansion, and continue reading mock events when + the current sequence is unbound. + + * keyboard.c (read_key_sequence): After providing a prefix symbol + for a mouse event, modify the mouse event to indicate that that + won't need to be done again, by putting the event's position + symbol in a list. + + * keyboard.c (read_key_sequence): When returning mock input which + has run off the end of the current maps, make sure the events get + echoed, and make it into this-command-keys. + + * keyboard.c (read_key_sequence): When re-reading a previously + read mouse click which requires a prefix symbol, make sure to set + last_real_key_start appropriately, so we can properly drop + button-down events. + +1993-06-17 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * ymakefile (really-oldXMenu): Pass C_SWITCH_MACHINE down. + + * intervals.c (verify_interval_modification): Don't just test + Qread_only prop; use INTERVAL_WRITABLE_P. + + * syntax.c (scan_lists, Fforward_comment): #if 0 the code + to treat two-character comment enders with a special shortcut. + +1993-06-16 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * config.h.in (HAVE_CLOSEDIR): Add an #undef for autoconf to + change. + * sysdep.c (closedir): Only define this if autoconf can't find + HAVE_CLOSEDIR. If we're running under solaris (defined (sun) && + defined (USG5_4)), then don't free the buffer separately. + + * keyboard.c (read_key_sequence): If we add events to a key + sequence that didn't come from the input stream (e.g. `mode-line' + prefixing a mouse click, or an expansion from function-key-map), + and end up with a sequence that runs off the end of the current + maps, return the entire key sequence, not just the initial portion + which was bound or unbound. + + * xdisp.c (redisplay_window): Do not subtract one from start + before passing it to the set_vertical_scroll_bar_hook. + + * lisp.h (CHECK_LIST, CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, + CHECK_VECTOR, CHECK_BUFFER, CHECK_WINDOW, CHECK_LIVE_WINDOW, + CHECK_PROCESS, CHECK_NUMBER, CHECK_NATNUM, CHECK_MARKER, + CHECK_NUMBER_COERCE_MARKER, CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT, + CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY): Wrap a do + ... while (0) around these compound statements to make them + syntactically equivalent to a single statement. + +1993-06-16 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * editfns.c (Finsert_buffer_substring): Doc fix. + +1993-06-16 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + Don't let the 'B' interactive spec default to buffers viewed in + any visible frame. + * buffer.c (Fother_buffer): Pass Qt as the second argument + to Fget_buffer_window. + * window.c (window_loop): In GET_BUFFER_WINDOW case, ignore + non-visible frames. + (Fget_buffer_window): Change doc string to mention that passing Qt + for the FRAME argument returns windows on visible frames only. + + Changes for correct pgrp behavior; approach suggested by Bob + Glickstein : + * m/iris4d.h (LIB_STANDARD): Do list -lbsd here. + * s/irix4-0.h (getpgrp, setpgrp): #define these to call BSDgetpgrp + and BSDsetpgrp. + (GETPGRP_NO_ARG): Don't #define this. + * emacs.c (main): Don't test GETPGRP_NO_ARG. + * sysdep.c (sys_suspend): Don't test GETPGRP_NO_ARG. + + * Makefile.in (CPP): New variable, set by the top-level Makefile. + + * m/delta88k.h (HAVE_GETTIMEOFDAY): Don't #define this; autoconf + takes care of that. + (LIBS_SYSTEM): Don't attempt to #define this if we already have a + definition of LIB_SYSTEM from s/usg5-4.h. + + * unexec.c [HPUX] (sbrk): This returns a void *. + + * window.c (check_frame_size): Allow minibuffer-only frames to be + one line high. + + * frame.c (store_frame_param): Fix error message punctuation. + + * callproc.c [IRIX] (child_setup): Don't set the pgroup. + + * s/isc3-0.h (memmove): #define this to call safe_bcopy. + + * buffer.c (list_buffers_1): Return the desired point. + (Flist_buffers): Put point there in the buffer summary. + + Bring mumbleclean targets into conformance with GNU coding standards. + * Makefile.in (mostlyclean): New target. + (clean): Just call mostlyclean. Get rid of ../etc/DOC too. + (distclean): Use clean to do most of the work. + Get rid of ../etc/DOC-* too. + (realclean): New target. + + * xdisp.c (redisplay_window): Do not subtract BEGV to compute + the scroll bar handle's end. + +1993-06-15 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xmenu.c (xmenu_show): Store 0 in *ERROR at the beginning. + + * fileio.c (Finsert_file_contents): Two new args, BEG and END. + + * intervals.c (adjust_intervals_for_insertion): By default, copy + properties from before the insertion. + +1993-06-14 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * syntax.c (scan_sexps_forward): Set state.comstart to before the + comment starter, not after. + + * xmenu.c (Fx_popup_menu): Call keymap_panes right in one-keymap case. + +1993-06-14 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * s/linux.h (LIBS_MACHINE, HAVE_SYSVIPC): Set the former to -lipc, + and #define the latter. + + * xdisp.c (display_text_line): Use temporary variable. + +1993-06-14 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * window.c (Fdelete_window): Handle deleting a parent of the + selected window. + +1993-06-13 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * fileio.c (Fset_visited_file_modtime): Don't give the handler + the filename as an argument. + + * syntax.c (scan_lists, Fforward_comment): Pass 0 as commentstop arg + to scan_sexps_forward. + (scan_sexps_forward, char_quoted): Now static. + (describe_syntax, describe_syntax_1): Now static. + + * undo.c (Fprimitive_undo): Rename arg to N to avoid conflict. + + * window.c (Fdelete_window): Mostly undo last change. + Don't initialize `frame' in the declaration. + + * Make prefix keys work with keymap inheritance + by creating an inheritance structure for each subkeymap + that we create in the inheriting keymap. + * keymap.c (access_keymap): New arg NOINHERIT. All calls changed. + (define_as_prefix): New function. + (Fdefine_key): Use them. + +1993-06-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * emacs.c (shut_down_emacs): New arg STUFF. Stuff input here. + (Fkill_emacs, fatal_error_signal): Pass new arg. + * xterm.c (x_connection_closed): Pass new arg. + + * dired.c (Ffile_attributes): Give -1 as size if size won't fit. + + * intervals.c (set_point): When moving over invis chars, + don't screw up at end of buffer. + + * eval.c (call5, call6): New functions. + (call1, call2, call3, call4): Renumber the args. + * lread.c (Fload): Use call5. + * fileio.c (Fcopy_file): Pass all the args to the handler. + (Fwrite_region): Use call6. + (Frename_file): Look for handler for newname. + (Fadd_name_to_file): Pass arg ok_if_already_exists to handler. + (Fmake_symbolic_link): Likewise. + (Ffile_newer_than_file_p): Check both file names for handler. + +1993-06-12 John Hughes (john@moonlite.CalvaCom.fr) + + * term.c (term_get_fkeys): Use `prior', not `previous', for %8/kP. + +1993-06-12 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * sysdep.c (child_setup_tty): Remove duplicate settings for VQUIT + and VINTR. + + * sysdep.c [ultrix] (init_sys_modes): Don't set LLITOUT; it + disables the meta key. + + * frame.c (Fmouse_position, Fset_mouse_position): Doc fix. + + * xfns.c [! HAVE_X11R5] (Fx_rebind_key): Recognize that + XK_Mode_switch and XK_Num_Lock are modifier keysyms too. + + * xterm.c (XTset_vertical_scroll_bar): Use double type for + intermediate results in scaling. + +1993-06-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * undo.c (syms_of_undo): Set up Qinhibit_read_only. + (Fprimitive_undo): Sometimes bind inhibit-read-only to t. + + * minibuf.c (read_minibuf): Set and use mini_frame only if MULTI_FRAME. + + * xdisp.c (echo_area_display): Use XFASTINT on ->height. + (copy_rope, copy_part_of_rope): Access *f as Lisp_Object. + + * window.c (Fdelete_window): Make `frame' a FRAME_PTR and use as such. + + * undo.c (record_delete): Always use XFASTINT on sbeg. + (Fprimitive_undo): Add missing `else'. Add USE_TEXT_PROPERTIES + conditional for calling Fput_text_property. Use XINT on high, low. + + * process.c (start_process_unwind): Use XINT. + + * syntax.c (Fset_syntax_table): Add XFASTINT. + +1993-06-12 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * xterm.c (x_error_quitter, x_io_error_quitter): Remove calls to + abort. We can always run Emacs with _Xdebug set to 1. + + * ymakefile (really-oldXMenu): Remember backslash to extend command. + + * keyboard.c (read_key_sequence): When we generate a prefix symbol + for a mouse event, store the actual mouse event in + unread_command_events, so we don't lose it if the symbol isn't + bound to a prefix. + + * config.h.in (HAVE_XRMSETDATABASE, HAVE_RANDOM, HAVE_LIBXBSD): + Add #undefs for these. + Dyke out code requesting -lXbsd and HAVE_RANDOM for XFREE386. + * xfns.c (Fx_open_connection): Test HAVE_XRMSETDATABASE instead of + NO_XRM_SET_DATABASE; the latter isn't used any more. + * m/delta88k, m/tekXD88.h, s/linux.h, s/usg5-4-2.h (HAVE_RANDOM): + Dyke out these #definitions; to avoid conflict with autoconf. + + * ymakefile (really-oldXMenu): Explicitly pass CC, CFLAGS, and + MAKE to the oldXMenu make. + + * window.c (Fprevious_window): Use FRAME_HAS_MINIBUF_P to decide + if the frame has a minibuffer; FRAME_MINIBUF_WINDOW points to the + surrogate on minibufferless frames, not nil. + +1993-06-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keyboard.c (read_char): Set c properly as a Lisp int. + (command_loop_1): Delete spurious use of XINT on c, a char. + + * frame.c: Doc fixes. + + * data.c (cons_to_long): Declare top, bot as Lisp_Object. + + * floatfns.c (Fexpt): New local `val' for making integer to return. + + * keymap.c (Fcopy_keymap): Check Fkeymapp value with NILP. + (get_keymap_1): Add missing semicolon. + (describe_vector_princ): Align to column 16. + + * emacs.c (main) [GETPGRP_NO_ARG]: Really pass no arg to getpgrp. + +1993-06-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xterm.c (XTmouse_position): Don't set *f at all unless we win. + + * process.c (read_process_output): Don't deactivate the mark. + Do restore Vdeactivate_mark, so that no one else deactivates it. + + * buffer.c (Fgenerate_new_buffer_name): GENTEMP is the value to + compare against IGNORE. + +1993-06-11 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + Interact properly with shells lacking job control (sh, rc, es...) + * sysdep.c [BSD] (inherited_pgroup): New variable. + (narrow_foreground_group, widen_foreground_group): New functions. + (init_sys_modes): Call narrow_foreground_group. + (reset_sys_modes): Call widen_foreground_group. + * emacs.c [BSD] (inherited_pgroup): Add extern declaration. + [BSD] (main): Set inherited_pgroup, and put ourselves in our own + pgroup. + +1993-06-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xfns.c (syms_of_xfns): Don't set up Qicon. + (Qicon): Declaration deleted. + * frame.h (Qicon): Declared. + + * frame.c (Fmouse_position): Set up defaults before calling the hook. + +1993-06-11 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * xdisp.c (redisplay_window): Don't call try_window_id if the + window isn't starting at the beginning of the line. + + * window.c (Fprevious_window): Typo. + +1993-06-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * ymakefile (alloca.o): Delete allocatem.c, not allocax.c. + + * textprop.c (Fset_text_properties): No special case for props = nil. + + * xfns.c (Fx_list_fonts): If names is 0, just return nil. + +1993-06-11 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * xterm.c (x_new_font): If font_names is zero, that's all the + indication we get that no matches were found. + + * s/isc3-0.h (LIB_X11_LIB): #undef this, to remove the value + inherited from usg5-3.h; ISC doesn't have libX11_s. + (LIBX11_SYSTEM): Link against the static -lc, not -lc_s. + +1993-06-10 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * lread.c (Fload): Forward all 4 args to magic-name handler. + +1993-06-10 Shane Hartman (shane@nugget.spr.com) + + * window.c (Fscroll_left): Make argument optional. + (Fscroll_right): Ditto. + +1993-06-10 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * search.c (Flooking_at, Fstring_match, fast_string_match, + search_buffer): Don't block input while calling searching and + matching functions. These functions may not call malloc under + Emacs anyway, and we need to be able to check for C-g. + + * xrdb.c (get_user_db): Get the screen-specific database too. + + * syntax.c (scan_lists, Fforward_comment): Call scan_sexps_forward + with the proper number of arguments. + + * sysdep.c: Remove clause for DGUX support of FASYNC; add clause + to #undef FASYNC if BROKEN_FASYNC is #defined. + + * filelock.c: Test HAVE_LONG_FILE_NAMES, not SHORT_FILE_NAMES, to + interface nicely with autoconf. + * m/delta.h: Don't #define SHORT_FILE_NAMES; autoconf does this + for us. + + * s/dgux.h: Changes from Paul M Reilly : + (BSD4_4, SVR4, HAVE_SETSID, HAVE_UNIX_DOMAIN): #define these. + (FIRST_PTY_LETTER): This is 'r', not 'p'. + (HAVE_TERMIO, SIGNALS_VIA_CHARACTERS): Don't #define these. + (HAVE_TERMIOS): #define these instead. + (XREBINDKEYSYM): Don't #define. + Test THIS_IS_YMAKEFILE instead of MAKING_MAKEFILE. + (sigmask, sigpause): #undef these after #including . + (LD_SWITCH_SYSTEM, START_FILES, LIBS_SYSTEM, LIB_GCC): #define + these to avoid problems with /lib/crt0.o. + (C_DEBUG_SWITCH, C_OPTIMIZE_SWITCH): #define these. + + * s/dgux.h (BROKEN_FASYNC): #define this. + + * fileio.c (Frename_file): Pass all arguments to the file name handler. + * eval.c (call4): New function. + +1993-06-09 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * s/linux.h (SIGNALS_VIA_CHARACTERS): Don't #define this. + + * process.c (sigchld_handler): Add cast, to avoid warnings on Linux. + (Fopen_network_stream): Cast the second argument to connect, to + avoid warnings on any system that provides prototypes for connect. + + * xdisp.c (display_text_line): Handle case where line ends in a + continuation character but we never actually displayed any buffer + text (due to minibuffer prompt). + + * xterm.c (x_is_vendor_fkey): New function. + (XTread_socket): Call it to recognize vendor-specific function keys. + + * s/dgux.h: Move #definition of SYSTEM_MALLOC outside of + MAKING_MAKEFILE conditional. No harm. + + * xfaces.c (init_frame_faces): Remove assumption that the selected + frame must be an X frame whenever there is already an X frame. + +1993-06-08 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * alloc.c (emacs_blocked_malloc, emacs_blocked_realloc): Cast the + return values of malloc and realloc, to placate compilers. + +1993-06-08 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * window.c (Fprevious_window): When changing frames, + use the new frame's minibuffer if any. + + * intervals.h (INTERVAL_WRITABLE_P): Fix backwards tests. + + * m/tekXD88.h: Rewrite by author. + +1993-06-08 Jim Blandy (jimb@totoro.cs.oberlin.edu) + + * Version 19.13 released. + + * ymakefile (C_DEBUG_SWITCH, C_OPTIMIZE_SWITCH): Remove these; + people shouldn't edit this file to choose optimization and + debugging switches anyway. ../configure will set CFLAGS to an + appropriate default, which they will be able to override. + * Makefile.in (xmakefile): Don't try to turn -g and -O in + CFLAGS into C_DEBUG_SWITCH and C_OPTIMIZE_SWITCH. CFLAGS should + be the sole source of such switches, so that setting CFLAGS + controls them completely. + +1993-06-07 Jim Blandy (jimb@totoro.cs.oberlin.edu) + + * config.h.in (HAVE_LIBDNET): New macro, to be defined by + ../configure. + * m/pmax.h (LIBS_MACHINE): Only put "-ldnet" here if HAVE_LIBDNET + is #defined. + +1993-06-07 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * fileio.c (syms_of_fileio): Set up Qset_visited_file_modtime. + (Fset_visited_file_modtime): Use the proper operation. + + * sysdep.c (init_baud_rate) [HAVE_TERMIOS]: Use cfgetospeed. + + * systty.h: Add NO_TERMIO conditional. + + * textprop.c (Fadd_text_properties): Don't treat the initial + interval specially, aside from splitting off the part starting + where we want to start changing things. + (Fremove_text_properties): Likewise. + For ending interval, split it left as in Fadd_text_properties. + (Fset_text_properties): Don't set starting interval if it goes + past END. Instead, split it left and set the left part. + + * keymap.c (Fdescribe_vector): Use current buf, not standard-output. + (describe_vector_princ): Add newline at end. + + * keymap.c (store_in_keymap, access_keymap): Use CHAR_META + when clearing excess high bits. + + * s/dgux.h (INTERRUPTIBLE_*): Fix spelling of macros. + + * s/hpux9.h (SYSTEM_MALLOC, GNU_MALLOC, REL_ALLOC): Definition and + #undefs deleted. + + * keymap.c: Doc fix. + + * buffer.c (Fdelete_overlay): Do nothing if overlay already deleted. + Bind inhibit-quit to t. + (Fmove_overlay): Properly handle changing buffers, or no prev buffer. + Bind inhibit-quit to t. + + * lread.c (syms_of_lread): Set up Qload. + (Fload): Handle magic file names. + +1993-06-07 Shane Hartman (shane@nugget.spr.com) + + * xterm.c (x_caught_error_message): Change type to char* from char*[]. + (X_CAUGHT_ERROR_MESSAGE_SIZE): New macro. + (x_error_catcher): Corresponding changes. + (x_catch_errors): Corresponding changes. + (x_check_errors): Do not free x_caught_error_message. + (x_uncatch_errors): Set x_caught_error_message to 0 after freeing it. + +1993-06-06 Paul Eggert (eggert@twinsun.com) + + * uaf.h (uaf$v_thursday): Fix misspelling of "thursday". + + * floatfns.c (Fceiling): Fix spelling of "ceiling". + +1993-06-06 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * ymakefile [__GNUC__ >= 2] (LIB_GCC): Delete spurious -L. + + * m/tekXD88.h (HAVE_RENAME): Deleted. + + * data.c (Ffset): Delete special check for t and nil. + + * xfaces.c (same_size_fonts): Compare only the width. + + * dispnew.c: Include lisp.h earlier (before termhooks.h). + + * editfns.c (Fcurrent_time_zone): Add alternative for !HAVE_TM_ZONE. + * systime.h [HAVE_TZNAME]: Declare tzname if not macro. + * config.h.in (HAVE_TZNAME): Add #undef. + +1993-06-06 Nobuyuki Hikichi (hikichi@sra.co.jp) + + * m/news-risc.h (NO_MODE_T): Defined. + (LINKER): Add #undef. + +1993-06-06 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keymap.c (access_keymap, store_in_keymap): Discard meaningless + high bits of a character event. + +1993-06-05 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * lisp.h: Don't declare malloc or realloc. + + * xfns.c [EMACS_BIT_MAPS]: Include gray.xbm from ./bitmaps. + + * xterm.c (x_new_font): Don't give up right away if XListFontsWithInfo + finds no fonts--try XLoadQueryFont anyway. + + * xfns.c (Fx_open_connection): Make `data' unsigned char. + + * window.c (Fset_window_configuration): If a window is supposed + to have a buffer, always give it one. + + * xmenu.c (Fx_popup_menu): Error if we don't get a window + or a frame somehow. + + * puresize.h: Test MULTI_FRAME, not HAVE_X_WINDOWS. + + * frame.c (Frubber_band_rectangle): Deleted. + (syms_of_frame): Don't defsubr it. + + * xselect.c (x_get_foreign_selection): Handle x_selection_timeout + as milliseconds, not as seconds. + (syms_of_xselect): Doc fix to match. + + * m/mips4.h (MIPS2): Comment out define. + (LIB_STANDARD): Delete -lisode. + +1993-06-04 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * syssignal.h [POSIX] [!__GNUC__] (sys_sigmask): Add declaration. + + * alloc.c (make_event_array): Ignore bits above CHAR_META. + + * frame.c [!MULTI_FRAME] (Fframep): New dummy definition. + (syms_of_frame): Defsubr that. + + * buffer.c (syms_of_buffer): Set up Lisp var inhibit-read-only. + * lisp.h (Vinhibit_read_only): Declared. + * buffer.c (Fbarf_if_buffer_read_only): Check Vinhibit_read_only. + * cmds.c (Fnewline): Use Fbarf_if_buffer_read_only. + + * intervals.h (INTERVAL_VISIBLE_P): Use textget. + (INTERVAL_WRITABLE_P): Use textget. + Check Vinhibit_read_only. + + * window.c (syms_of_window): Always defvar pop-up-frames + and pop-up-frame-function. + + * process.c (read_process_output): Deactivate the mark. + Save and restore Vdeactivate_mark. + + * xfns.c (x_set_menu_bar_lines_1): Adjust just the uppermost child + in a vertical split. Adjust the hight counter to the top. + (x_set_menu_bar_lines): Don't change overall frame height. + +1993-06-04 Francesco Potorti` (pot@cnuce.cnr.it) + + * filelock.c (MAKE_LOCK_PATH): If SHORT_FILE_NAMES allocates + different space and calls fill_in_lock_short_file_name. + (fill_in_lock_short_file_name): New function for 14-chars hashed + file names. Replaces fill_in_lock_file_name if SHORT_FILE_NAMES. + +1993-06-03 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * sysdep.c (wait_for_termination): Fix sigpause in POSIX_SIGNALS case. + + * xterm.c (x_catch_errors): Fill in missing array size in cast. + + * Makefile.in (xmakefile): Depend on ../config.status. + + * buffer.c (init_buffer): Init default-directory of minibuffer. + + * m/iris4d.h (LIB_STANDARD): Delete -lbsd. + + * keyboard.c (read_key_sequence): Reset fkey_map when we find + something at the end of Vfunction_key_map. + + * m/ibmrt-aix.h (HAVE_FTIME): Defined. + + * emacs.c (syms_of_emacs): Doc fix. + + * keyboard.c (read_char_menu_prompt): Now static. Add declaration. + + * dispnew.c (Fredraw_display): Redraw all visible frames. + (redraw_garbaged_frames): New function. + * xdisp.c (redisplay, echo_area_display): Use redraw_garbaged_frames. + + * dispnew.c (do_pending_window_change): No need to clear + FRAME_NEW_HEIGHT/WIDTH. Do test width != 0. + + * xterm.c (x_wm_set_size_hint): Handle XGetNormalHints returning 0. + + * xfns.c (x_set_frame_parameters): Process all parms in reverse order. + + * frame.h (FRAME_MINIBUF_WINDOW): Use minibuffer_window. + +1993-06-02 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * sysdep.c (init_sys_modes): Disable VLNEXT char. + Also VWERASE, VREPRINT, VDISCARD. + + * xfaces.c: Test XOS_NEEDS_TIME_H, not HPUX, for including time.h. + * s/sol2.h, s/hpux.h (XOS_NEEDS_TIME_H): Defined. + +1993-06-02 Francesco Potorti` (pot@cnuce.cnr.it) + + * ymakefile (alloca.o): Use temp names allocax.o, allocax.s + + * m/delta.h (MOTOROLA_DELTA): Defined. + (HAVE_SYSVIPC, BAT68K, BAT_ALLOCA): Deleted--obsolete. + (STACK_DIRECTION, HAVE_X_WINDOWS): Deleted--configure knows. + (C_SWITCH_MACHINE): Set to -ga if using the Green Hills compiler. + (LIB_STANDARD, LIB_MATH): Defined to the 68881 versions. + (LIBS_SYSTEM): -lbsd brings sigblock and sigsetmask. + (sigsetmask): Undefined--it is in -lbsd. + (LDAV_SYMBOL): Undefined--we have no such thing. + (KERNEL_FILE): Defined to "/sysV68". + (BSTRING, HAVE_SELECT, HAVE_UNISTD_H, HAVE_TIMEVAL): Defined. + (SIGNALS_VIA_CHARACTERS): Defined. + (memmove): Defined as memcpy--we have no memmove. + (SIGIO, INTERRUPT_INPUT): Undefined--not yet tested. + (SHORT_FILE_NAMES, CLASH_DETECTION): Defined. + +1993-06-02 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.12 released. + + * term.c (term_get_fkeys): Use correct names for F10 and up. + Use the key sequence, not the termcap cap name, in Fdefine_key. + + * intervals.c (copy_intervals): Don't adjust total_length at the end. + Set lengths of subintervals properly. + (balance_intervals): Balance left as well as right. + +1993-06-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * keymap.c (syms_of_keymap): Add missing 2nd arg to Fcons. + +1993-06-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * x/esix5-4.h: Redone by Joe Kelsey. + + * xterm.c (x_new_font): Take out last change. + + * s/386bsd.h (BSD4_2): Defined. + + * fileio.c (Fwrite_region): Don't fsync if autosaving. + + * s/irix4-0.h (GETPGRP_NO_ARG): Defined. + * emacs.c (shut_down_emacs): Handle GETPGRP_NO_ARG. + * sysdep.c (sys_suspend): Handle GETPGRP_NO_ARG. + + * fileio.c [HPUX9]: Don't include errnet.h. + + * hftctl.c (hft_alrm): Don't return a value. + Always declare to return void. + + * floatfns.c [!FLOAT_CHECK_ERRNO] (IN_FLOAT): New definition. + (Flog): Fix argument of `log'. + + * m/pmax.h (KERNEL_FILE): New override definition. + + * keyboard.c (read_key_sequence) [!USE_TEXT_PROPERTIES]: Fix typo. + (menu_bar_items) [!USE_TEXT_PROPERTIES]: Likewise. + + * s/isc3-0.h: #undef C_SWITCH_SYSTEM. + + * xselect.c (Fx_store_cut_buffer_internal): Handle empty string right. + + * xfaces.c (init_frame_faces): Don't look at selected_frame + unless it is an X frame. + + * xfns.c (x_window): Use Vxrdb_name for res_name field. + Delete the shortname stuff. + + * m/pmax.h (LIBS_MACHINE): Defined. + + * Version 19.11 released. + +1993-06-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * xfns.c (x_set_menu_bar_lines): Use FRAME_NEW_HEIGHT and ..._WIDTH. + + * m/sparc.h [__GNUC__ >= 2]: Don't include alloca.h. + + * xterm.c (x_new_font): If XListFontsWithInfo finds nothing, + try to load the font anyway. + + * ymakefile (emacs): Don't run inc-vers if ../lisp is read-only. + (C_SWITCH_SITE_1): New make variable. + (really-oldXMenu): Pass C_SWITCH_X_SITE_1 as C_SWITCH_X_SITE. + Use C_SWITCH_SITE_1 to pass C_SWITCH_SITE. + + * s/386bsd.h: New file. + +1993-05-31 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * fns.c (internal_equal): Don't let ints be equal to floats. + + * print.c (float_to_string): Skip `-' like digits when ensuring + result looks like a float. + + * data.c (Frem): Fix result sign properly. + + * xrdb.c [__bsdi__]: ALternate decls of getpwuid and getpwnam. + + * emacs.c (main) [BSD]: Delete the setpgrp (both times). + + * m/ibmrs6000.h (NLIST_STRUCT): Defined. + + * ymakefile (GETLOADAVG_OBJ): New macro. + (obj): Use that. + + * s/bsd386.h: New file. + + * term.c (term_get_fkeys): If not initialized, init Vfunction_key_map. + + * m/ibmrs6000.h: Delete ! __GNUC__ conditional. + (LD_SWITCH_MACHINE): Defined. + (ORDINARY_LINK): Defined unconditionally. + + * dispnew.c (update_frame): Make preempt_count positive. + Defend against negative baud_rate. + * scroll.c (calculate_scrolling): Defend against negative baud_rate. + + * mem-limits.h [__bsdi__]: Define BSD4_2. + + * xfns.c (x_window): In XSetClassHint, use a shortened version + of the frame name. + + * s/hpux8.h (C_SWITCH_SYSTEM): Fix typo in X11R5 dirname. + + * xterm.c (XTread_socket, case KeyPress) [HPUX]: Test IsModifiedKey. + + * keyboard.c (kbd_buffer_get_event): + Shorten the first MULTI_FRAME conditional. + + * s/usg5-4-2.h (HAVE_VFORK): Deleted. + +1993-05-31 James Clark (jjc@jclark.com) + + * xselect.c (x_reply_selection_request): Call XFlushQueue. + + * window.c (Fset_window_buffer): Set window's force_start to Qnil. + +1993-05-31 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * syntax.c (Fforward_comment): Set point to where scan stops, + thus moving acros whitespace. When moving fwd, treat Sendcomment + as whitespace; likewise for Scomment when moving back. + (scan_sexps_forward): New arg COMMENTSTOP. + (Fparse_partial_sexp): Likewise. + + * xfns.c (Fx_create_frame): Use bitmapIcon, not iconType. + +1993-05-30 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * data.c (float_arith_driver): Detect division by zero in advance. + (arith_driver, Frem): Likewise. + + * xfns.c (Fx_list_fonts): Handle 0 for FRAME_FACES (f) [face_id]->font. + + * print.c (Fwith_output_to_temp_buffer): Doc fix. + + * sysdep.c (wait_for_termination): Delete LINUX conditionals. + + * s/linux.h (HAVE_TCATTR): Deleted. + (BSD): Don't define. + (read, write, open, close): Defined. + (INTERRUPTIBLE_OPEN, INTERRUPTIBLE_CLOSE, INTERRUPTIBLE_IO): Defined. + (C_SWITCH_SYSTEM): Defined. + + * xterm.c: Include systty.h; don't mess with FIONREAD. + Don't include termio.h dorectly. + + * intervals.c (interval_deletion_adjustment): Delete unreachable abort. + + * fns.c (Fyes_or_no_p): Delete unreachable UNGCPRO. + + * keyboard.c (lispy_function_keys): Add `remove' key. + +1993-05-30 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * buffer.c (Fgenerate_new_buffer_name): Doc fix. + +1993-05-30 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile.in (clean): Delete libXMenu11.a. + +1993-05-30 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * m/mips.h (KERNEL_FILE): Set this to "/unix". + * m/mips4.h (MIPS2): Go ahead and define this. + (C_DEBUG_SWITCH): Add -DMips and -g3, and up Olimit to 2000. + +1993-05-30 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * emacs.c (main) [AIX _I386]: Don't handle SIGIOINT. + + * lisp.h (UCHAR): Don't define if _UCHAR_T. + + * m/ibmps2-aix.h (HAVE_GETTIMEOFDAY): Deleted. + (HAVE_SETSID, HAVE_TERMIOS): Defined. + (HAVE_TERMIO): Add #undef. + (SIGNALS_VIA_CHARACTERS): Defined. + (C_DEBUG_SWITCH): Make definition empty. + (LIBS_DEBUG): Defined. + (BROKEN_TIOCGWINSZ, LIB_X11_LIB): Add #undef. + + * sysdep.c (child_setup_tty) [AIX SIGNALS_VIA_CHARACTERS]: Install + something usefull in the VQUIT and VINTR. + (emacs_set_tty): Try only 10 times to call tcsetattr. + Don't use memcmp to test what it did. + + * systty.h [HAVE_TERMIOS _AIX _I386]: Include termios before termio. + + * dispnew.c (buffer_posn_from_coords): Since COL is already + window-relative, don't subtract window_left. + +1993-05-30 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * xfaces.c (unload_color): Don't #include , + , or . Just write out + "unsigned long" instead of using the "Pixel" typedef; it's in the + protocol, so it's not likely to change. + + * hftctl.c (hft_alrm): Declare and define this to return void, not + int; the AIX #include files have prototypes for it. + + * s/aix3-2.h (LIBS_SYSTEM): Remove -lIM and -liconv from here... + * m/ibmrs6000.h (LIBS_MACHINE): They're already here. Doc fix. + + * Makefile.in (SUBMAKEFLAGS): Remember to propagate MAKE. + +1993-05-30 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * s/sunos4-1-3.h: Delete the #undef of SYSTEM_MALLOC. + + * systty.h [IRIX4]: Include unistd.h. + + * s/irix4-0.h (IRIX4): Defined. + (IRIS_UTIME): #undef this. + + * xfns.c (Fx_open_connection) [NO_XRM_SET_DATABASE]: + Don't call XrmsSetDatabase. + + * xfaces.c: Fix HPUX conditional syntax. + + * s/hpux8.h (random, srandom): Defined. + + * s/usg5-4-2.h: Don't specify s/ dir in #include. + * s/usg5-4-2.h (PTY_TTY_NAME_SPRINTF): Defined. + (HAVE_SYSV_SIGPAUSE): #undef this. + + * sysdep.c (wait_for_termination): Add POSIX_SIGNALS alternative. + +1993-05-30 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * xfaces.c (init_frame_faces): We have to make sure that face ID's + are valid on all frames or no frames; make sure F has allocated + faces for any face valid on the selected frame. + + * s/hpux9.h: New file; don't use the GNU allocator. Hope we fix + this soon. + +See ChangeLog.3 for earlier changes. -- cgit v1.2.1