1 1996-08-11 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
3 * Version 19.33 released.
5 1996-08-10 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
7 * s/sco5.h (POSIX_SIGNALS): Don't define it, #undef instead.
8 (NO_SOCKETS_IN_FILE_SYSTEM): Definition deleted.
9 (sigblock): New definition.
11 1996-08-10 Marcus Daniels <marcus@sayre.sysc.pdx.edu>
13 * m/sequent-ptx.h (LOAD_AVE_TYPE, FSCALE, LOAD_AVE_CVT):
14 Undef them before defining.
16 * s/ptx4.h: Fix include file name.
17 (NO_FILIO_H): Move definition.
19 1996-08-09 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
21 * m/alpha.h [__ELF__] (UNEXEC): Use unexelf1.c.
23 1996-08-09 David Mosberger-Tang <davidm@azstarnet.com>
25 * unexelf1.c: New file, copied from unexelf.c.
26 [__alpha__]: Include <sym.h> to get COFF debugging
27 info declarations for .mdebug section.
28 [__GNU_LIBRARY__ - 0 >= 6]: Include <link.h>.
29 [notdef ElfW]: Define backwards compatible ElfW macro.
30 (unexec) [__alpha__]: Add code to update Alpha COFF symbol table
32 (unexec) [__alpha__]: Work around binutils-2.7 bug: for Alpha ELF
33 sometimes unneeded data relocs do not get elided properly which
34 results in reloc entries that contain all zeroes.
36 * m/alpha.h [__ELF__ && __GNUC__] (C_SWITCH_MACHINE): Add -fno-common.
37 (TEXT_START, DATA_START, DATA_SEG_BITS, UNEXEC): Define only if
38 __ELF__ is not defined.
39 (LINUX_SBRK_BUG): Define only if LINUX and __GNU_LIBRARY__ < 6.
40 (NO_TERMIO): Always define this. No Alpha system should need
42 (COFF, DATA_END): Define only if __ELF__ is not defined.
44 1996-08-08 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
46 * s/usg5-4.h: Don't include filio.h if NO_FILIO_H.
50 * config.in (GETTIMEOFDAY_ONE_ARGUMENT): Conditionalize on
53 1996-08-07 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
55 * xmenu.c (xmenu_show): Set dummy.state.
56 Set dummy.button appropriately.
57 (popup_get_selection) [USE_MOTIF]: Set event.xbutton.button.
59 * s/osf1.h (LD_SWITCH_SYSTEM): New definition.
61 1996-08-06 Paul Eggert <eggert@twinsun.com>
63 * editfns.c (set_time_zone_rule): Don't put a string literal
66 1996-08-05 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
68 * minibuf.c (Fread_from_minibuffer): Make position 0 in the initial
69 input mean the beginning.
71 1996-08-04 Eli Zaretskii <eliz@is.elta.co.il>
73 * callproc.c (Fcall_process_region) [DOS_NT]: Avoid downcasing
74 the `X' characters in the template passed to `mktemp'.
76 1996-08-02 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
78 * widget.c (EmacsFrameSetCharSize): Call do_pending_window_change.
80 1996-07-31 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
82 * Version 19.32 released.
84 * s/hpux10.h (C_SWITCH_X_SYSTEM, LD_SWITCH_X_DEFAULT):
85 Override to add /usr/contrib directories.
87 1996-07-31 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
89 * xterm.c (XTread_socket): Delete the code to pass menu bar keys
91 (XTread_socket): Don't fail to pass button events to toolkit.
93 1996-07-29 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
95 * xterm.c (XTread_socket): Pass keys in menu bar to toolkit alone
98 * xdisp.c (prepare_menu_bars): Conditionalize previous change.
100 1996-07-27 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
102 * filelock.c (lock_file_owner_name): Always initialize the_pw.
104 * xterm.c (XTread_socket): Fixing previous change:
105 Clear last_mouse_press_frame on non-menu-bar ButtonPress.
106 Always use last_mouse_press_frame as frame for ButtonRelease.
107 But ignore the event if frame's output_data.x is null.
108 Save the ButtonRelease only if USE_MOTIF.
109 (last_mouse_press_frame): This is now a Lisp object.
110 (syms_of_xterm): Initialize and staticpro it.
112 * xmenu.c (pending_menu_activation): Don't initialize. Not static.
113 (set_frame_menubar): If no saved_menu_event yet, set deep_p.
114 Don't clear pending_menu_activation here.
116 * xmenu.c (Fx_popup_dialog): Don't fail to initialize WINDOW.
118 * xdisp.c (prepare_menu_bars): Clear pending_menu_activation.
120 * print.c: When printing into a buffer, generate all the text
121 first, then insert it all at once.
122 (print_buffer): New variable.
123 (print_buffer_size, print_buffer_pos): New variables.
124 (PRINTPREPARE): Allocate print_buffer.
125 (PRINTFINISH): Free print_buffer after inserting its contents.
126 (printchar, strout): Output into print_buffer.
127 (print_string): If printcharfun is nil, use strout.
129 1996-07-26 Marcus Daniels <marcus@sayre.sysc.pdx.edu>
131 * xmenu.c (pending_menu_activation): New variable.
132 (x_activate_menubar): Don't call set_frame_menubar for
133 ButtonRelease events. Instead, set pending_menu_activation.
134 (set_frame_menubar): If pending_menu_activation, set deep_p.
136 * xterm.c (last_mouse_press_frame): New variable.
137 (XTread_socket): Store a saved_button_event for ButtonRelease.
139 1996-07-25 Marcus Daniels <marcus@sayre.sysc.pdx.edu>
141 * xmenu.c (set_frame_menubar): Use -1 for call_data
142 in the deep_p = 0 case.
144 1996-07-24 Geoff Voelker <voelker@joker.cs.washington.edu>
146 * ntinevt.c (win32_read_socket): Never block reading from input queue.
148 1996-07-24 Marcus Daniels <marcus@sayre.sysc.pdx.edu>
150 * editfns.c (Fencode_time): Assign to tm.tm_gmtoff for NEXTSTEP,
151 since timezone environment variable is ignored.
153 1996-07-23 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
155 * buffer.c (buffer_permanent_local_flags): New variable.
156 (init_buffer_once): Initialize it.
157 (reset_buffer_local_variables): New argument PERMANENT_TOO.
158 Callers changed. Now declared static.
160 * s/irix6-0.h [__GNUC__] (C_DEBUG_SWITCH): Define as -g3.
162 * m/mips.h, m/iris4.h, m/iris5d.h (LIBS_MACHINE) [__GNUC__ and ABIN32]:
165 1996-07-23 Paul Eggert <eggert@twinsun.com>
167 * editfns.c (Fdecode_time, difftm): Work even if tm_year represents
168 negative years; this is possible with 64-bit time_t values.
170 1996-07-20 Karl Heuer <kwzh@gnu.ai.mit.edu>
172 * fileio.c (check_writable): Use euidaccess, not eaccess.
174 1996-07-20 Erik Naggum <erik@naggum.no>
176 * intervals.c (balance_intervals_internal): Recurse directly.
178 1996-07-19 Eli Zaretskii <eliz@is.elta.co.il>
180 * unexec.c (copy_text_and_data) [DJGPP >= 2]: Switch off two bits
181 in `_crt0_startup_flags' so they don't go into the dumped Emacs.
182 Restore the value of `_crt0_startup_flags' after .text and .data
185 1996-07-19 Karl Heuer <kwzh@gnu.ai.mit.edu>
187 * s/irix5-0.h (_BSD_SIGNALS): Define.
188 * s/irix6-0.h (SA_RESTART): Add #undef.
190 1996-07-16 Andrew Innes <andrewi@harlequin.co.uk>
192 * w32term.c (w32_read_socket): Need to erase background
193 immediately before repainting exposed region.
195 * makefile.nt (DOC, clean): Use OBJDIR macro.
197 1996-07-16 Karl Heuer <kwzh@gnu.ai.mit.edu>
199 * xfns.c (Fx_create_frame): Do xlwmenu hack only if USE_LUCID.
201 * m/alpha.h, unexelf.c: Undo Jul 15 changes.
202 * config.in, data.c, keyboard.c, process.c: Undo Jul 15 changes.
203 * cm.h, sysdep.c, terminfo.c: Undo Jul 15 and Jul 16 changes.
205 1996-07-16 Karl Heuer <kwzh@gnu.ai.mit.edu>
207 * cm.h, terminfo.c, sysdep.c: Test HAVE_TERMIOS rather than the
208 automatically-generated HAVE_TERMIOS_H, in case <termios.h> is
209 present but unusable.
211 1996-07-16 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
213 * fns.c (Fy_or_n_p): Pass 3rd arg to Flookup_key.
215 * s/hpux10.h (LIBS_TERMCAP): New definition.
217 1996-07-15 Karl Heuer <kwzh@gnu.ai.mit.edu>
219 * window.c (struct save_window_data, struct saved_window): First
220 placeholder member is EMACS_INT, not int.
222 * print.c (print): Fix args in strout calls.
224 * xterm.h (struct x_output): Member saved_button_event replaced by
226 * xmenu.c (x_activate_menubar): Allow any event, not just ButtonPress.
227 * xterm.c (SET_SAVED_MENU_EVENT): New macro.
228 (SET_SAVED_BUTTON_EVENT, SET_SAVED_KEY_EVENT): New macros.
229 (XTread_socket): Defer key events as well as button presses.
231 * frame.c (Qmouse_leave_buffer_hook): Delete redundant definition.
232 (syms_of_frame_1): Delete the duplicate assignment and staticpro.
233 * lisp.h (Qmouse_leave_buffer_hook, Qfont): Declare here.
234 * floatfns.c (Qarith_error): Delete redundant definition.
235 * xfns.c (Qfont): Delete redundant definition.
236 (syms_of_xfns): Delete the duplicate assignment and staticpro.
237 * w32fns.c (Qfont): Delete redundant definition.
238 (syms_of_win32fns): Delete the duplicate assignment and staticpro.
239 * xfns.c (xlwmenu_default_font): Declare, but don't define.
240 * xselect.c (last_event_timestamp): Declare, but don't define.
242 1996-07-15 David Mosberger-Tang <davidm@AZStarNet.com>
244 * m/alpha.h (TEXT_START, DATA_START, DATA_SEG_BITS, UNEXEC, DATA_END):
245 Omit these definitions if ELF.
246 (LINUX_SBRK_BUG): Omit this if using a recent GNU library.
247 [__ELF__] (C_SWITCH_MACHINE): Define.
248 (NO_TERMIO): Define this unconditionally.
249 (COFF): Omit this if ELF.
250 * config.in (HAVE_TERMIOS_H): Add #undef.
251 * cm.h [HAVE_TERMIOS_H]: Declare ospeed as speed_t.
252 * sysdep.c [HAVE_TERMIOS_H]: Likewise.
253 * dispnew.c: Don't delare ospeed; cm.h already did it.
254 * terminfo.c: Use <config.h>.
255 [HAVE_TERMIOS_H]: Declare ospeed as speed_t.
256 [USG]: Include <string.h>.
257 * data.c (arith_error): Don't reinstall sig handler if POSIX_SIGNALS.
258 * keyboard.c (input_available_signal, interrupt_signal): Likewise.
259 * process.c (create_process_1, sigchld_handler): Likewise.
260 * unexelf.c: Add 64-bit ELF and Alpha/ELF support.
262 1996-07-13 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
264 * search.c (Fmatch_data): If no matching done yet, return Qnil.
266 1996-07-13 Paul Eggert <eggert@twinsun.com>
268 * vmstime.c (sys_gmtime): Don't assume year < 2000.
270 1996-07-13 Karl Heuer <kwzh@gnu.ai.mit.edu>
272 * process.c (wait_reading_process_input) [hpux]: Workaround for
275 1996-07-12 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
277 * indent.c (Fvertical_motion): Doc fix.
279 1996-07-11 Andrew Innes <andrewi@harlequin.co.uk>
281 * w32fns.c (win32_wnd_proc): Handle WM_ERASEBKGND and
282 WM_PALETTECHANGED messages inline (as they should be).
284 * w32term.c (w32_read_socket): Remove unused WM_ERASEBKGND code.
285 No need to erase background now on (delayed) WM_PAINT. Move
286 WM_PALETTECHANGED processing to raw input thread.
288 1996-07-11 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
290 * keyboard.c (menu_bar_item): Skip menu-bar equiv keys data
291 to get just the keymap.
293 * s/irix5-0.h [__GNUC__] (C_DEBUG_SWITCH): New definition.
295 1996-07-11 David Mosberger-Tang <davidm@AZStarNet.com>
297 * mem-limits.h (lim_data): Make this an unsigned long.
299 1996-07-11 Bill Mann <dvmann@dvncr.praxisint.com>
301 * s/usg5-4-3.h: New file.
303 1996-07-11 Marcus Daniels <marcus@sayre.sysc.pdx.edu>
305 * xterm.c (XTread_socket): Add #ifdef for previous change.
307 1996-07-11 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
309 * buffer.c (syms_of_buffer): Doc fix.
311 1996-07-08 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
313 * mem-limits.h [_LIBC]: Use weak_extern instead of weak_symbol for
316 1996-07-07 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
318 * s/gnu.h: Enable use of ncurses library cleanly.
320 1996-07-07 Karl Heuer <kwzh@gnu.ai.mit.edu>
322 * xterm.c: Undo previous change.
323 (XTread_socket): Better way to avoid sending toolkit-specific
326 1996-07-07 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
328 * xmenu.c (popup_get_selection): For a ButtonRelease on the proper
329 display, don't queue it, and always deactivate the menu.
331 1996-07-07 Eli Zaretskii <eliz@is.elta.co.il>
333 * msdos.c (IT_menu_display): Display control characters as ^X.
334 (XMenuAddPane, XMenuAddSelection): Adjust menu width for control
335 characters (displayed as ^X).
337 * dired.c (file_name_completion): Set `stat' flags to avoid
338 computing expensive fields in struct stat (makes filename
339 completion much faster).
341 * fileio.c (Fcopy_file): Use st_ino under DJGPP v2 and later to
342 prevent copying file into itself.
343 (check_executable): DJGPP v2 `stat' doesn't need to be augmented
344 in case of executable files.
345 (Ffile_modes): Use `stat' results as is in DJGPP v2 and later.
347 1996-07-04 Eli Zaretskii <eliz@is.elta.co.il>
349 * msdos.c (dostounix_filename): On caseless filesystems, downcase
351 (unixtodos_filename): Downcase the drive letter.
352 (init_environment): Downcase the pathnames in the environment only
353 when running on caseless filesystems.
355 1996-07-03 Andrew Innes <andrewi@harlequin.co.uk>
357 * nt.c (normalize_filename): Always lower-case drive letters, even
358 on systems that preserve case in filenames.
360 * fileio.c (DRIVE_LETTER) [WINDOWSNT]: Lower-case drive letters.
362 1996-07-05 Andrew Innes <andrewi@harlequin.co.uk>
364 * w32term.c (x_set_mouse_pixel_position): Adjust coords by frame
366 (x_set_mouse_position): Call x_set_mouse_pixel_position.
368 1996-07-05 Andrew Innes <andrewi@harlequin.co.uk>
370 * nt.c (sys_rename): Do not delete newname if only changing case.
371 On Windows 95, use our version of mktemp (not the MSVC version)
372 and give the temp name a long extension to ensure the final rename
375 1996-07-03 Eli Zaretskii <eliz@is.elta.co.il>
377 * callproc.c (Fcall_process) [MSDOS]: Initialize fd[0]; unlink
378 `tempfile' in case of errors.
379 (Fcall_process): When fd_error is negative,
380 don't close fd[0] if it's same as filefd.
382 1996-07-03 Eli Zaretskii <eliz@is.elta.co.il>
384 * callproc.c (Fcall_process) [MSDOS]: Make the `tempfile'
385 parameter passed to `report_file_error' be a Lisp string.
386 (Fcall_process): If stderr is redirected to NULL_DEVICE, make
387 `report_file_error' print the name of device. Make the arguments
390 1996-07-06 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
392 * indent.c (Fvertical_motion): Doc fix.
394 1996-07-03 Marcus Daniels <marcus@sayre.sysc.pdx.edu>
396 * xterm.c (XTread_socket): Use lw_tookit_related_event_p to
397 avoid sending toolkit-specific events to Emacs.
399 1996-07-01 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
401 * m/alpha.h (HAVE_X11R4, HAVE_X11R5): Definitions deleted
402 since xterm.h and config.h should take care of them.
404 * xselect.c (x_clear_frame_selections): Don't call
405 redisplay_preserve_echo_area here.
407 1996-06-30 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
409 * systty.h: Delete spurious period from last change.
411 1996-07-01 Eli Zaretskii <eliz@is.elta.co.il>
413 * fileio.c (DRIVE_LETTER) [MSDOS]: Lower-case drive letters.
415 * msdos.c (msdos_downcase_filename): Always lower-case drive
416 letters, even on systems that preserve case in filenames.
418 1996-06-29 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
420 * s/sol2-5.h (LIB_MOTIF): Fix typo.
422 * emacs.c (main): Add `GNU Emacs' to the response to --version.
424 * xfns.c (Fx_create_frame): Gcpro parms, parent, and name.
426 * systty.h (GETPGRP_NO_ARG): Always define it, if __GNU_LIBRARY__.
428 1996-06-28 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
430 * frame.c (make_frame_without_minibuffer): GCPRO the frame f.
432 * config.in (AMPERSAND_FULL_NAME): Defined by default.
434 * s/sol2-5.h (LIB_MOTIF): New definition.
436 * emacs.c (standard_args): Delete `-rn' option.
438 * .gdbinit: Add `dir ../lwlib'.
440 * print.c (print): Obey Vprint_length for vectors, bitvectors.
442 * fileio.c (check_executable): Use euidaccess, not eaccess.
444 * config.in (HAVE_EUIDACCESS): This replaces HAVE_EACCESS.
446 * xterm.h: Don't define HAVE_X11R5 here.
448 * config.in (HAVE_X11R5): Add #undef.
450 * unexhp9k800.c (unexec): Cast result of sbrk.
451 (run_time_remap): Cat arg to brk.
453 1996-06-27 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
455 * xterm.c (x_connection_closed): Call clear_waiting_for_input.
457 * keyboard.c (modify_event_symbol): Add properly to *symbol_table.
459 1996-06-26 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
461 * xterm.c (x_connection_closed): Add newline when printing error
463 (XTread_socket, Xatom_wm_save_yourself clause):
464 Don't call XSetCommand if f is 0.
465 (x_error_quitter): Delete newline from sprintf string.
467 * xdisp.c (redisplay_internal): Use last_had_star to decide
468 whether to update the mode line to update the star.
469 (update_menu_bar): Likewise.
470 Also, don't set w->update_mode_line for frames that use
472 (redisplay_internal, mark_window_display_accurate):
475 * window.h (struct window): New field, last_had_star.
477 1996-06-25 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
479 * xterm.c (x_connection_signal): Just return after calling `signal'.
480 (X_CONNECTION_LOCK_FLAG): Definition deleted.
481 (x_connection_signal_dpyinfo): Variable deleted.
482 (x_connection_signal_1): Function deleted.
483 (x_connection_close_if_hung): Function deleted.
485 * indent.c (Fmove_to_column): Go after invis chars at the goal column.
487 1996-06-24 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
489 * xterm.c (x_connection_closed): If waiting_for_input,
490 call quit_throw_to_read_char.
492 1996-06-24 Paul Eggert <eggert@twinsun.com>
494 * unexelf.c (unexec): Round up section header offset to bss alignment
495 before deciding whether it's after the bss section.
497 1996-06-23 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
499 * xfns.c (x_real_positions): Don't call x_uncatch_errors twice.
501 * indent.c (current_column_1): Add declaration.
503 1996-06-22 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
505 * indent.c: Make current-column, move-to-column and current-indentation
506 handle invisible chars (both text properties and overlays).
507 (skip_invisible): New function.
508 (Fmove_to_column): Use skip_invisible. Get rid of `retry' label.
509 (compute_motion): Use skip_invisible.
510 (current_column_1): New function.
511 (current_column): Use current_column_1 if might have invisible text.
513 * data.c (Fdefalias): Doc fix.
515 * s/gnu-linux.h (LD_SWITCH_SYSTEM): Just one definition.
516 Don't use prefix-args here because Makefile.in
517 does that when necessary.
519 1996-06-21 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
521 * s/sco5.h: New file.
523 * s/gnu-linux.h: Renamed from lignux.h.
524 (SYSTEM_TYPE): Changed to gnu/linux.
526 * callproc.c (Fcall_process): Fix previous change.
528 * xterm.c (x_iconify_frame): If frame is invisible,
529 explicitly mark it as iconified.
531 * keyboard.c (kbd_buffer_get_event): Don't call x_activate_menubar
534 1996-06-19 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
536 * s/sol2-4.h (LD_SWITCH_SYSTEM): Use no space after -L and -R.
538 1996-06-18 Nico Francois <nico.francois@scala.nl>
540 * w32fns.c (Vwin32_alt_is_meta): New variable.
541 (win32_get_modifiers): Map Alt to alt_modifier if required.
542 (syms_of_win32fns): DEFVAR new variable.
544 * ntinevt.c (Vwin32_alt_is_meta): Declared.
545 (win32_kbd_mods_to_emacs): Map Alt to alt_modifier if required.
547 1996-06-16 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
549 * callproc.c (Fcall_process): Handle t or nil as STDERR_FILE.
551 * s/hpux10.h (HPUX10): New macro.
553 1996-06-14 Andrew Innes <andrewi@harlequin.co.uk>
555 * w32fns.c (win32_wnd_proc): No need to forward WM_ERASEBKGND to
558 * w32term.c (w32_read_socket): Erase update rect on WM_PAINT, so
559 no need to process WM_ERASEBKGND.
561 1996-06-13 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
563 * xmenu.c (Qmenu_alias): New variable.
564 (syms_of_xmenu): Initialize it.
565 (menu_item_equiv_key): Check this property on the definition.
567 * fileio.c (Fexpand_file_name): When simplifying /foo/..,
568 keep the initial slash.
570 * s/hpux10.h (LIBS_SYSTEM): Two new definitions (and #undef first).
572 1996-06-12 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
574 * emacs.c (main): For SIGHUP, use sigblock and sigunblock,
575 not sigblockx and sigunblockx.
577 * buffer.c (Fkill_buffer): Doc fix.
579 1996-06-12 Andrew Innes <andrewi@harlequin.co.uk>
581 * ntproc.c (restrict_dos_process): Variable deleted.
582 (sys_spawnve): Restrict DOS processes on NT as well.
584 * nt.c: Delete restrict_dos_process.
586 1996-06-12 Andrew Innes <andrewi@harlequin.co.uk>
588 * nt.c (restrict_dos_process): Renamed from can_run_dos_process.
589 (init_ntproc): Refer to restrict_dos_process.
591 * ntproc.c (restrict_dos_process): Renamed from can_run_dos_process.
592 (sys_spawnve): Refer to restrict_dos_process.
594 1996-06-12 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
596 * syssignal.h (sigunblockx): Use sigunblock.
598 1996-06-11 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
600 * process.c (wait_reading_process_input): Move the O_NONBLOCK and
601 O_NDELAY conditionals out of the EWOULDBLOCK conditional.
603 1996-06-10 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
605 * keymap.c (Fset_keymap_parent): Return early if KEYMAP already has
608 * s/lignux.h [__ELF__] (LD_SWITCH_SYSTEM): Define it.
610 * frame.c (Fmake_terminal_frame): Test MSDOS, not __MSDOS__.
612 * xdisp.c (redisplay_internal): Use FRAME_WINDOW_P.
613 (decode_mode_spec): Likewise.
615 * minibuf.c (choose_minibuf_frame): Eliminate
616 MSDOS-non-MULTI_FRAME conditional.
618 * dispnew.c (change_frame_size, remake_frame_glyphs):
621 * msdos.c (check_x): Fix error message.
623 1996-06-09 Eli Zaretskii <eliz@is.elta.co.il>
625 * xfaces.c (init_frame_faces): Build faces for an MSDOS frame
627 (Fmake_face_internal): Call `ensure_face_ready' for MSDOS frames.
628 (Fset_face_attribute_internal): Support face attributes for MSDOS
631 * xdisp.c (redisplay_internal): Use `Vterminal_frame' and other
632 termcap frame code on MSDOS as well.
633 (display_text_line) [HAVE_FACES]: Support faces on MSDOS.
634 (decode_mode_spec): Return frame name on MSDOS like for termcap
637 * window.c (Fset_window_configuration) [HAVE_WINDOW_SYSTEM]: Call
638 `x_set_menu_bar_lines' on MSDOS as well.
640 * msdos.h (check_x): Macro definition deleted.
641 (DisplayWidth): Use `selected_frame'.
642 (DisplayHeight): Use `selected_frame'.
643 (x_mouse_leave): Remove; it's not used.
645 * msdos.c (x_set_menu_bar_lines): New function, copied from xfns.c.
646 (IT_set_frame_parameters): Use selected_frame instead of
648 (internal_terminal_init): Use selected_frame instead of the_only_frame.
649 (check_x): New function, replacing macro in msdos.h.
650 (XMenuActivate): Use selected_frame instead of
651 the_only_frame. Don't let the title for the "Buffers" popup
652 include a number when it is split into several menus.
654 * minibuf.c (choose_minibuf_frame): Support multiple frames on MSDOS.
656 * frame.h (FRAME_MSDOS_P): A new macro for MSDOS frames.
658 * frame.c (Qpc): New variable.
659 (syms_of_frame_1): Define and staticpro it.
660 (Fframep): Support MSDOS frames.
661 (make_terminal_frame, Fmake_terminal_frame): Support MSDOS frames.
662 (Fset_mouse_position, Fset_mouse_pixel_position): Support MSDOS frames.
663 (Fframe_parameters, Fmodify_frame_parameters): Support MSDOS frames.
665 * dosfns.c (Fset_mouse_position): Remove the DOS-specific
666 definition (it's defined on `frame.c').
667 (syms_of_dosfns): Remove defsubr of `Fset_mouse_position'.
669 * dispnew.c (Fredraw_frame, remake_frame_glyphs)
670 (direct_output_for_insert, change_frame_size): Support MSDOS frames.
672 1996-06-10 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
674 * keymap.c (fix_submap_inheritance): If parent_entry is not a keymap,
677 * alloc.c (mark_object): Do set ARRAY_MARK_FLAG for bool-vectors.
679 1996-06-10 Andrew Innes <andrewi@harlequin.co.uk>
681 * w32fns.c (x_to_win32_font): Allow any quality fonts.
683 1996-06-09 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
685 * keyboard.c (read_char): Use unsigned to compare against
686 the size of Vkeyboard_translate_table.
687 Check size for char-table too.
689 * s/freebsd.h (DONT_REOPEN_PTY): New definition.
691 * process.c (create_process): Add DONT_OPEN_PTY conditional.
693 1996-06-07 Andrew Innes <andrewi@harlequin.co.uk>
695 * nt.c (init_environment): Read PRELOAD_WINSOCK from registry if
696 not set in environment.
698 (winsock_inuse) [HAVE_SOCKETS]: New variable.
699 (have_winsock) [HAVE_SOCKETS]: Obsolete variable removed.
701 (term_winsock) [HAVE_SOCKETS]: Only unload winsock library if there
702 are no active sockets still open, and if the cleanup function
703 succeeds. Return TRUE if winsock is unloaded.
705 (init_winsock) [HAVE_SOCKETS]: Load winsock if not already loaded,
706 and return TRUE if winsock support is available. Unload winsock
707 immediately if new parameter load_now is false. Check that
708 WSAStartup supports the winsock version we requested.
710 (set_errno, check_errno, sys_socket, sys_bind, sys_connect,
711 sys_htons, sys_ntohs, sys_inet_addr, sys_gethostname,
712 sys_gethostbyname, sys_getservbyname, sys_close, sys_read,
713 sys_write) [HAVE_SOCKETS]: Check winsock_lib instead of
714 have_winsock to determine if winsock support is available.
716 (sys_socket, sys_close) [HAVE_SOCKETS]: Count sockets in use.
718 (init_ntproc) [HAVE_SOCKETS]: Only load winsock library on startup
719 if PRELOAD_WINSOCK is set in environment (or registry).
721 * ntproc.c (Fwin32_has_winsock,
722 Fwin32_unload_winsock) [HAVE_SOCKETS]: New functions.
723 (syms_of_ntproc) [HAVE_SOCKETS]: defsubr them.
725 * process.c (Fopen_network_stream) [WINDOWSNT]: Ensure Windows
726 socket library is loaded if available.
728 1996-06-07 Marcus Daniels <marcus@sayre.sysc.pdx.edu>
730 * xterm.c (XTread_socket): Use XtAppNextEvent when using
731 toolkit configurations.
733 1996-06-07 Andrew Innes <andrewi@harlequin.co.uk>
735 * nt.c (sys_mktemp): Complete rewrite.
737 1996-06-07 Andrew Innes <andrewi@harlequin.co.uk>
739 * ntproc.c (sys_kill): Don't try to terminate a DOS process.
741 1996-06-06 Andrew Innes <andrewi@harlequin.co.uk>
743 * fileio.c (Ffile_name_directory) [WINDOWSNT]: Remove previous
744 change, which was incorrect and isn't strictly required.
746 1996-06-06 Eli Zaretskii <eliz@is.elta.co.il>
748 * xfaces.c (Fset_face_attribute_internal) [MSDOS]: Don't mask
749 bright color bit in background colors.
751 * msdos.c (bright_bg): New function, enables bright background colors.
752 (dos_set_window_size): Move code to `bright_bg'.
753 (IT_set_terminal_modes): Enable bright background colors.
754 (IT_set_frame_parameters): Don't mask bright color bit in
755 background colors. Record colors on `termscript' file.
756 (internal_terminal_init): Enable bright background colors. Fix
757 default colors setting from $EMACSCOLORS.
759 1996-06-07 Geoff Voelker <voelker@joker.cs.washington.edu>
761 * w32fns.c (sync_modifiers): New function.
762 (w32_wnd_proc): Synchronize modifiers on each key down.
764 1996-06-06 Andrew Innes <andrewi@harlequin.co.uk>
766 * nt.c (init_winsock): Dynamically link to SetHandleInformation.
767 (sys_socket): If possible, use SetHandleInformation to make socket
768 handle non-inheritable to avoid a bug in NT.
770 1996-06-05 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
772 * keymap.c (Fkeymap_parent, Fset_keymap_parent): New functions.
773 (fix_submap_inheritance): New function.
774 (access_keymap): Use fix_submap_inheritance.
776 1996-06-05 Paul Eggert <eggert@twinsun.com>
778 * editfns.c: (set_time_zone_rule):
779 Work around localtime cache bug in SunOS 4.1.3_U1 and SunOS 4.1.4.
781 1996-06-04 Geoff Voelker <voelker@joker.cs.washington.edu>
783 * w32term.c (w32_read_socket): If the dead key was produced using
784 AltGr and has a valid AltGr scan code, it's a valid key and
785 should not be discarded.
787 1996-06-03 Kim Storm <storm@olicom.dk>
789 * ntproc.c (Vwin32_downcase_file_names): New variable.
790 (syms_of_win32fns): DEFVAR it.
792 * fileio.c (DRIVE_LETTER): [DOS_NT] New macro.
793 (expand_file_name): Apply DRIVE_LETTER macro to drive names.
795 * nt.c (normalize_filename): New function.
796 (dostounix_filename, unixtodos_filename): Use it.
797 (readdir): Convert upper case file names to lower case
798 if win32-downcase-file-names is non-nil.
800 1996-05-31 Andrew Innes <andrewi@harlequin.co.uk>
802 * fileio.c (Fexpand_file_name) [WINDOWSNT]: Don't strip trailing /
803 when newdir is just "//".
804 (Ffile_name_directory) [WINDOWSNT]: Return Qnil if filename is a
805 partial UNC name such as "//foo".
807 1996-05-31 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
809 * xmenu.c (single_submenu): Handle non-keymap lists like symbols.
811 * w32fns.c (reset_modifiers): Only clear a modifier if the
812 modifier key has been detected to have been released since
814 (win32_wnd_proc): Have Windows translate VK_NUMLOCK and
815 VK_SCROLL key downs; don't reset the modifier state when
818 1996-05-30 Richard Stallman <rms@psilocin.gnu.ai.mit.edu>
820 * buffer.c (Fpop_to_buffer): Doc fix.
822 * window.c (Fdisplay_buffer): Doc fix.
824 1996-05-27 Karl Heuer <kwzh@gnu.ai.mit.edu>
826 * s/sol2.h (LIBS_SYSTEM): Define this.
828 1996-05-25 Karl Heuer <kwzh@gnu.ai.mit.edu>
830 * Version 19.31 released.
832 1996-05-25 Karl Heuer <kwzh@gnu.ai.mit.edu>
834 * m/sparc.h [__linux__] (A_TEXT_OFFSET, A_TEXT_SEEK): Don't define.
836 1996-05-24 Marcus Daniels <marcus@sayre.sysc.pdx.edu>
838 * xterm.c [SOLARIS2]: Include string.h.
840 1996-05-24 Andrew Innes <andrewi@harlequin.co.uk>
842 * w32fns.c: (Vwin32_mouse_move_interval): New lisp variable.
843 (syms_of_win32fns): Add Vwin32_mouse_move_interval to syms.
844 (saved_mouse_msg): Renamed to saved_mouse_button_msg.
845 (timer_id): Renamed to mouse_button_timer.
846 (saved_mouse_move_msg, mouse_move_timer): New variables.
847 (win_msg_worker): Delete WM_TIMER code.
848 (win32_wnd_proc): Handle WM_TIMER events here. Use separate timers
849 for mouse down and mouse move (including scroll bar drag) events.
850 Add new handling code for WM_VSCROLL and WM_MOUSEMOVE events.
851 Only filter WM_MOUSEMOVE events when a button is held down.
852 Always pass on message to DefWindowProc after calling
853 TranslateMessage. Reset keyboard modifiers when losing focus.
855 * w32term.c (x_scroll_bar_handle_click): Repaint scroll bar handle
856 when drag is finished.
858 1996-05-23 Geoff Voelker <voelker@joker.cs.washington.edu>
860 * w32fns.c (win32_wnd_proc): When passing modifier keystrokes back
861 to Windows, invoke TranslateMessage on them.
862 (reset_modifiers): Don't reset Window's keyboard state.
864 1996-05-23 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
866 * lread.c (init_lread): Init Vload_file_name to Qnil.
868 1996-05-21 Geoff Voelker <voelker@joker.cs.washington.edu>
870 * w32fns.c (modifier_set): Check toggle state of CapsLock even
871 if modifiers are not being recorded.
873 1996-05-21 Andrew Innes <andrewi@harlequin.co.uk>
875 * nt.c (get_volume_info): Always update *pPath correctly, even if
876 UNC header is incomplete.
878 1996-05-21 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
880 * indent.c (compute_motion): When calling Fget_char_property,
881 don't pass window if window is displaying the wrong buffer.
883 * dispnew.c (init_display) [HAVE_LIBNCURSES]: If X, call tgetent.
885 * keyboard.c (Fexecute_extended_command): Don't look for
886 a key binding if executing a kbd macro.
888 * print.c (Fprin1_to_string): Preserve Vdeactivate_mark.
890 * systty.h [__GNU_LIBRARY__]: #include <sys/ioctl.h>.
892 * cmds.c (internal_self_insert): Don't return 2 for auto-fill
893 unless the auto_fill_function returns non-nil.
895 1996-05-17 Karl Heuer <kwzh@gnu.ai.mit.edu>
897 * nt.h (struct _child_process): New member is_dos_process.
898 * nt.c (_sys_read_ahead): Handle sleep here.
899 (sys_read): Not here.
900 (init_ntproc): Initialize can_run_dos_process, dos_process_running.
901 * ntproc.c (Vwin32_pipe_read_delay): New var.
902 (can_run_dos_process, dos_process_running): New vars.
903 (win32_is_dos_binary): New function.
904 (reap_subprocess, sys_spawnve): Use them.
905 (syms_of_ntproc): Defvar and initialize Vwin32_pipe_read_delay.
907 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Enable the display of
908 menus in --no-window mode on NT.
910 1996-05-17 Geoff Voelker <voelker@cs.washington.edu>
912 * w32term.c (w32_read_socket): Mask out lower 4 bits of wParam
913 for WM_SYSCOMMAND messages.
915 1996-05-15 Karl Heuer <kwzh@gnu.ai.mit.edu>
917 * makefile.nt: Fix typo in previous patch.
919 * callproc.c (Fcall_process): Don't close the same fd twice.
921 1996-05-15 Kim Storm <storm@olicom.dk>
923 * nt.c (sys_read): Introduce a small delay before reading from
924 a pipe or socket to allow more data to be buffered; otherwise,
925 process output is read one byte at a time on fast machines
928 1996-05-14 Karl Heuer <kwzh@gnu.ai.mit.edu>
930 * w32select.c (QCLIPBOARD): New symbol.
931 (Fx_selection_exists_p): New function.
932 (syms_of_win32select): Initialize/staticpro and defsubr them.
934 1996-05-13 Richard Stallman <rms@mole.gnu.ai.mit.edu>
936 * makefile.nt (w32*.obj): Fix deps.
938 1996-05-13 Andrew Innes <andrewi@harlequin.co.uk>
940 * eval.c (Fsignal) [HAVE_WINDOW_SYSTEM]: Changed from
941 HAVE_X_WINDOWS, so that TOTALLY_UNBLOCK_INPUT is called on Windows.
943 * w32fns.c (win32_wnd_proc): Reenable quit_char detection.
945 1996-05-13 Richard Stallman <rms@delasyd.gnu.ai.mit.edu>
947 * w32menu.c: Include buffer.h.
948 (set_frame_menubar): Make sure input is unblocked
949 when we call create_menu_items.
950 Switch temporarily to proper buffer, bind inhibit-quit to t,
951 and run the same hooks as in smenu.c.
952 (syms_of_win32menu): Initialize and staticpro Qdebug_on_next_call.
954 * w32term.c (note_mouse_movement): Upwards mouse movement
955 recognition corrected.
957 1996-05-12 Richard Stallman <rms@delasyd.gnu.ai.mit.edu>
959 * callproc.c (Fcall_process): Fix previous change (now !MSDOS only).
961 1996-05-12 Karl Heuer <kwzh@gnu.ai.mit.edu>
963 * macros.c (Fstart_kbd_macro): Add missing xrealloc arg.
965 1996-05-12 Richard Stallman <rms@delasyd.gnu.ai.mit.edu>
967 * Makefile.in (MSDOS_SUPPORT): Use full name disp-table.elc.
969 1996-05-12 Eli Zaretskii <eliz@is.elta.co.il>
971 * dosfns.c (init_dosfns) [DJGPP >= 2]: Make `opendir' preserve
972 filename case (under Windows 95) and find hidden files.
974 * msdos.c (Fmsdos_downcase_filename): Don't change the argument,
977 1996-05-11 Eli Zaretskii <eliz@is.elta.co.il>
979 * msdos.c (msdos_downcase_filename): New function to convert case
981 (Fmsdos_downcase_filename): New function.
982 (syms_of_msdos): Defsubr it.
984 * s/msdos.h (FILE_SYSTEM_CASE): Call Fmsdos_downcase_filename
985 instead of Fdowncase.
987 1996-05-11 Geoff Voelker <voelker@cs.washington.edu>
989 * s/windowsnt.h (SYSTEM_PURESIZE_EXTRA): Macro defined.
991 1996-05-11 Andrew Innes <andrewi@harlequin.co.uk>
993 * w32term.c (x_scroll_bar_set_handle): Always use start
994 in calling SetScrollPos.
995 (x_scroll_bar_handle_click): In line up/down cases, don't alter y.
996 Don't call x_scroll_bar_set_handle.
998 * nt.c (map_win32_filename): If not a fat volume, cvt name to dos.
1000 1996-05-11 Richard Stallman <rms@delasyd.gnu.ai.mit.edu>
1002 * ntheap.c (allocate_heap): Clean up conditional.
1004 1996-05-11 Geoff Voelker <voelker@cs.washington.edu>
1006 * ntheap.c (allocate_heap): Bump heap base up to 27MB to
1009 1996-05-10 Richard Stallman <rms@delasyd.gnu.ai.mit.edu>
1011 * callproc.c (Fcall_process): Close fd_error if successful.
1013 1996-05-10 Geoff Voelker <voelker@cs.washington.edu>
1015 * w32fns.c (win32_wnd_proc): Disable setting of Vquit_flag
1018 1996-05-10 Andrew Innes <andrewi@harlequin.co.uk>
1020 * w32fns.c (win_msg_worker): Use post_msg.
1021 (win32_wnd_proc): Don't abort if button_state & this, just return.
1022 Use post_msg instead of my_post_msg in some places.
1023 (win32_to_x_font): Major rewrite.
1024 (struct enumfont_t): New element logfont.
1025 (enum_font_cb2): Add special code for TRUETYPE_FONTTYPE.
1026 (Fx_list_fonts): Call x_to_win32_font.
1028 * w32term.c (x_scroll_bar_move): Call my_show_window.
1029 (x_scroll_bar_clear): Likewise.
1031 * ntterm.c (prev_console_mode): New variable.
1032 (unset_kbd): Use prev_console_mode.
1033 (reset_kbd): Set prev_console_mode. Call Fset_input_mode.
1035 * emacs.c (main) [WINDOWSNT]: Call syms_of_ntproc.
1037 * ntproc.c (Vwin32_quote_process_args): New variable.
1038 (sys_spawnve): If Vwin32_quote_process_args, quote the args.
1039 (syms_of_ntproc): Set up Lisp variable.
1041 1996-05-10 Richard Stallman <rms@delasyd.gnu.ai.mit.edu>
1043 * xterm.c (x_connection_signal_1): Call x_connection_closed properly.
1045 1996-05-08 Richard Stallman <rms@delasyd.gnu.ai.mit.edu>
1047 * msdos.c (syms_of_msdos): Fix typo.
1049 1996-05-07 Richard Stallman <rms@delasyd.gnu.ai.mit.edu>
1051 * termhooks.h (enum scroll_bar_part): Delete extra comma.
1053 1996-05-06 Richard Stallman <rms@delasyd.gnu.ai.mit.edu>
1055 * msdos.c (Fmsdos_long_file_names): New function.
1056 (syms_of_msdos): Defsubr it.
1058 * s/msdos.h (GMALLOC_INHIBIT_VALLOC): Defined.
1060 * casetab.c (set_case_table): Set upcase_table, case_canon_table
1061 and case_eqv_table in the buffer.
1063 * casefiddle.c (casify_region, casify_object):
1064 If case table has been changed, call Fset_case_table.
1066 1996-05-04 Richard Stallman <rms@delasyd.gnu.ai.mit.edu>
1068 * editfns.c (Fencode_time): Accept MANY args, so as to cope
1069 with the value of decode-time.
1071 1996-05-03 Andrew Innes <andrewi@harlequin.co.uk>
1073 * keyboard.c (Qup, Qdown): New variables.
1074 (syms_of_keyboard): Initialize and staticpro.
1075 (scroll_bar_parts): Add Qup and Qdown.
1076 (make_lispy_event) [WINDOWSNT]: Handle win32_scroll_bar_click.
1078 * termhooks.h (enum scroll_bar_part): New alternatives
1079 scroll_bar_up_arrow, scroll_bar_down_arrow.
1080 (win32_scroll_bar_click): New enum constant.
1082 1996-05-03 Andrew Innes <andrewi@harlequin.co.uk>
1084 * makefile.nt (SUBSYSTEM) [NTGUI]: Remove conditional.
1085 (LINK_FLAGS): Explicitly set base address, and stack and heap sizes.
1086 (nt.obj): Add dependency to nt.h.
1088 * nt.c (nt_ctime): Function renamed to sys_ctime.
1090 Undefine macros for shadowed CRT functions.
1091 (nt_stat, get_unassigned_drive_letter, is_toplevel_share_name,
1092 stat_toplevel_share): Functions deleted.
1094 Include sys/socket.h and
1095 undefine macros for shadowed socket functions.
1097 (getwd): Return NULL if GetCurrentDirectory fails.
1099 (gethostname) [!HAVE_SOCKETS]: Replace with winsock version.
1101 (nt_sleep): Renamed to sys_sleep.
1103 (rename): Renamed to sys_rename. Always rename to a temporary name
1104 first on Windows 95. Unlink new name first if necessary.
1106 (dir_finding): Variable deleted.
1107 (dir_is_fat, dir_pathname): New variables.
1109 (openddir): Fail if dir_find_handle is in use. Save directory name
1110 in dir_pathname, and set dir_is_fat appropriately.
1111 (closedir, readdir): Use dir_find_handle in place of dir_finding.
1112 (readdir): Copy directory name from dir_pathname on first
1113 call. Use IS_DIRECTORY_SEP instead of IS_ANY_SEP. Force filename
1114 to be lower case on FAT volumes.
1116 (getpwuid): Move struct passwd initialization to init_user_info,
1117 return information for current user if uid matches.
1119 (getuid, geteuid): Return uid determined by init_user_info.
1120 (getgid, getegid): New functions.
1122 (getpwnam): Ignore case when comparing name.
1123 (init_user_info): New function. Determine user name and id from
1124 NT security calls if possible, otherwise try Windows networking
1125 calls before falling back to hard-coded defaults. Ensure HOME and
1126 SHELL environment variables are set.
1128 (unixtodos_filename): New function.
1130 (REG_ROOT): Trailing backslash removed.
1132 (init_environment): Call init_user_info.
1134 (get_inode_and_device_vals, pipe_with_inherited_out,
1135 pipe_with_inherited_in): Functions deleted.
1137 (prepare_standard_handles, reset_standard_handles): Moved to
1138 ntproc.c and simplified to match other changes (all handles are
1139 already non-inheritable).
1141 (get_emacs_configuration): Detect Windows flavour (Windows 95 or
1142 NT) at run-time. Change OS name for Windows 95 to be "win95".
1144 (fd_info): New variable. Array of extra info for file descriptors
1145 needed for pipe/socket support.
1147 (utc_base_ft, utc_base, init): New internal variables used for
1150 (get_volume_info, is_fat_volume, map_win32_filename, convert_time,
1151 convert_from_time_t, hashval, generate_inode_val): New
1152 internal support functions for shadowed C library functions.
1154 (sys_access, sys_chdir, sys_chmod, sys_link, sys_mkdir,
1155 sys_mktemp, sys_rmdir, sys_unlink): Call map_win32_filename
1156 before calling shadowed C library function.
1158 (sys_fopen, sys_open): Map file names, and ensure file handle is
1161 (stat): Replace buggy library function. Fake reaonsable i-node
1162 values by hashing the canonical file name, and use uid/gid values
1163 determined by init_user_info.
1165 (term_winsock, init_winsock, set_errno, check_errno)
1166 [HAVE_SOCKETS]: New internal socket support functions (plus
1167 associated variables) required to support dynamic linking to
1168 Windows socket library.
1170 (sys_socket, sys_bind, sys_connect, sys_htons, sys_ntohs,
1171 sys_inet_addr, sys_gethostname, sys_gethostbyname,
1172 sys_getservbyname) [HAVE_SOCKETS]: New functions to provide
1173 dynamically loaded interface to Windows socket library.
1175 (sys_close, sys_dup, sys_dup2, sys_read, sys_write): New wrappers
1176 for C library functions to handle sockets and pipes.
1178 (sys_pipe): Make pipe handles non-inheritable, and set binary mode
1181 (_sys_read_ahead): New internal support function for pipe/socket
1182 support in sys_select.
1184 (term_ntproc): New function.
1185 (init_ntproc): New function to initialise socket support and make
1186 initial std handles non-inheritable. Also ensure stdin, stdout
1187 and stderr have valid handles so that pipes and sockets can't
1188 inadvertently use fd 0, 1, or 2.
1190 * nt.h: Check to see if already included.
1191 (fd_set, filedesc): New structures.
1192 (child_process, MAX_CHILDREN, CHILD_ACTIVE): Definitions moved
1194 (FD_SET, FD_CLR, FD_ISSET, FD_ZERO): Operate on fd_set structures.
1195 (SELECT_TYPE): New macro.
1196 New child process status enumeration.
1197 (FILE_READ, FILE_WRITE, FILE_BINARY, FILE_PIPE, FILE_SOCKET):
1199 (fd_info, new_child, delete_child): Declared.
1201 * ntheap.c: Include lisp.h.
1202 (allocate_heap): Use VALBITS to determine size of heap.
1203 (allocate_heap) [WINDOWS95]: Conditional code removed.
1204 (sbrk): Use VALMASK instead of an unsigned integer mask.
1206 * ntinevt.c (win32_kdb_patch_key): Initialize isdead.
1207 (key_event) [HAVE_NTGUI]: Use Windows key code.
1209 * ntproc.c: Include config.h after CRT headers. Include fcntl.h.
1210 (child_process, MAX_CHILDREN, CHILD_ACTIVE): Moved to nt.h.
1211 (DebugPrint): New macro.
1212 (new_child): Create input event structures for child processes.
1213 (delete_child): New function.
1214 (reader_thread): Return nonzero upon failure. Use _sys_read_ahead.
1215 (create_child): Add child_process and parent PID arguments.
1216 Don't create input event or thread structures here.
1217 Fixup Windows 95 negative process IDs.
1218 (register_child): Don't set consumed event; instead, set thread
1219 status so that select will release it.
1220 (remove_child): Renamed to reap_process. Only free resources
1221 of synchronous children.
1222 (win32_wait): Renamed to sys_wait. Sanity check to make sure
1223 handle to subprocess exists. Don't reclaim thread resources here.
1224 (win32_spawnve): Renamed to sys_spawnve.
1225 Check for proper wait mode first thing.
1226 Convert command name to DOS format.
1227 Quote whitespace and quotes in arguments to subprocess.
1228 Use alloca instead of malloc.
1229 If max subprocesses, return EAGAIN in hopes of another completing.
1230 (sys_select): Add support for socket input. Remove dead code.
1231 Check input from children fairly.
1232 (sys_select) [HAVE_TIMEVAL]: Remove conditional check and code.
1233 (win32_kill_process): Renamed to sys_kill. Use OpenProcess
1234 to terminate process.
1235 (prepate_standard_handles, reset_standard_handles): Moved here
1238 * ntterm.c (reset_kbd): Try to use interrupt input.
1240 * unexnt.c (WinMain): Function removed.
1241 (_start) [HAVE_NTGUI]: Don't invoke WinMain, but do set up
1242 WinMain args as crt0.c would.
1244 * w32fns.c (quit_char, Vwin32_enable_italics, Vwin32_enable_palette):
1246 (syms_of_win32fns): Set up new lisp variables.
1248 (Fwin32_rgb): Dead procedure removed.
1249 (Fwin32_define_rgb_color, Fwin32_load_color_file, win32_map_color,
1250 win32_regenerate_palette, win32_unmap_color): New functions.
1251 (syms_of_w32fns): Set up new lisp functions.
1252 (define_color): Use palettes. Simulate use of PALETTE_RGB to
1253 use closest color instead of dithering.
1254 (map_mode): Function removed.
1255 (WIN32_COLOR, SET_WIN32_COLOR): New macros.
1257 (win32_init_class): Don't set CS_OWNDC in the WNDCLASS style.
1258 (win32_createwindow): Invoke ShowWindow to discard defaults
1260 (win32_wnd_proc): Use separate critical sections appropriately.
1261 Handle palette change, show window, and set window position messages.
1262 Record WINDOWPLACEMENT structure length.
1264 (Fx_create_frame): Set scrollbar width to be the system standard.
1266 (Ffocus_frame, Funfocus_frame): Functions now do nothing.
1268 (x_to_win32_weight, win32_to_x_weight): Handle "heavy", "extrabold",
1269 "light", "extralight", and "thin" fonts.
1270 (x_to_win32_charset, win32_to_x_charset): New functions.
1271 (win32_to_x_font): Use new height units. Use win32_to_x_charset.
1272 (x_to_win32_font): Use x_to_win32_charset. Support Win32 font names
1273 in addition to X font names.
1275 (win32_load_font, Fx_list_fonts, Fx_display_color_cells,
1276 Fx_display_mm_height, Fx_display_mm_width: Use GetDC directly.
1278 (Fx_open_connection): Support external color mapping files.
1280 (win32_abort): Map abort button to abort, retry to debug, and
1283 * w32reg.c (REG_ROOT): Remove trailing backslash.
1285 * w32select.c (Fwin32_set_clipboard_data, Fwin32_get_clipboard_data):
1286 Calculate exact size of clipboard string with CRs removed or inserted.
1288 * w32term.c (Vwindow_system): Declared.
1289 (win32_fill_rect, dumpglyphs, do_line_dance, x_draw_box):
1290 Use Get/ReleaseFrameDC.
1292 (pixel_to_glyph_coords): Support tty mode.
1293 (w32_read_socket): Explicitly use FALSE.
1294 Handle WM_PALLETTECHANGED event.
1295 (parse_button): Handle mouse button emulation.
1297 (my_show_window, my_set_window_pos): New functions.
1298 (x_set_offset, x_set_window_size, x_raise_frame, x_lower_frame):
1299 Use my_set_window_pos.
1300 (x_make_frame_visible, x_iconify_frame): Use my_show_window.
1302 (x_draw_box): Don't trim right and bottom.
1303 (x_make_frame_visible): Don't invoke SetForgroundWindow.
1305 (win32_term_init): Use GetDC directly. Initialize palette
1306 and win32_num_mouse_buttons.
1307 (win32_update_begin): Regenerate palette if necessary.
1308 (x_delete_display): Free palette.
1310 (win32_initialize) [ATTACH_THREADS]: Only AttachThreadInput if
1311 conditional is defined.
1313 * w32term.h (struct win32_palette_entry): New structure.
1314 (win32_display_info): New fields has_palette, p_colors_in_use,
1315 n_colors_in_use, h_palette.
1316 (win32_output): New field h_old_palette.
1317 (WM_EMACS_SETWINDOWPOS): New macro.
1318 (WM_EMACS_DESTROY_WINDOW): Value redefined.
1319 (win32_window_pos): New structure.
1320 (GetFrameDC, ReleaseFrameDC): Functions declared.
1322 (my_get_dc): Macro undefined.
1323 (map_mode): Function declaration removed.
1324 (enter_crit, leave_crit): Function declarations changed to macros.
1326 * w32xfns.c: Include frame.h.
1327 (hEvent): Renamed to h_input_available.
1328 (init_crit, delete_crit, get_next_msg, post_msg):
1329 Use h_input_available.
1330 (GetFrameDC, ReleaseFrameDC): New functions.
1331 (leave_crit): Function removed.
1333 * s/windowsnt.h: Include string.h.
1334 (HAVE_FREXP, HAVE_FMOD): Macros removed.
1335 (struct timeval, struct timezone, gettimeofday): Declarations removed.
1336 (HAVE_SOCKETS, MAIL_USE_POP, MAIL_USE_SYSTEM_LOCK): Macros defined.
1337 (DIRECTORY_SEP): Use Vdirectory_sep_char.
1338 (EXEC_SUFFIXES): Add .cmd to list of suffixes.
1339 (HAVE_SYS_TIMEB_H, HAVE_SYS_TIME_H, HAVE_UNISTD_H, STDC_HEADERS,
1340 TIME_WITH_SYS_TIME, HAVE_GETTIMEOFDAY, HAVE_CLOSEDIR,
1341 HAVE_LONG_FILE_NAMES, HAVE_BCOPY, HAVE_BCMP, HAVE_LOGB, HAVE_FREXP,
1342 HAVE_FMOD, HAVE_FTIME, HAVE_MKTIME, HAVE_H_ERRNO): New macros.
1343 (access, chdir, chmod, close, creat, ctime, dup, dup2, fopen,
1344 link, mkdir, mktemp, open, pipe, read, rename, rmdir, select,
1345 sleep, unlink, write, spawnve, wait, kill, signal):
1346 Macros redefined from win32_* to sys_*.
1347 [__STDC__]: Define when including direct.h, io.h, stdio.h.
1348 (struct nt_stat): Definition removed.
1349 (stat, st_dev, st_ino, st_mode, st_nlink, st_uid, st_gid,
1350 st_rdev, st_size, st_atime, st_mtime, st_ctime): Macros undefined.
1352 * s/windows95.h: File removed.
1354 1996-05-02 Richard Stallman <rms@delasyd.gnu.ai.mit.edu>
1356 * keyboard.c (Fthis_single_command_keys): New function.
1357 (syms_of_keyboard): defsubr it.
1358 (this_single_command_key_start): New variable.
1359 (add_command_key): Reduce this_single_command_key_start if nec.
1360 (command_loop_1): Clear this_single_command_key_start if nec.
1361 (Fread_key_sequence, Fexecute_extended_command): Likewise.
1362 (read_key_sequence): Set this_single_command_key_start.
1363 (command_loop_1): Clear echo area while inhibit-quit is still t.
1365 1996-05-01 Richard Stallman <rms@delasyd.gnu.ai.mit.edu>
1367 * keyboard.c (Fevent_convert_list): Never treat last elt as modifier.
1369 * buffer.c (add_overlay_mod_hooklist): Fix call to bcopy.
1371 * insdel.c (signal_after_change): Correct the arg to
1372 report_overlay_modification.
1374 * s/sol2-4.h (C_SWITCH_X_SYSTEM): Definition moved from sol2.h.
1376 * s/sol2.h (C_SWITCH_X_SYSTEM): Definition moved to sol2-4.h.
1378 1996-05-01 Eli Zaretskii <eliz@is.elta.co.il>
1380 * msdos.c (dos_get_modifiers): Restore missing comment terminator.
1381 (getdefdir): Rewrite to call `_fixpath' instead of `intdos'.
1382 (run_msdos_command) [DJGPP > 1]: Work around some MSDOS
1383 command-line restrictions by running shell commands via `system'
1384 instead of `spawnve'.
1386 * fileio.c (Fexpand_file_name) [DOS_NT]: Correct the `if' clause
1387 to compile on all platforms.
1389 1996-04-30 Richard Stallman <rms@delasyd.gnu.ai.mit.edu>
1391 * xterm.c [USE_X_TOOLKIT]: Include X11/Shell.h.
1392 (x_wm_set_icon_pixmap) [USE_X_TOOLKIT]: Tell widget the new pixmap.
1394 1996-04-29 Andrew Innes <andrewi@harlequin.co.uk>
1396 * fileio.c (Fexpand_file_name) [DOS_NT]: Keep dir sep following ~
1397 or ~user, but don't collapse the newdir prefix in that case.
1399 1996-04-26 Richard Stallman <rms@delasyd.gnu.ai.mit.edu>
1401 * keyboard.c (make_lispy_event): FRAME_MENU_BAR_ITEMS now has
1402 four elements per item. Add a separate slot for the hpos.
1403 (menu_bar_items): Likewise.
1404 (menu_bar_item): Initialize the hpos slot to 0.
1406 * xdisp.c (display_menu_bar): FRAME_MENU_BAR_ITEMS now has
1407 four elements per item.
1408 (update_menu_bar): If we update FRAME_MENU_BAR_ITEMS,
1409 also set w->update_mode_line.
1411 * xmenu.c (set_frame_menubar): FRAME_MENU_BAR_ITEMS now has
1412 four elements per item.
1414 * w32menu.c (get_frame_menubar_event, set_frame_menubar):
1415 FRAME_MENU_BAR_ITEMS now has four elements per item.
1417 * fileio.c (Fexpand_file_name, Ffile_name_absolute_p): Doc fixes.
1418 (Ffile_exists_p, Ffile_executable_p, Ffile_readable_p)
1419 (Ffile_writable_p, Ffile_directory_p, Ffile_regular_p)
1420 (Ffile_modes, Fset_file_modes, Ffile_newer_than_file_p)
1421 (expand_and_dir_to_file): Rename abspath to absname.
1423 1996-04-26 Andrew Innes <andrewi@harlequin.co.uk>
1425 * fileio.c (Fexpand_file_name) [!DOS_NT]: Fix incorrect expansion of
1426 "/foo/../bar" -> "//bar". Delete relpath variable.
1428 * fileio.c (CORRECT_DIR_SEPS) [DOS_NT]: New macro.
1429 (IS_DRIVE) [DOS_NT]: Added separate definitions for DOS and NT.
1430 (Ffile_name_directory) [DOS_NT]: Simplify code to match change in
1431 getdefdir in msdos.c. Ignore embedded colons. Correct dir seps.
1432 (Ffile_name_nondirectory) [DOS_NT]: Ignore embedded colons.
1433 Correct IS_ANY_SEP to IS_DIRECTORY_SEP.
1434 (file_name_as_directory) [DOS_NT]: Correct dir seps.
1435 Correct IS_ANY_SEP to IS_DIRECTORY_SEP.
1436 (directory_file_name) [DOS_NT]: Correct dir seps.
1437 (Fmake_temp_name) [DOS_NT]: Correct dir seps.
1438 (Fexpand_file_name) [DOS_NT]: Remove relpath, tmp and
1439 defdir variables; init drive to 0.
1440 Correctly detect when default_directory is absolute.
1441 Be strict when looking for MSDOS drive specifier; defer calling
1442 getdefdir. Ignore drive specifier if name now has UNC prefix.
1443 Correctly recognise if name is not absolute when trying simple
1444 method to expand; return original string if possible.
1445 Skip dir sep after ~ or ~user.
1446 Use getpwnam instead of HOME for ~user on NT.
1447 Handle error return from getdefdir.
1448 Correctly detect if newdir is absolute before using default_directory.
1449 Handle case where newdir is not absolute - expand relative to
1450 current working dir if necessary (instead of calling getdisk
1451 later). Only keep UNC prefix if nm starts with dir sep.
1452 Replace kludgy handling of drive spec in newdir. Correct dir seps.
1453 (Fsubstitute_in_file_name) [DOS_NT]: Correct dir seps for NT as
1454 well. Merge equivalent #ifdef APOLLO and WINDOWSNT cases. Ignore
1455 embedded colons and be strict about drive specs.
1456 (Fcopy_file) [DOS_NT]: Do dev/inode check on NT.
1457 (Ffile_name_absolute_p) [DOS_NT]: Be strict about drive specs.
1458 (check_executable) [DOS_NT]: Test st_mode on NT.
1459 (Ffile_readable_p) [DOS_NT]: Use access instead of open on NT.
1460 (Ffile_modes) [DOS_NT]: Don't embelish st_mode value on NT.
1461 (Fread_file_name) [DOS_NT]: Correct dir seps in HOME.
1462 (syms_of_fileio): Add Vdirectory_sep_char.
1464 * msdos.c (getdefdir): Include drive letter and colon when
1465 constructing default directory for drive.
1467 1996-04-26 Richard Stallman <rms@delasyd.gnu.ai.mit.edu>
1469 * xterm.c (x_scroll_bar_clear): Do nothing if frame now has no
1472 * xfns.c (x_window) [! USE_X_TOOLKIT]: Initialize wm_hints.icon_pixmap.
1474 1996-04-26 Andrew Innes <andrewi@harlequin.co.uk>
1476 * callproc.c (Fcall_process) [WINDOWSNT]: Remove conditional NT code.
1477 (Fcall_process_region) [DOSNT]: Canonicalize slashes in filename.
1478 (child_setup) [WINDOWSNT]: Decrease handles array by one.
1480 * dired.c (Ffile_attributes) [WINDOWSNT]: Remove conditional NT code.
1482 * emacs.c (main) [WINDOWSNT]: Invoke init_ntproc.
1483 (shut_down_emacs) [WINDOWSNT]: Invoke term_ntproc.
1485 * lisp.h [WINDOWS_NT]: Declare Vdirectory_sep_char.
1487 * lread.c (close_load_descs) [WINDOWS_NT]: Don't actually do anything.
1489 * process.c (Fopen_network_stream): Set process infd to inch.
1490 (create_process, read_process_output, Fsignal_process) [WINDOWSNT]:
1491 Remove conditional NT code.
1493 * syssignal.h (EMACS_KILLPG) [WINDOWSNT]: Invoke kill instead of
1496 * term.c (FRAME_TERMCAP_P) [WINDOWSNT && !HAVE_NTGUI]: Remove
1497 conditional for HAVE_NTGUI.
1499 1996-04-25 Eli Zaretskii <eliz@is.elta.co.il>
1501 * msdos.c (getdefdir) [DJGPP > 1]: Use 32-bit ESI to pass buffer
1502 address to `intdos' instead of SI which can be 16-bit.
1504 1996-04-25 Richard Stallman <rms@delasyd.gnu.ai.mit.edu>
1506 * lread.c (read_escape): Detect READCHAR reporting eof.
1508 * editfns.c (save_excursion_restore): Add gcpros.
1510 * unexelf.c (unexec): Add conditional for SOLARIS_POWERPC.
1512 * fileio.c (syms_of_fileio): Doc fix.
1514 1996-04-24 Richard Stallman <rms@delasyd.gnu.ai.mit.edu>
1516 * xfns.c (Fx_list_fonts) [BROKEN_XLISTFONTSWITHINFO]:
1517 Free the font, and the fontinfo too if we don't want it.
1519 * xterm.c (x_connection_signal): Call sigunblock properly.
1521 1996-04-23 Richard Stallman <rms@delasyd.gnu.ai.mit.edu>
1523 * dispnew.c: Include blockinput.h.
1524 (change_frame_size_1): Block input around the real work.
1526 * Makefile.in (dispnew.o): Depend on blockinput.h.
1528 1996-04-21 Richard Stallman <rms@delasyd.gnu.ai.mit.edu>
1530 * process.c (wait_reading_process_input, both definitions):
1531 If wait_for_cell, don't call timer_check, and use
1532 detect_input_pending instead of detect_input_pending_run_timers.
1534 * frame.c (Fframe_parameters, both definitions):
1535 Get sizes from FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH if they are nonzero.
1537 1996-04-20 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
1539 * indent.c (compute_motion): Pass window to Fget_char_property.
1541 1996-04-19 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1543 * keyboard.c (read_key_sequence):
1544 Fix confusion between key and new_key.
1546 1996-04-18 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1548 * keyboard.c (syms_of_keyboard): Doc fix.
1550 1996-04-17 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1552 * xterm.h (STANDARD_EVENT_SET): Remove PointerNotifyHintMask.
1553 * widget.c (EmacsFrameRealize): Use STANDARD_EVENT_SET.
1554 * xterm.c (note_mouse_movement): Don't call XQueryPointer.
1555 (x_scroll_bar_note_movement): Don't call XQueryPointer.
1557 * xterm.c (x_new_font): Intern FONT just once for finding full name.
1559 * xterm.h (CHECK_X_FRAME): Macro deleted.
1561 1996-04-16 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1563 * xdisp.c (decode_mode_spec): For %F, use explicit name or `Emacs'.
1564 (decode_mode_spec): Use frame F, not selected frame.
1565 On termcap frames, implicit names are ok.
1567 1996-04-16 Andrew Innes <andrewi@harlequin.co.uk>
1569 * w32term.c (w32_read_socket): Initialize frame_or_window field.
1570 (x_make_frame_visible): Don't call SetForegroundWindow
1572 (win32_initialize): Call AttachThreadInput at the end.
1574 * w32fns.c (defined_color): Map color to nearest in default palette.
1575 (win32_wnd_proc): Special handling for WM_CLOSE.
1577 1996-04-16 Kim Storm <storm@olicom.dk>
1579 * msdos.c (check_timer): Removed; use gettime instead.
1580 (sys_select): Call __dpmi_yield while waiting for input to
1581 improve multitasking behaviour.
1582 Do not check timer when no timeout.
1584 1996-04-16 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1586 * buffer.c (syms_of_buffer): Doc fix.
1588 1996-04-15 Eli Zaretskii <eliz@is.elta.co.il>
1590 * process.c (wait_reading_process_input) [!subprocesses]:
1591 Get rid of the loop around the detect_input_pending call.
1593 1996-04-14 Eli Zaretskii <eliz@is.elta.co.il>
1595 * process.c (wait_reading_process_input) [!subprocesses]: Handle
1596 the case of READ_KBD being a cons cell. Retry the timer check
1597 after a timer fired. (All of these make this definition
1598 consistent with the one that supports async subprocesses.)
1600 1996-04-13 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1602 * process.c (wait_reading_process_input, both definitions):
1603 Use plain detect_input_pending just before the select call.
1604 (wait_reading_process_input) [subprocesses]:
1605 Get rid of the loop around the detect_input_pending call.
1607 * editfns.c (Fcompare_buffer_substrings): Fix dumb bug handling
1608 buffer name as second arg.
1610 * xfns.c (x_set_frame_parameters): Get height and width from
1611 FRAME_NEW_WIDTH and FRAME_NEW_HEIGHT if nonzero.
1613 1996-04-12 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1615 * emacs.c (main) [MSDOS]: Always call tzset, not init__gettimeofday.
1617 * editfns.c (Fformat_time_string): Doc fix.
1619 1996-04-11 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1621 * keyboard.c (read_char): Use detect_input_pending_run_timers
1622 before redisplay, not detect_input_pending.
1623 (readable_events): Don't touch timers at all if DO_TIMERS_NOW is 0.
1624 (timer_check): Always run timers directly.
1625 Bind inhibit-quit to t here.
1627 * process.c (wait_reading_process_input, both definitions):
1628 Don't call detect_input_pending; use detect_input_pending_run_timers.
1630 1996-04-11 Erik Naggum <erik@naggum.no>
1632 * emacs.c (standard_args): Synchronize with startup.el.
1634 1996-04-11 Eli Zaretskii <eliz@is.elta.co.il>
1636 * msdos.c: Include signal.h.
1637 (__write) [DJGPP == 2.0]: New function, avoids
1638 calling `malloc' while writing to a text file, so that buffer
1639 text being written won't be relocated.
1640 (abort) [DJGPP > 1]: Generate traceback, to identify the abort
1643 * emacs.c (main) [DJGPP v2]: Make standard streams use binary mode.
1644 Call `tzset' instead of `init_gettimeofday'.
1646 * fileio.c [MSDOS]: If DJGPP version 2, include fcntl.h and string.h.
1648 * lread.c [MSDOS]: If DJGPP version 2, include unistd.h.
1649 Include msdos.h somewhat earlier. For X_OK.
1651 * unexec.c [DJGPP v2]: Include fcntl.h.
1652 (copy_text_and_data) [DJGPP v2]: Momentarily restore
1653 the hardware exceptions table before dumping it.
1655 * sysdep.c [DJGPP]: Declare `etext' and `start'.
1656 (wait_for_termination) [DJGPP]: Do not wait for child on MS-DOS.
1657 (sys_subshell): Ignore signals while sub-shell runs.
1659 * sysdep.c [DJGPP v2] (etext, start): Declared.
1660 (wait_for_termination) [DJGPP v2]: Just exit.
1662 * s/msdos.h (DATA_START, TEXT_START, TEXT_END, _NAIVE_DOS_REGS)
1663 (POSIX_SIGNALS): Define if DJGPP v2.
1664 (LIBS_SYSTEM, chdir, NO_MODE_T, TEXT_START, NO_MATHERR)
1665 (LOCALTIME_CACHE, tzset): Don't define if DJGPP v2.
1667 * msdos.c [MSDOS]: If DJGPP version 2, include fcntl.h.
1668 (_crt0_startup_flags): Initialize to work
1669 correctly both with and without GNU `malloc' and `ralloc'.
1670 (internal_terminal_init): Use only 3 bits when setting background
1672 (init_environment): Call tzset, not init_gettimeofday.
1673 (ctrl_break_vector, ctrl_break_regs): Don't define if DJGPP v2.
1674 (ctrl_break_func, install_ctrl_break_check): Don't define if DJGPP v2.
1675 (dos_ttraw) [DJGPP v2]: Don't call install_ctrl_break_check.
1676 Call setmode at the end and exit.
1677 (dos_ttcooked) [DJGPP v2]: Call setmode at the end and exit.
1678 (gethostname, gettimeofday): Don't define if DJGPP v2.
1679 (alarm, fork, kill, nicr, pause, sigsetask): Don't define if DJGPP v2.
1681 1996-04-11 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1683 * xdisp.c (redisplay_window): Move w->start marker before
1684 running window-scroll-functions (in scroll_step case).
1686 1996-04-11 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1688 * syswait.h: Remove `|| defined (LINUX)' from #if condition.
1690 * s/lignux.h: Define HAVE_WAIT_HEADER.
1692 1996-04-11 Geoff Voelker <voelker@cs.washington.edu>
1694 * w32fns.c (win32_color_map): Use PALETTERGB instead of RGB.
1696 * w32term.h (BLACK_PIX_DEFAULT, WHITE_PIX_DEFAULT): Use PALETTERGB
1699 1996-04-10 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1701 * term.c (calculate_ins_del_char_costs): Use proper frame's width.
1703 * frame.c (make_frame_without_minibuffer): Don't change the
1704 mini_window's buffer if it already displays a minibuffer.
1706 * xfns.c (Fx_list_fonts): Handle X protocol errors.
1708 1996-04-09 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1710 * minibuf.c (read_minibuf): GCPRO ambient_dir.
1712 1996-04-08 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1714 * frame.c (Fset_frame_size): Do call Fset_frame_size
1715 if size is specified and there is a pending size change already.
1717 * xfns.c (x_set_frame_parameters): Do call Fset_frame_size
1718 if size is specified and there is a pending size change already.
1720 * xterm.c: Include locale.h if HAVE_SETLOCALE.
1721 (x_term_init): Restore LC_TIME as well as LC_NUMERIC.
1723 1996-04-08 Miles Bader <miles@gnu.ai.mit.edu>
1725 * s/gnu.h (HAVE_PTYS): #undef removed.
1727 1996-04-08 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1729 * config.in (HAVE_LIBNCURSES): Renamed from HAVE_NCURSES.
1730 * s/lignux.h: Test HAVE_LIBNCURSES, not HAVE_NCURSES.
1732 1996-04-06 Richard Stallman <rms@lucy.gnu.ai.mit.edu>
1734 * dispnew.c (sit_for): Call swallow_events.
1736 1996-04-05 Richard Stallman <rms@lucy.gnu.ai.mit.edu>
1738 * s/lignux.h [HAVE_NCURSES] (LIBS_TERMCAP): New definition.
1740 * alloc.c (garbage_collection_messages): New variable.
1741 (syms_of_alloc): Set up Lisp variable.
1742 (Fgarbage_collect): Variable controls whether to display messages.
1744 * lread.c: Include locale.h.
1745 (init_lread): Specify LC_NUMERIC locale.
1746 * xterm.c (x_term_init): Respecify LC_NUMERIC locale.
1748 * config.in (HAVE_SETLOCALE): Add #undef.
1750 1996-04-04 Richard Stallman <rms@lucy.gnu.ai.mit.edu>
1752 * ralloc.c (r_alloc_check): Don't check alignment of h->start.
1754 * minibuf.c (read_minibuf): Rearrange operations, mainly putting
1755 the read_minibuf_unwind setup and the associated variable changes
1756 together after saving the frame configuration.
1758 1996-04-03 Richard Stallman <rms@lucy.gnu.ai.mit.edu>
1760 * process.c (wait_reading_process_input): Don't call
1761 wait_reading_process_input_1 if time_limit is -1.
1763 1996-04-02 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1765 * xterm.c (x_destroy_window): Do call XCloseIM if X11R6.
1767 1996-04-01 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1769 * emacs.c (main): Initialize displayname.
1771 1996-03-30 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1773 * s/lignux.h (TERMINFO): Do define (if HAVE_NCURSES).
1775 1996-03-29 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1777 * xterm.c (x_destroy_window) [SOLARIS2]: Don't free the IC or IM.
1779 1996-03-28 Geoff Voelker <voelker@cs.washington.edu>
1781 * nt.c (rename): New function.
1783 1996-03-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1785 * fileio.c (Frename_file) [WINDOWSNT]: Remove conditional code.
1787 * keyboard.c (last_timer_event): New variable.
1788 (timer_check): Set that variable.
1790 1996-03-28 Erik Naggum <erik@naggum.no>
1792 * dispnew.c (make_frame_glyphs): Zero the correct number of bytes.
1794 * widget.c (EmacsFrameResize): We may be called from an interrupt,
1795 so delay the resize operation.
1797 1996-03-27 Geoff Voelker <voelker@cs.washington.edu>
1799 * makefile.nt: Change uses of del to $(DEL).
1801 1996-03-27 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1803 * xterm.c (x_connection_closed): Don't check _Xdebug.
1805 1996-03-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1807 * xterm.c (XTread_socket, MapNotify case):
1808 Call record_asynch_buffer_change only if >1 frames.
1810 * s/lignux.h: Renamed from s/linux.h.
1811 (SYSTEM_TYPE): Changed to "lignux".
1813 * process.c (wait_reading_process_input_1): New (empty) function.
1814 (wait_reading_process_input): Call wait_reading_process_input_1.
1815 If timer_check runs some timers, retry it.
1817 1996-03-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1819 * Makefile.in (xfns.o, xmenu.o, widget.o): Depend on ../lwlib/lwlib.h.
1821 * callproc.c (Fcall_process, child_setup): If BSD_PGRPS, call
1822 setpgrp the BSD way even on USG.
1824 * s/linux.h (setpgrp): New macro.
1825 (BSD_PGRPS): Defined.
1827 1996-03-19 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1829 * callint.c (Fcall_interactively): In `c' case, use message_nolog
1830 instead of message1_nolog.
1832 1996-03-19 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1834 * config.in (HAVE_LINUX_VERSION_H): Renamed from HAVE_VERSION_H.
1835 * s/linux.h: Test HAVE_LINUX_VERSION_H, not HAVE_VERSION_H.
1837 1996-03-17 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1839 * process.c (wait_reading_process_input): Eliminate bogus test
1840 that was trying to check read_kbd and failing.
1842 1996-03-17 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1844 * xfns.c (X_I18N_INHIBITED): New macro--define this
1845 instead of undefining HAVE_X_I18N.
1846 (x_window) [HAVE_X_I18N]: Set FRAME_XIM.
1847 [X_I18N_INHIBITED]: Set FRAME_XIM and FRAME_XIC to 0.
1849 * xterm.c (x_destroy_window) [HAVE_X_I18N]: Free xic and xim of frame.
1851 * xterm.h (struct x_output): New member xim.
1852 (FRAME_XIM): New macro.
1854 1996-03-16 Geoff Voelker <voelker@cs.washington.edu>
1856 * unexnt.c (WinMain): Allocate a console for stdout
1857 and stderr if necessary.
1859 * w32fns.c (Vwin32_pass_alt_to_system,
1860 Vwin32_pass_optional_keys_to_system): New variables.
1861 (reset_modifiers, map_keypad_keys): New functions.
1862 (win32_wnd_proc): Fixup keypad function keys.
1863 Handle the three new keys on Windows keyboards.
1864 Reset internal keyboard modifier state upon window focus.
1866 * w32term.h (VK_NUMPAD_*, VK_LWIN, VK_RWIN, VK_APPS):
1867 Define virtual keys for the numpad functions and the three
1868 new keys on Windows keyboards.
1870 1996-03-14 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
1872 * s/aix3-2.h (X11R5_INHIBIT_I18N): Definition moved here.
1873 * s/aix3-2-5.h (X11R5_INHIBIT_I18N): Definition moved to aix3-2.h.
1875 * s/irix5-2.h (NEED_LIBW): Defined.
1877 1996-03-13 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
1879 * widget.c (update_from_various_frame_slots)
1880 (update_various_frame_slots): Take account of menubar_height.
1882 * s/linux.h (LINUX_SIGIO_DOES_WORK): Define only if HAVE_VERSION_H.
1884 * config.in (HAVE_VERSION_H): Add #undef.
1886 1996-03-11 Eli Zaretskii <eliz@is.elta.co.il>
1888 * process.c (wait_reading_process_input) [! subprocesses]: Run
1889 timers and redisplay if they were run, like the code for systems
1890 which support subprocesses does.
1892 1996-03-10 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1894 * s/linux.h (TERMINFO): Don't define this.
1896 * process.c [!subprocesses] (wait_reading_process_input):
1897 Port the timer changes from the other wait_reading_process_input.
1899 1996-03-09 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1901 * xterm.c (x_calc_absolute_position): Don't explicitly subtract
1902 the external menu bar height--PIXEL_HEIGHT (f) includes that.
1904 1996-03-08 Bill Mann <dvmann@dvaix19.praxisint.com>
1906 * m/ibmrs6000.h (LD_SWITCH_MACHINE): Undo previous change--
1907 define this unconditionally.
1908 (LD_SWITCH_SITE): New conditional definition.
1909 For gcc 2.7.x, use /bin/ld instead of collect2,
1911 1996-03-07 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1913 * emacs.c (main) [! HAVE_NTGUI]: Don't call syms_of_xmenu.
1915 1996-03-07 Bill Mann <dvmann@dvaix19.praxisint.com>
1917 * unexaix.c (write_segment,copy_sym): Increase blocking from
1919 (adjust_lnnoptrs): Handle include file names, mostly for dbx.
1920 (unrelocate_symbols): Remove some unnecessary tests.
1922 1996-03-07 Eli Zaretskii <eliz@is.elta.co.il>
1924 * Makefile.in (MSDOS_OBJ): Remove xmenu.o.
1926 * msdos.c (check_timer): Remove code for dos-display-time.
1927 (syms_of_msdos): Delete dos-display-time Lisp var.
1929 1996-03-07 Bill Mann <dvmann@dvaix19.praxisint.com>
1931 * unexaix.c: Handle both AIX 3.2 and 4.1 bind output.
1932 (make_hdr): Handle data_start being non-zero for 4.1. Padding
1933 sections are omitted in 4.1, but padding bytes can still be
1934 present. Calculate bias directly from first real section
1936 (copy_text_and_data): Correct data section starting point for 4.1.
1937 (adjust_lnnoptrs): Adjust line number pointers correctly for both
1938 3.2 and 4.1, based on published IBM documentation.
1939 (unrelocate_symbols): Compute and subtract relocation offsets for
1940 text and data sections. Handle data_start being non-zero for 4.1.
1941 Skip unnecessary writes.
1943 1996-03-06 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1945 * sysdep.c (init_sys_modes): Clear INLCR like ICRNL.
1947 * widget.c (pixel_to_char_size): Cast args to int.
1949 1996-03-05 Karl Heuer <kwzh@gnu.ai.mit.edu>
1951 * alloc.c (struct string_block_head): Change to match string_block.
1953 1996-03-05 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1955 * process.c (wait_reading_process_input):
1956 Redisplay after timer_check if timers were actually run.
1958 * keyboard.c (timers_run): New variable, incremented when a timer is
1960 (timer_check, swallow_events): Increment timers_run.
1961 (swallow_events): Redisplay if get_input_pending has run timers.
1962 (detect_input_pending_run_timers): New arg DO_DISPLAY.
1964 * dispnew.c (sit_for): Pass DISPLAY to detect_input_pending_run_timers.
1966 * process.c (wait_reading_process_input):
1967 Pass DO_DISPLAY to detect_input_pending_run_timers.
1969 1996-03-04 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1971 * process.c (Fopen_network_stream):
1972 Set immediate_quit around gethostbyname.
1974 * dispnew.c (sit_for): Use detect_input_pending_run_timers.
1976 * xfns.c [AIX] [HAVE_X11R5] (XIMStatusNothing): Definition deleted.
1978 * config.in (HAVE_NCURSES): Add #undef.
1979 * s/linux.h (TERMINFO): Define, if HAVE_NCURSES.
1981 1996-03-03 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1983 * data.c (Fkill_local_variable): Call find_symbol_value directly,
1984 not via Fsymbol_value, to avoid getting void-variable error.
1986 1996-03-03 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1988 * xterm.c (x_connection_closed): Don't unblock input until the end.
1990 * s/linux.h (LINUX_SIGIO_DOES_WORK): Maybe define, based on Linux vers.
1991 [LINUX_SIGIO_DOES_WORK]: Don't undef SIGIO, SIGPOLL, SIGPOLL.
1992 Do define INTERRUPT_INPUT.
1994 * keyboard.c (init_keyboard): Initialize timer_idleness_start_time.
1996 * Makefile.in (obj): Add xmenu.o.
1997 (XOBJ): Delete xmenu.o.
1998 * emacs.c (main): Always call syms_of_xmenu.
1999 * xmenu.c: Put most of file into HAVE_MENUS conditional.
2000 (Fx_popup_menu): Put parts into HAVE_MENUS conditionals.
2002 * process.c (wait_reading_process_input):
2003 Use getpid when generating SIGIO.
2005 * keyboard.c (reinvoke_input_signal): Use getpid.
2007 1996-03-02 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2009 * keyboard.c (input_poll_signal): Use start_polling
2010 after first incrementing poll_suppress_count.
2012 1996-03-01 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2014 * xterm.c [X_CONNECTION_LOCK_FLAG] (abort, exit): New definitions.
2016 * keymap.c (Fuse_global_map, Fuse_local_map):
2017 Don't call record_asynch_buffer_change.
2019 1996-02-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2021 * s/aix3-2.h: Avoid the #pragma alloca on AIX 4.
2023 * s/aix4-1.h (REL_ALLOC): #undef deleted.
2025 1996-02-27 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2027 * xfns.c [AIX] [HAVE_X11R5] (XIMStatusNothing): Defined.
2029 * keyboard.c (timer_check): Walk down both timer lists in parallel.
2031 1996-02-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2033 * keyboard.c (Fcommand_execute): New arg SPECIAL.
2034 All callers changed.
2036 * xterm.c (X_CONNECTION_LOCK_FLAG): New macro.
2037 (x_connection_close_if_hung): New subroutine, at the end of the file.
2038 Include X11/Xlibint.h only for this function.
2039 #undef bcopy, bzero, bcmp, min, max first.
2040 Define malloc and free to avoid type conflicts.
2041 (x_connection_signal): Use x_connection_close_if_hung.
2043 * doprnt.c (doprnt1): Move cast to unsigned inside a shift.
2045 1996-02-26 enami tsugutomo <enami@ba2.so-net.or.jp>
2047 * xdisp.c (redisplay_window): Pass preserve_echo_area as a missing
2048 second argument of redisplay_windows.
2050 1996-02-25 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2052 * minibuf.c (read_minibuf):
2053 Bind inhibit-read-only to t around clearing the minibuffer.
2054 (read_minibuf_unwind): Likewise. Also, clearing the buffer
2055 is now the last thing we do.
2057 * keyboard.c (command_loop_1): Explicitly clear the echo area
2058 with message2; don't just clear echo_area_glyphs.
2059 Don't set no_direct in that case.
2061 * lisp.h (Qinhibit_read_only): Declared.
2063 * xterm.c (x_set_window_size): Clear out the mouse-highlighting data
2064 if it applies to this frame.
2065 Clear out the frame cursor position in Xt version as in Xlib version.
2067 1996-02-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2069 * fileio.c (Fexpand_file_name): Fix confusion in detecting
2070 that default_directory is already absolute so need not be expanded.
2072 * syntax.c (Fcopy_syntax_table): Set default to nil.
2073 Set the parent only if it was nil.
2075 * xterm.c (x_update_cursor): If no previous cursor position is known,
2076 leave the cursor off.
2078 1996-02-23 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2080 * xdisp.c (redisplay_internal): Renamed from redisplay.
2081 New arg PRESERVE_ECHO_AREA.
2082 (redisplay): New wrapper function calls redisplay_internal.
2083 (redisplay_window, redisplay_windows): New arg PRESERVE_ECHO_AREA.
2085 1996-02-22 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2087 * process.c (Fopen_network_stream): Set immediate_quit for the connect.
2089 1996-02-22 Erik Naggum <erik@naggum.no>
2091 * dispnew.c (Fsleep_for): Accept sub-second intervals.
2093 1996-02-21 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
2095 * xdisp.c (redisplay_window): If window-scroll-functions change
2096 the start position, redisplay from the new one.
2098 * xfns.c (defined_color): When we find a "near" color in the map,
2099 make sure it is really available as a read-only color.
2101 * process.c (wait_reading_process_input):
2102 Pass new arg to swallow_events.
2104 * process.c (wait_reading_process_input): If read_kbd is 1,
2105 use detect_input_pending_run_timers instead of detect_input_pending.
2107 * keyboard.c (swallow_events): New arg DO_DISPLAY.
2109 * keyboard.c (swallow_events): Process timer_event events here.
2110 (detect_input_pending_run_timers): New function.
2112 * keyboard.c (Vtimer_idle_list): New variable.
2113 (syms_of_keyboard): Set up Lisp var.
2114 (timer_check): Check for idle-time timers too.
2115 Expect timers to have 8 slots. Initialize triggertime.
2116 (timer_start_idle, timer_stop_idle): New functions.
2118 * keyboard.c (get_input_pending): New arg do_timers_now.
2119 (readable_events): Likewise.
2120 (Finput_pending_p): Use get_input_pending, so we can specify
2121 1 for do_timers_now.
2123 * fns.c (map_char_table): Fix args in recursive call.
2125 * s/netbsd.h (vfork): Delete definition (kernel bug fixed).
2127 * fileio.c (Fdo_auto_save): Pause before restoring old message.
2129 * s/aix4-1.h (C_DEBUG_SWITCH) [not __GNUC__]: New definition.
2130 (C_OPTIMIZE_SWITCH) [not __GNUC__]: Add #undef.
2131 (X11R5_INHIBIT_I18N): #undef deleted.
2133 * s/aix4-1.h (REL_ALLOC): Add #undef.
2135 1996-02-21 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2137 * keyboard.c (timer_check): Check for difference being zero.
2139 1996-02-21 Erik Naggum <erik@naggum.no>
2141 * process.c (Faccept_process_output): Accept sub-second timeouts.
2143 1996-02-20 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2145 * eval.c (init_eval_once): Initialize specpdl_ptr.
2147 1996-02-19 Karl Heuer <kwzh@gnu.ai.mit.edu>
2149 * xfns.c (Fx_create_frame): Title is a string, not a symbol.
2151 1996-02-18 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2153 * unexelf.c: Use <config.h>, not "config.h".
2155 1996-02-17 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2157 * doc.c (get_doc_string): Move static vars outside the function,
2158 and rename to get_doc_string_buffer and get_doc_string_buffer_size.
2160 1996-02-16 Karl Heuer <kwzh@gnu.ai.mit.edu>
2162 * keyboard.c (syms_of_keyboard): Doc fix.
2163 (Fopen_dribble_file): Check for failure.
2165 1996-02-16 enami tsugutomo <enami@ba2.so-net.or.jp>
2167 * keyboard.c (Fopen_dribble_file): Close dribble file before
2170 1996-02-15 Eli Zaretskii <eliz@is.elta.co.il>
2172 * fileio.c (Fmake_temp_name) [MSDOS]: Make sure there is at least
2173 one character before the dot, in case `prefix' is only a directory
2176 1996-02-13 Karl Heuer <kwzh@gnu.ai.mit.edu>
2178 * xfns.c (x_real_positions): Cast arg of XFree.
2180 1996-02-12 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2182 * xterm.c (x_error_quitter): Add newline to error message.
2184 * xmenu.c (xmalloc_widget_value): Define only if USE_X_TOOLKIT.
2186 1996-02-12 Erik Naggum <erik@naggum.no>
2188 * doc.c (get_doc_string): Always read entire disk blocks.
2190 1996-02-11 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2192 * keyboard.c [HAVE_NTGUI] (lispy_function_keys): Add mappings
2193 for keypad function keys and new PC optional keys.
2195 * xmenu.c (xmalloc_widget_value): Fix previous change.
2197 * xdisp.c (redisplay) [USE_X_TOOLKIT]: Do nothing if popup_activated.
2199 * xmenu.c (xmalloc_widget_value): New function.
2200 Use it instead of malloc_widget_value.
2202 1996-02-10 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2204 * textprop.c (Fadd_text_properties): Don't return without ungcpro.
2206 1996-02-10 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
2208 * window.c (display_buffer_1): Fix typo in last change.
2210 1996-02-10 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2212 * window.c (display_buffer_1): Raise the frame if already visible.
2214 1996-02-09 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2216 * keyboard.c (read_char, timer_check): Call any_kboard_state
2217 after calling Fcommand_execute, if was previously in that state.
2219 1996-02-08 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2221 * dired.c (Fdirectory_files): Doc fix.
2223 * process.c (Fopen_network_stream): Use sizeof, not strlen,
2226 1996-02-08 Eli Zaretskii <eliz@is.elta.co.il>
2228 * fileio.c (Fmake_temp_name) [MS-DOS]: Allow upto 8 characters in
2229 the prefix of the temporary file name.
2231 1996-02-07 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2233 * process.c (remove_process): Don't unlink the process marker.
2235 * m/paragon.h (LIB_STANDARD): Add -lmach.
2236 (LD_DATA_START): Definition deleted.
2237 (LD_SWITCH_SYSTEM): Definition and #undef deleted.
2239 1996-02-06 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2241 * buffer.c (Fbuffer_live_p): New function.
2242 (syms_of_buffer): defsubr it.
2244 * xterm.c (min, max): Don't define if already defined.
2246 * xfns.c (x_real_positions): Use XFree.
2248 * Makefile.in (emacs.o): Depend on blockinput.h.
2249 * emacs.c: Include blockinput.h.
2251 1996-02-06 Kevin Gallo <kgallo@microsoft.com>
2253 * w32term.h (FONT_WIDTH): Use average character width, not maximum.
2255 1996-02-05 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2257 * emacs.c (fatal_error_signal): Do TOTALLY_UNBLOCK_INPUT.
2259 1996-02-05 Karl Heuer <kwzh@gnu.ai.mit.edu>
2261 * process.c (sigchld_handler): Use cleaner end-of-list test.
2263 1996-02-04 Paul Eggert <eggert@twinsun.com>
2265 * s/sol2-4.h (LIB_X11_LIB): Remove; this undoes the Jan 31 change,
2266 which didn't fix the Solaris linking problem. The problem was
2267 fixed instead by the Feb 1 change to ../configure.in.
2269 1996-02-04 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2271 * fns.c (syms_of_fns): Set yes-or-no-p-history to nil.
2273 * s/netbsd.h, s/freebsd.h (vfork): Define as fork.
2275 * lread.c (Fread_char_exclusive): Doc fix.
2277 1996-02-03 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2279 * xfns.c (x_frame_parms): Add "title" element.
2280 (x_set_title): New function.
2281 (x_set_name): Let title parm override name parm for title use.
2282 (x_set_icon_name): Use title parm before name parm, if no icon_name.
2284 Properly undo the way deletion affects markers.
2285 * undo.c (record_marker_adjustment): New function.
2286 (Fprimitive_undo): Handle marker-adjustment elements.
2287 * insdel.c (adjust_markers): When a marker is inside text
2288 being deleted, call record_marker_adjustment for it.
2289 (del_range_1): Call adjust_markers before record_delete.
2290 * buffer.c (syms_of_buffer): Doc fix.
2292 1996-02-02 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2294 * xterm.c (x_connection_signal): Call x_connection_closed properly.
2295 (x_connection_closed): Set FRAME_X_DISPLAY to 0.
2296 (x_destroy_window): Don't do any X operations if FRAME_X_DISPLAY is 0.
2298 1996-02-02 Darrin B. Jewell <jewell@mit.edu>
2300 * lisp.h (VECSIZE): Round up when dividing.
2302 1996-02-01 Geoff Voelker <voelker@cs.washington.edu>
2304 * w32xfns.c (prepend_msg): New function.
2306 * w32fns.c (modifiers, modifier_key_support_tested,
2307 modifiers_recorded): New variables.
2308 (EMACS_LCONTROL, EMACS_RCONTROL, EMACS_LMENU,
2309 EMACS_RMENU): New macros.
2310 (test_modifier_support, record_keydown, record_keyup,
2311 modifier_set, construct_modifiers): New functions.
2312 (win32_wnd_proc): Monitor modifier keyup and keydown messages.
2313 Map window modifiers into console modifiers to unify input.
2315 (x_create_frame): Use the FixedSys font as the default font.
2316 (x_to_win32_font): For now, always use ANSI_CHARSET.
2318 * w32term.c (convert_to_key_event, is_dead_key): New functions.
2319 (w32_read-socket): Convert console modifiers to Emacs modifiers.
2320 Use console input routines to unify keyboard support.
2321 (x_make_frame_visible): Make frame foreground window.
2323 * ntinevt.c (win32_kbd_mods_to_emacs, win32_kbd_patch_key,
2324 key_event): Convert from static to global functions.
2325 (win32_kbd_patch_key): Set modifiers when AltGr is pressed.
2326 (key_event): Don't modify key code on window input.
2328 1996-02-01 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2330 * keyboard.c (read_char_minibuf_menu_prompt): Use malloc to allocate
2331 the echo-area prompt buffer.
2332 (read_char_minibuf_menu_text, read_char_minibuf_menu_width):
2335 1996-02-01 enami tsugutomo <enami@ba2.so-net.or.jp>
2337 * dispnew.c (update_frame): Compare FRAME_MINIBUF_WINDOW(f)
2338 against with not minibuf_window but echo_area_window.
2340 1996-02-01 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2342 * xterm.c (x_term_init): Use "" as 2nd arg to setlocale.
2344 * process.c (wait_reading_process_input): If select times out,
2345 return only if we had no timers to shorten the wait.
2346 Don't shorten the wait for timers if time_limit is -1.
2348 * syssignal.h [POSIX_SIGNALS] (sigsetmask):
2349 Don't define if already defined.
2351 * keyboard.c (echo_now): Renamed from `echo'. All callers changed.
2353 1996-01-31 Karl Heuer <kwzh@gnu.ai.mit.edu>
2355 * process.h (synch_process_death, synch_process_retcode): Delete
2358 1996-01-31 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2360 * s/sol2-4.h (LIB_X11_LIB): New definition.
2362 1996-01-30 Karl Heuer <kwzh@gnu.ai.mit.edu>
2364 * s/isc2-2.h (HAVE_SOCKETS): Moved here from s/isc4-1.h.
2365 (NO_SOCKETS_IN_FILE_SYSTEM, NEED_NET_ERRNO_H): Likewise.
2366 (LIBS_SYSTEM): Use -linet unconditionally.
2367 * s/isc4-1.h (HAVE_SOCKETS): Moved to s/isc2-2.h.
2368 (NO_SOCKETS_IN_FILE_SYSTEM, NEED_NET_ERRNO_H): Likewise.
2369 * s/isc4-0.h (LIBS_SYSTEM): Use -linet unconditionally.
2371 1996-01-30 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2373 * window.c (Fset_window_buffer): Set buffer temporarily around running
2374 the window-scroll-functions.
2375 (Fset_window_buffer_unwind): New function.
2376 (window_initialized): New variable.
2377 (init_window_once): Set it.
2379 * callproc.c (child_setup): Fix size in write call.
2381 1996-01-29 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2383 * fns.c (Qcursor_in_echo_area): New variable.
2384 (syms_of_fns): Set up Lisp var.
2385 (Fy_or_n_p): Bind Qcursor_in_echo_area in case of nonlocal exit.
2387 * keyboard.c (make_lispy_event): Timer event is a list, not just cons.
2388 (timer_check): When DO_IT_NOW is true, handle events by running
2389 the definition of timer-event. Don't get the current time if there
2390 are no pending timers. If an event was generated, return 0,
2391 If all timers were handled, return -1. Add gcpros.
2393 * xterm.c (x_connection_signal): Don't stop polling.
2394 Don't mess with SIGALRM.
2395 Those were relics of the superseded Dec 19 change.
2397 * process.c (wait_reading_process_input): Don't exit immediately
2398 if select returns due to timeout--loop around to check time left.
2400 * keyboard.c (readable_events): Tell timer_check to execute events.
2402 1996-01-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2404 * keyboard.c (timer_check): Return an EMACS_TIME.
2405 (read_char, kbd_buffer_get_event): Calls changed accordingly.
2407 * process.c (wait_reading_process_input): Call timer_check
2408 and shorten the inner delay if appropriate.
2410 1996-01-28 Morten Welinder <terra@diku.dk>
2412 * termhooks.h (event_kind): New event type: timer_event.
2414 * keyboard.c (Qtimer_event): New symbol.
2415 (read_char, kbd_buffer_get_event): Don't sleep past the next timer.
2416 (readable_events, kbd_buffer_get_event): Check for timer events.
2417 (make_lispy_event): Handle timer events.
2418 (timer_check): New function.
2419 (Vtimer_list): New variable.
2420 (syms_of_keyboard): Set up Qtimer_event and Vtimer_list.
2422 1996-01-28 enami tsugutomo <enami@ba2.so-net.or.jp>
2424 * process.c (create_process): Set outchannel to be non-blocking.
2426 1996-01-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2428 * xfns.c (x_frame_parms): Alphabetize.
2429 (enum x_frame_parm): Data type deleted.
2431 * xterm.c (XTframe_raise_lower): Rename arg `raise' to `raise_flag'.
2433 1996-01-27 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2435 * emacs.c (sort_args): Error if option is missing an arg.
2437 * editfns.c (syms_of_editfns): Make buffer-access-fontify-functions
2438 locally nil in the prin1 buffer.
2440 * fns.c (Fy_or_n_p): Call choose_minibuf_frame.
2442 * editfns.c (Fcompare_buffer_substrings): Access case_canon_table
2445 1996-01-27 enami tsugutomo <enami@ba2.so-net.or.jp>
2447 * sysdep.c (child_setup_tty): Turn off ISTRIP to pass 8bit. Turn
2448 off TAB3 do don't expand tabs.
2450 1996-01-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2452 * minibuf.c (Fset_minibuffer_window): New function.
2453 (keys_of_minibuf): defsubr it.
2455 * cmds.c (Fdelete_backward_char): In overwrite mode,
2456 insert spaces, unless we deleted a tab.
2458 1996-01-26 Eli Zaretskii <eliz@is.elta.co.il>
2460 * msdos.c (dos_rawgetc): Allow simulation of `Mouse-3' by
2461 simultaneous click/drag of `Mouse-1' and `Mouse-2'.
2463 1996-01-25 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2465 * xselect.c (xfree): Macro deleted.
2466 Callers changed to use `free' directly.
2468 * xselect.c (x_get_window_property_as_lisp_data): Use xfree, not XFree.
2469 (x_get_window_property): Use XFree for tmp_data.
2471 1996-01-25 Eli Zaretskii <eliz@is.elta.co.il>
2473 * dosfns.c (mode25, mode4350): Moved to `lisp/dos-fns.el'.
2475 * msdos.c (dos_set_window_size): Make the window size change
2476 faster for standard sizes. Fix a bug in v2-specific code to
2479 1996-01-24 Geoff Voelker <voelker@cs.washington.edu>
2481 * w32fns.c, w32reg.c, w32term.c, w32term.h, w32xfns.c:
2482 Latest patches backed out.
2484 1996-01-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2486 * termhooks.h (struct input_event): New field `padding'.
2487 Change `kind' field to an int.
2489 1996-01-24 Eli Zaretskii <eliz@is.elta.co.il>
2491 * msdos.c (dos_set_window_size): New function; switches the screen
2492 to the size as close as possible to requested frame dimensions.
2494 * msdos.h: (dos_set_window_size): Prototype for a new function.
2496 * dispnew.c (change_frame_size_1) [MSDOS]: Support frame size
2497 changing as best as possible.
2499 1996-01-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2501 * Makefile.in (xmenu.o): Depend on termhooks.h.
2503 1996-01-24 Eli Zaretskii <eliz@is.elta.co.il>
2505 * process.c (wait_reading_process_input) [not subprocesses]: Do
2506 not assume SELECT_TYPE is an int.
2508 * msdos.c (sys_select): Use time macros to prevent time values
2511 1996-01-23 Geoff Voelker <voelker@cs.washington.edu>
2513 * xdisp.c (update_menu_bar, redisplay_window): Use FRAME_WINDOW_P
2514 instead of only testing for X11.
2516 1996-01-23 Karl Heuer <kwzh@gnu.ai.mit.edu>
2518 * m/mips-siemens.h (UNEXEC): unexsni.o renamed from unexelfsni.o.
2519 * m/iris5d.h (UNEXEC): unexsgi.o renamed from unexelfsgi.o.
2520 * m/iris4d.h [USG5_4] (UNEXEC): Likewise.
2522 * config.in (LOCALTIME_CACHE): Delete extra #undef.
2524 1996-01-23 Felix Lee <flee@teleport.com>
2526 * data.c (kill-local-variable): Didn't update the value of
2529 * xdisp.c (mark_window_display_accurate): buffer->clip_changed was
2530 being inappropriately cleared.
2532 1996-01-23 Eli Zaretskii <eliz@is.elta.co.il>
2534 * syssignal.h (sigblock): Delete this, undoing previous change.
2535 * msdos.c (sigblock): New (dummy) function.
2537 1996-01-22 Simon Marshall <simon@duality.gnu.ai.mit.edu>
2539 * editfns.c (syms_of_editfns): Correct spelling of Lisp variable
2540 buffer-access-fontified-property.
2542 1996-01-20 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
2544 * unexelf.c (unexec): Undo data relocations unconditionally, not
2547 1996-01-20 Karl Heuer <kwzh@gnu.ai.mit.edu>
2549 * syssignal.h [__DJGPP__] (sigblock): Define trivially.
2551 1996-01-20 Andrew Innes <andrewi@harlequin.co.uk>
2553 * w32term.c (x_make_frame_visible): Explicitly make the frame
2556 1996-01-20 Andrew Innes <andrewi@harlequin.co.uk>
2558 * w32xfns.c: Include frame.h.
2559 (critsect, h_input_available): New variables.
2560 (init_crit, delete_crit): Handle all three critical sections.
2561 (GetFrameDC, ReleaseFrameDC): New functions.
2562 (get_next_msg, post_msg): Use h_input_available.
2563 Use CRIT_MSG critical section.
2565 * w32term.h (win32_palette_entry): New structure.
2566 (has_palette, p_colors_in_use, n_colors_in_use, h_palette,
2567 regen_palette): Declare variables.
2568 (struct win32_output): New field.
2569 (my_get_dc): Macro removed.
2570 (GetFrameDC, ReleaseFrameDC): Declare functions.
2572 (critsect): Declare variable.
2573 (enum win32_critical_section): New enumeration.
2574 (enter_crit, leave_crit): Functions converted to macros.
2576 * w32term.c (win32_fill_rect): Remove unused variable.
2577 (x_iconify_frame): Conform to coding style.
2578 (x_draw_box): Don't trim right and bottom.
2579 (x_wm_set_size_hint): Use specific CRIT_MSG critical section.
2581 (win32_fill_rect, dumpglyphs, do_line_dance, x_draw_box):
2582 Use Get/ReleaseFrameDC.
2583 (win32_update_begin): Regenerate palette if required.
2584 (w32_read_socket): Use FALSE. Handle WM_PALETTECHANGED.
2585 (win32_term_init): Use GetDC directly.
2586 Enable palette in display structure.
2587 Predefine white and black.
2588 (x_delete_display): Free palette table.
2590 * w32reg.c (REG_ROOT): Don't use trailing backslash.
2592 * w32fns.c (Vwin32_enable_italics, Vwin32_enable_palette):
2594 (syms_of_win32fns): Set up new lisp variables.
2596 (x_set_frame_parameters, x_real_positions, win32_load_font,
2597 win32_abort): Conform to coding style.
2599 (Fwin32_define_rgb_color, Fwin32_load_color_file, Fwin32_map_color,
2600 Fwin32_unmap_color, Fwin32_regenerate_palette): New functions.
2601 (syms_of_win32fns): Set up new lisp subroutines.
2602 (defined_color): Use palettes.
2603 (map_mode): Function removed.
2605 (win32_init_class): Don't CS_OWNDC.
2606 (win32_wnd_proc): Use segregated critical sections appropriately.
2607 Handle WM_PALETTECHANGED.
2608 Record WINDOWPLACEMENT structure length.
2610 (x_to_win32_weight, win32_to_x_weight): Handle "heavy", "extrabold",
2611 "light", "extralight", and "thin" fonts.
2612 (x_to_win32_charset, win32_to_x_charset): New functions.
2613 (win32_to_x_font): Use win32_to_x_charset.
2614 (x_to_win32_font): Use x_to_win32_charset.
2615 Support Windows font names.
2617 (Fx_list_fonts, Fx_display_color_cells, Fx_display_mm_height.
2618 Fx_display_mm_width): Use GetDC directly.
2620 (Fx_open_connection): Support external color mapping files.
2622 1996-01-20 Geoff Voelker <voelker@cs.washington.edu>
2624 * ntterm.c (clear_frame): Use FillConsoleOutput* calls instead of
2625 ScrollConsoleScreenBuffer (which has a bug on Windows 95).
2627 * ntinevt.c (WIN32_KEY_SHIFTED): Macro undefined.
2628 (win32_number_shift_map): Array undefined.
2629 (win32_kbd_patch_key): Properly handle virtual keys for
2630 arbitrary keyboards.
2631 (map_virt_key, key_event, win32_mouse_position, do_mouse_event,
2632 win32_read_socket): Support for MULE.
2634 * nt.c (nt_stat): Use alloca instead of xmalloc.
2635 (get_unassigned_drive_letter, is_toplevel_share_name,
2636 stat_toplevel_share): New functions for stat on remote shares.
2637 (readdir): Use IS_ANY_SEP.
2639 * makefile.nt (keyboard.obj, dispnew.obj): Depend upon w32term.h.
2640 (LIBS): Link with mpr.lib for remote share support.
2642 1996-01-20 Paul Eggert <eggert@twinsun.com>
2644 * editfns.c (Fformat_time_string): Doc fix.
2645 Don't crash if the resulting string is empty.
2647 1996-01-19 Karl Heuer <kwzh@gnu.ai.mit.edu>
2649 * buffer.c (Fother_buffer): If we have to create a new buffer, use
2652 1996-01-19 Erik Naggum <erik@naggum.no>
2654 * frame.c (make_frame): Initialize frame title field to nil.
2656 1996-01-18 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2658 * alloc.c (mark_object): Mark frame title field.
2660 1996-01-22 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
2662 * xterm.c [SOLARIS2]: Include Xlibint.h.
2663 (x_connection_signal): Access XlibDisplayWriting properly.
2664 No need to sleep--if the flag is set, assume connection is dead.
2666 1996-01-21 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
2668 * lisp.h (XCAR, XCDR, CAR, CDR): New macros.
2670 * xmenu.c (set_frame_menubar):
2671 Use safe_run_hooks for Qmenu_bar_update_hook.
2673 * xdisp.c (update_menu_bar):
2674 Use safe_run_hooks for Qmenu_bar_update_hook.
2676 * lread.c (syms_of_lread): Set Vsource_directory here.
2677 (init_lread): Not here.
2679 * macros.c (Fstart_kbd_macro): Use xmalloc.
2680 Shrink the kbd macro buffer if it is very big.
2682 * lisp.h (make_number): New macro definition.
2683 * data.c (make_number): Function deleted.
2685 1996-01-20 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
2687 * keymap.c (Faccessible_keymaps): Doc fix.
2689 1996-01-19 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
2691 * keymap.c (describe_command): Sometimes use col 32 for desc.
2692 Record that col in previous_description_column for hysteresis.
2693 (describe_map): Clear out previous_description_column.
2695 1996-01-19 enami tsugutomo <enami@sys.ptg.sony.co.jp>
2697 * frame.c (make_frame): Initialize title parameter to Qnil.
2699 1996-01-18 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
2701 * xterm.c (x_connection_signal): Explicitly check the thread interlock
2704 1996-01-17 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2706 * keyboard.c (safe_run_hooks): Use Qt, not Qerror, to avoid
2707 running the debugger.
2709 * eval.c (run_hook_with_args): Do nothing if Vrun_hooks is nil.
2711 * xfns.c (Qtitle): Declared.
2712 (Fx_create_frame): Initialize title parameter.
2713 Don't use the title resource to initialize the name parameter.
2715 * frame.c (syms_of_frame_1): Initialize Qtitle.
2717 * xdisp.c (decode_mode_spec, case 'F'): Use `title' field.
2719 * frame.h (struct frame): New field `title'.
2721 1996-01-17 Karl Heuer <kwzh@gnu.ai.mit.edu>
2723 * window.c (replace_buffer_in_all_windows): Don't change selected
2724 window, even temporarily; that has undesirable side effects.
2726 1996-01-17 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2728 * emacs.c (dump_environ): Variable deleted.
2729 (main): Don't free dump_environ.
2730 (Fdump_emacs): Don't set dump_environ.
2731 (environ): Declare only on VMS, as before.
2733 1996-01-15 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2735 * s/aix4-1.h (X11R5_INHIBIT_I18N): Add undef.
2736 (LIB_MOTIF): Undef before defining.
2738 1996-01-14 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2740 * window.c (display_buffer_1): Don't deiconify the selected frame.
2742 1996-01-14 Paul Eggert <eggert@twinsun.com>
2744 * emacs.c (Fdump_emacs): If HAVE_TZSET and not
2745 LOCALTIME_CACHE, call tzset to force a tz reload.
2747 1996-01-13 eggert <eggert@twinsun.com>
2749 * emacs.c (set_time_zone_rule): New decl.
2750 (environ): Always declare.
2751 (dump_tz, dump_environ): New vars.
2752 (main): Change TZ twice if the execution TZ happens to be the same as
2753 the dump TZ. Free dump environ.
2754 (Fdump_emacs): Set TZ to unlikely value just before dumping.
2755 * editfns.c (set_time_zone_rule): Now extern, not static.
2756 * config.in (HAVE_TZSET): Add #undef.
2758 1996-01-12 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
2760 * Makefile.in ($(OLDXMENU) rules): Fix conditionals so no rules
2761 are defined when !HAVE_MENUS.
2763 1996-01-12 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2765 * msdos.c (dos_rawgetc): Make buf longer.
2767 1996-01-11 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2769 * xdisp.c (redisplay_window): Fix minor bug in Fset_marker call.
2771 * s/aix3-2-5.h (LIB_MOTIF): New macro definition.
2773 1996-01-10 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
2775 * window.c (Fset_window_buffer): Call the window-scroll-functions.
2777 1996-01-08 Karl Heuer <kwzh@gnu.ai.mit.edu>
2779 * keymap.c (Fapropos_internal): Fix previous change.
2780 * abbrev.c (Fdefine_abbrev_table): Fix previous change.
2781 * fns.c (Fset_char_table_parent): Fix previous change.
2782 * data.c (Flognot): Fix previous change.
2783 * macros.c (Fexecute_kbd_macro): Fix previous change.
2785 1996-01-08 Erik Naggum <erik@naggum.no>
2787 * abbrev.c (Fdefine_global_abbrev, Fdefine_mode_abbrev,
2788 Fabbrev_symbol, Finsert_abbrev_table_description,
2789 Fdefine_abbrev_table): Harmonize arguments with documentation.
2791 * alloc.c (Fmake_symbol): Harmonize arguments with documentation.
2793 * buffer.c (Fmake_indirect_buffer, Fset_buffer_major_mode,
2794 Fpop_to_buffer, Fbury_buffer, Foverlay_get): Harmonize arguments
2797 * bytecode.c (Fbyte_code): Harmonize arguments with documentation.
2799 * callint.c (Fcall_interactively, Fprefix_numeric_value): Harmonize
2800 arguments with documentation.
2802 * casefiddle.c (Fupcase_region, Fdowncase_region,
2803 Fcapitalize_region, Fupcase_initials_region): Harmonize arguments
2806 * casetab.c (Fcase_table_p): Harmonize arguments with
2809 * cmds.c (Fforward_line, Fbeginning_of_line, Fend_of_line,
2810 Fdelete_char, Fdelete_backward_char): Harmonize arguments with
2813 * data.c (Fboundp, Ffboundp, Fmakunbound, Ffmakunbound,
2814 Fsymbol_plist, Fsymbol_name, Ffset, Fdefalias, Fdefine_function,
2815 Fsetplist, store_symval_forwarding, swap_in_symval_forwarding,
2816 find_symbol_value, Fsymbol_value, Fset, default_value,
2817 Fdefault_boundp, Fdefault_value, Fset_default, Fsetq_default,
2818 Fmake_variable_buffer_local, Fmake_local_variable,
2819 Fkill_local_variable, Flocal_variable_p, Flocal_variable_if_set_p,
2820 Faref, Faset, Fzerop, Fnumber_to_string, Fstring_to_number, Frem,
2821 Fmod, Fadd1, Fsub1, Flognot): Harmonize arguments with
2824 * dired.c (Fdirectory_files, Ffile_name_completion,
2825 Ffile_name_all_completions, Ffile_name_all_versions): Harmonize
2826 arguments with documentation.
2828 * dispnew.c (Fsend_string_to_terminal, Fsit_for): Harmonize
2829 arguments with documentation.
2831 * doc.c (Fdocumentation, Fdocumentation_property,
2832 Fsubstitute_command_keys): Harmonize arguments with documentation.
2834 * dosfns.c (Fint86, Fdos_memget, Fdos_memput, Fmsdos_set_keyboard):
2835 Harmonize arguments with documentation.
2837 * editfns.c (Fchar_to_string, Fstring_to_char, Fgoto_char,
2838 Fencode_time, Finsert_char, Fbuffer_substring,
2839 Fbuffer_substring_no_properties, Finsert_buffer_substring,
2840 Fdelete_region, Fnarrow_to_region): Harmonize arguments with
2842 (Fformat_time_string): Allow TIME to default to current time.
2844 * emacs.c (Fdump_emacs_data, Fdump_emacs): Harmonize arguments with
2847 * eval.c (Fmacroexpand, Fthrow, Fbacktrace_frame): Harmonize
2848 arguments with documentation.
2850 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory,
2851 Ffile_name_as_directory, Fdirectory_file_name, Fexpand_file_name,
2852 Fsubstitute_in_file_name, Fcopy_file, Fmake_directory_internal,
2853 Fdelete_directory, Fdelete_file, Frename_file, Fadd_name_to_file,
2854 Fdefine_logical_name, Ffile_modes, Fset_file_modes,
2855 Fset_default_file_modes, Fdo_auto_save, Fread_file_name): Harmonize
2856 arguments with documentation.
2858 * filelock.c (Flock_buffer, Ffile_locked_p): Harmonize arguments
2861 * floatfns.c (Fbessel_jn, Fbessel_yn): Harmonize arguments with
2864 * fns.c (Frandom, Flength, Felt, Fsort, Fchar_table_subtype,
2865 Fchar_table_parent, Fset_char_table_parent, Fchar_table_extra_slot,
2866 Fset_char_table_extra_slot, Fchar_table_range,
2867 Fset_char_table_range, Fmap_char_table, Fmapconcat, Fmapcar):
2868 Harmonize arguments with documentation.
2870 * frame.c (Fhandle_switch_frame, Fset_frame_height): Harmonize
2871 arguments with documentation.
2873 * indent.c (Findent_to): Harmonize arguments with documentation.
2875 * keyboard.c (Fevent_convert_list, Fcommand_execute): Harmonize
2876 arguments with documentation.
2878 * keymap.c (Fkeymapp, Fdefine_prefix_command, Faccessible_keymaps,
2879 Ftext_char_description, Fapropos_internal): Harmonize arguments
2882 * lread.c (Feval_buffer, Feval_region, Fintern, Fintern_soft):
2883 Harmonize arguments with documentation.
2885 * macros.c (Fend_kbd_macro, Fexecute_kbd_macro): Harmonize
2886 arguments with documentation.
2888 * marker.c (Fset_marker): Harmonize arguments with documentation.
2890 * minibuf.c (Ftry_completion, Fall_completions, Fcompleting_read):
2891 Harmonize arguments with documentation.
2893 * print.c (Fwrite_char, Fprin1, Fprin1_to_string, Fprinc, Fprint):
2894 Harmonize arguments with documentation.
2896 * process.c (Fprocessp, Fget_buffer_process, Fdelete_process,
2897 Fprocess_status, Fprocess_exit_status, Fprocess_id, Fprocess_name,
2898 Fprocess_command, Fprocess_tty_name, Fset_process_buffer,
2899 Fprocess_buffer, Fprocess_mark, Fset_process_filter,
2900 Fprocess_filter, Fset_process_sentinel, Fprocess_sentinel,
2901 Fset_process_window_size, Fprocess_kill_without_query,
2902 Faccept_process_output): Harmonize arguments with documentation.
2904 * search.c (Fmatch_end, Fregexp_quote): Harmonize arguments with
2907 * syntax.c (Fsyntax_table_p, Fchar_syntax, Fmatching_paren,
2908 Fmodify_syntax_entry): Harmonize arguments with documentation.
2910 * textprop.c (Ftext_properties_at, Fget_text_property,
2911 Fget_char_property, Fnext_property_change,
2912 Fnext_single_property_change, Fprevious_property_change,
2913 Fprevious_single_property_change, Fadd_text_properties,
2914 Fput_text_property, Fset_text_properties, Fremove_text_properties,
2915 Ftext_property_any, Ftext_property_not_all): Harmonize arguments
2918 * window.c (Fwindowp, Fwindow_live_p, Fother_window,
2919 Fenlarge_window, Fshrink_window, Fscroll_up, Fscroll_down,
2920 Fscroll_other_window, Fscroll_left, Fscroll_right, Frecenter,
2921 Fwindow_configuration_p): Harmonize arguments with documentation.
2923 * xfaces.c (Fpixmap_spec_p): Harmonize arguments with
2926 1996-01-08 Erik Naggum <erik@naggum.no>
2928 * buffer.c (Fkill_buffer): Delete buffer from Vbuffer_alist after
2931 1996-01-08 Karl Heuer <kwzh@gnu.ai.mit.edu>
2933 * s/sol2-3.h (PTY_TTY_NAME_SPRINTF): Make failure non-fatal.
2935 * unexelf.c (unexec) [SOLARIS2]: Undo relocations performed by the
2938 * config.in: (LOCALTIME_CACHE): Add #undef.
2940 1996-01-08 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
2942 * xdisp.c (display_text_line): Clear out redisplay_end_trigger
2943 before calling the functions.
2945 * xselect.c (x_handle_selection_notify): Give an indication
2946 in reading_selection_reply of whether the request succeeded.
2947 (x_get_foreign_selection): Do error if foreign selection was cleared.
2949 * dispnew.c (init_display): Treat null string DISPLAY var like not set.
2951 1996-01-07 Erik Naggum <erik@naggum.no>
2953 * fns.c (Fplist_get): Rename arg `val' to `plist' as in doc.
2955 1996-01-07 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
2957 * lread.c (read1): Use xmalloc and xrealloc, not malloc and realloc.
2959 * s/sol2-5.h: Add #if 0 around everything but the include of sol2-4.h.
2961 * process.c (create_process): Restore the signal state
2962 after vfork whether it succeeds or not.
2964 * m/hp800.h: Conditionalize many macro definitions on __hpux.
2965 (NEED_BSDTTY): Delete duplicate definition.
2967 * lread.c (dump_path): New static var.
2968 (init_lread): Use that to record dump-time initial path.
2969 Delete the local var dump_path; find Vsource_directory differently.
2970 (syms_of_lread): staticpro it.
2972 * config.in (LOCALTIME_CACHE): Add #undef.
2974 * editfns.c (update_buffer_properties): Delete superfluous &'s.
2976 * emacs.c (main): In batch mode, don't handle SIGHUP if was ignored.
2977 Block it while we decide what to do.
2979 1996-01-06 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
2981 * keymap.c (describe_map): New arg nomenu.
2982 (describe_map_tree): Pass that arg.
2984 1996-01-05 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
2986 * fileio.c (do_auto_save_unwind): Don't close DESC if DESC < 0.
2987 (Fdo_auto_save): Unconditionally set up unwind-protect.
2989 * s/linux.h (LIBS_TERMCAP): Definition deleted.
2991 1996-01-05 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2993 * termhooks.h (struct input_event): Put frame_or_window last.
2995 1996-01-04 Erik Naggum <erik@naggum.no>
2997 * window.c (replace_buffer_in_all_windows): Only re-select old
2998 window if it is still live.
3000 1996-01-04 Paul Eggert <eggert@twinsun.com>
3002 Spelling corrections.
3003 * s/vms.h, s/vms5-5.h (SHARABLE_LIB_BUG): Renamed from
3005 * xselect.c (syms_of_xselect): Doc fix for x-selection-timeout.
3006 * sysdep.c (WRITABLE): Renamed from WRITEABLE.
3007 * unexelfsni.c (unexec): Message fix.
3008 * sysdep.c (sys_siglist): Message fix.
3009 * eval.c (syms_of_eval): Doc fix for inhibit-quit.
3010 * window.c (Fprevious_window, Fwindow_configuration_p): Doc fix.
3011 * keymap.c (Flookup_key): Doc fix.
3013 1996-01-04 Geoff Voelker <voelker@cs.washington.edu>
3015 * nt.c (getuid): Only return root uid if Administrator.
3016 (geteuid): Return getuid.
3018 1996-01-03 Ulrich Leodolter <ulrich@lab1.psy.univie.ac.at>
3020 * ntproc.c (win32_wait): fixed bad synch_process_retcode
3021 and initialized synch_process_death if signaled.
3023 1996-01-02 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3025 * xterm.c (XTread_socket): For selection_clear_event and
3026 selection_request_event, initialize the frame_or_window field.
3028 * window.c (replace_buffer_in_all_windows): New function.
3029 Like Freplace_buffer_in_windows but really does all frames.
3030 * buffer.c (Fkill_buffer): Use replace_buffer_in_all_windows.
3032 1995-12-31 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3034 * xterm.c (XTread_socket): Pass KeyPress events to the toolkit.
3035 Make the OTHER label exist unconditionally, and make the gotos
3036 unconditional when that is convenient.
3038 1995-12-31 Eli Zaretskii <eliz@is.elta.co.il>
3040 * fileio.c (Ffile_readable_p) [MSDOS]: Use access rather than open.
3042 1995-12-30 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
3044 * Makefile.in (${etc}DOC): Remove spurious `cd' command line.
3046 1995-12-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3048 * xterm.c (x_find_modifier_meanings): Fix !X11R4 code to use dpyinfo.
3050 * s/hpux9.h (C_SWITCH_X_SYSTEM, LD_SWITCH_X_DEFAULT):
3051 Add options to specify /usr/lib/X11R5 and /usr/include/X11R5.
3053 1995-12-25 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3055 * xfns.c (check_x_display_info, check_x_frame, x_set_font)
3056 (Fx_list_fonts): Fix error messages.
3058 1995-12-24 Eli Zaretskii <eliz@is.elta.co.il>
3060 * dired.c (Ffile_attributes) [MSDOS]: Remove special detection of
3061 MS-DOS executable files by filename extension (library `stat' does
3064 * msdos.c (XMenuActivate): Make sure the menu title is always
3065 displayed with `msdos-menu-active-face', no matter where the mouse
3068 1995-12-23 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3070 * msdos.c (have_menus_p): Defined.
3072 * s/msdos.h (HAVE_MENUS): Defined.
3074 * config.in (HAVE_MENUS): Renamed from HAVE_X_MENU.
3076 * Makefile.in (XOBJ, LIBXMENU, $(OLDXMENU), really-oldXMenu):
3077 HAVE_X_MENU renamed to HAVE_MENUS.
3079 * keyboard.c (read_char_x_menu_prompt):
3080 HAVE_X_MENU renamed to HAVE_MENUS.
3082 * emacs.c (main): Call syms_of_xmenu if and only if HAVE_MENUS.
3084 * editfns.c (Fmessage_box, Fmessage_or_box):
3085 HAVE_X_MENU renamed to HAVE_MENUS. Doc fixes.
3087 * xfns.c (have_menus_p): Renamed from using_x_p.
3088 * w32xfns.c (have_menus_p): Renamed from using_x_p.
3089 * fns.c (Fy_or_n_p, Fyes_or_no_p): using_x_p renamed to have_menus_p.
3090 HAVE_X_MENU renamed to HAVE_MENUS.
3092 * keyboard.c (Fexecute_extended_command): Nice error if empty cmd name.
3094 * callint.c (Fcall_interactively): Undo previous change.
3095 * keyboard.c (Fcommand_execute): Undo previous change.
3097 * s/aix3-2.h: Add #pragma alloca.
3099 * Makefile.in (LIBXT): Use DYNAMIC_OPTION too.
3100 * s/sol2-5.h (STATIC_OPTION): For GCC, use -Xlinker.
3101 (DYNAMIC_OPTION): Define like STATIC_OPTION.
3103 * s/sunos4shr.h (LIBXMU): Replace previous change.
3104 Bring back the old definition, but conditionalize on ! HAVE_X11R6.
3106 * config.in (HAVE_X11R6): Add #undef.
3107 * xterm.h (HAVE_X11R6): Definition deleted (previous change undone).
3109 * xdisp.c (redisplay_window): Clear force_start field
3110 before running the Qwindow_scroll_functions.
3111 In the recenter case, set w->start before running them.
3113 1995-12-24 Adrian Colley <Adrian.Colley@three.serpentine.com>
3115 * s/aix3-2.h: Add #pragma alloca.
3117 1995-12-23 Geoff Voelker <voelker@cs.washington.edu>
3119 * makefile.nt (LINK_FLAGS): Dump symbol map when linking.
3120 * unexnt.c (get_bss_info_from_map_file): New function.
3121 (get_section_info): When .bss section parameters are not in the
3122 executable, search the symbol map file for them.
3124 1995-12-23 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3126 * syntax.h (SYNTAX_ENTRY): Add cast in call to syntax_parent_lookup.
3128 * print.c (NULL): #undef deleted.
3130 * cmds.c (internal_self_insert): Declare arg c1 as unsigned char.
3132 1995-12-21 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3134 * xdisp.c (prepare_menu_bars): If update_mode_lines,
3135 update all frame titles too.
3137 1995-12-20 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3139 * eval.c (skip_debugger): New function.
3140 (find_handler_clause): Call skip_debugger.
3141 (Vdebug_ignored_errors): New variable.
3142 (syms_of_eval): Set up Lisp variable.
3144 * print.c (Ferror_message_string): New function.
3145 (syms_of_print): defsubr it. Doc fix.
3146 (print_error_message): New subroutine.
3148 * keyboard.c (cmd_error_internal): Use print_error_message.
3150 1995-12-19 Karl Heuer <kwzh@gnu.ai.mit.edu>
3152 * callint.c (Fcall_interactively): Don't log prompt strings.
3154 * xfns.c: Use <paths.h>, not "paths.h".
3156 * frame.c [!MULTI_FRAME] (syms_of_frame): Make mouse-pixel-position
3157 a synonym for mouse-position, for the benefit of lisp packages
3160 1995-12-19 Eli Zaretskii <eliz@is.elta.co.il>
3162 * msdos.c (check_timer): Get rid of the DOS-specific menubar clock
3163 feature; call `display-time-filter' from time.el to display time
3164 on the modeline instead. This makes `display-time' work under DOS.
3165 (abort): Use our own function instead of the one from the library
3166 which reverts the console device to cooked mode.
3167 (syms_of_msdos): `dos-display-time'--a new variable for
3168 communicating with `display-time'.
3169 * dosfns.c (syms_of_dosfns): Delete the `dos-menubar-clock' and
3170 `dos-timer-hooks' variables.
3171 * dosfns.h (Vdos_menubar_clock, Vdos_timer_hooks):
3172 Declarations deleted.
3174 1995-12-19 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3176 * xterm.c (x_connection_signal): Set an alarm around XNoOp call.
3178 * xfns.c [X11R5_INHIBIT_I18N]: Undef HAVE_X_I18N if X11R5.
3179 * xterm.h (HAVE_X11R6): New macro, defined when appropriate.
3180 * s/aix3-2-5.h (X11R5_INHIBIT_I18N): Defined.
3182 1995-12-17 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3184 * s/sol2-5.h (LIBXT_STATIC, STATIC_OPTION): Defined.
3186 * Makefile.in (LIBXT): Handle LIBXT_STATIC.
3188 * fileio.c (syms_of_fileio): Doc fix.
3190 * callint.c (Fcall_interactively): Handle an arg of form (FCN ARGS...).
3192 * keyboard.c (Fcommand_execute): Allow function + args list as cmd.
3194 1995-12-14 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3196 * m/ibmrs6000.h (LD_SWITCH_MACHINE): Don't define if using GCC.
3198 1995-12-13 Karl Heuer <kwzh@gnu.ai.mit.edu>
3200 * xterm.c (x_connection_closed): Don't delete dpyinfo if it's null.
3202 1995-12-12 Eli Zaretskii <eliz@is.elta.co.il>
3204 * msdos.c (run_msdos_command): Support redirection of stderr.
3205 * callproc.c (Fcall_process) [MSDOS]: Support redirection of
3206 stderr. Assign process exit code to `synch_process_retcode' and
3207 error description to `synch_process_death'. Reset
3208 `synch_process_alive' to zero when the sub-process exits.
3210 * msdos.c (IT_set_terminal_modes): Save screen color attribute
3211 byte at startup, write saved screen dimensions to termscript
3213 (IT_reset_terminal_modes): When restoring startup screen contents,
3214 only restore as much as was saved, and only as much as the screen
3215 dimensions on exit can hold. Blank the rest with the background
3216 color saved at startup. Write restored screen dimensions to
3219 * msdos.c (XMenuActivate): Display the menu pane title.
3220 (XMenuLocate): Do not ignore pane title length when deciding on
3223 1995-12-12 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3225 * emacs.c (main): Fix args to handle `--display DISPLAY'.
3227 * data.c (Ftype_of): Return `char-table' and `bool-vector' for
3228 char tables and bool vectors, resp.
3229 (Qchar_table, Qbool_vector): New variables.
3230 (syms_of_data): Initialize and staticpro them.
3232 1995-12-12 Karl Heuer <kwzh@gnu.ai.mit.edu>
3234 * window.c (Fsplit_window): Account for scroll bar width.
3236 * minibuf.c (choose_minibuf_frame): Test HAVE_X_WINDOWS.
3238 * m/alpha.h (PTY_OPEN): Block SIGCHLD during openpty.
3240 * s/sunos4shr.h (LIBXMU): Use dynamic linking.
3242 1995-12-12 Paul Eggert <eggert@twinsun.com>
3244 * process.c (create_process): Use Posix signal handling to
3245 block signals, if available. If HAVE_VFORK, save and restore
3246 signal handlers that the child might change, since in many
3247 systems (e.g. Solaris 2.4) if the child changes the signal
3248 handlers this munges the parent's handler.
3249 * s/sol2-3.h (HAVE_VFORK): Remove #undef, since we now
3250 know how to use Solaris vfork.
3251 (VFORK_RETURN_TYPE): Remove definition.
3253 1995-12-12 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3255 * callint.c (Fcall_interactively): Move have_prefix_arg label to 'p'.
3257 * process.c (Fopen_network_stream): Call bind_polling_period earlier.
3259 1995-12-10 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3261 * keymap.c (Fkey_binding): Handle text-property keymaps.
3263 * Makefile.in (dotdot): New variable.
3264 (SOME_MACHINE_LISP): Use relative file names.
3265 (shortlisp): New variable.
3266 (${etc}DOC): Use shortlisp instead of lisp.
3268 * xdisp.c (redisplay_window): Don't do the scroll_step thing
3269 if startp is outside the accessible part of the buffer.
3271 * lread.c (init_lread): Add ../lisp (in build dir) to load-path
3274 1995-12-09 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3276 * editfns.c (Fset_time_zone_rule): Move static var environbuf
3278 (syms_of_editfns): Initialize environbuf explicitly.
3280 * window.c (Fsplit_window): Rename size to size_int and chsize to size.
3282 * cmds.c (Fbackward_char, Fforward_char): Rename arg to ARG.
3284 * buffer.h (struct buffer): Delete redisplay_end_trigger field.
3285 * buffer.c (reset_buffer, init_buffer_once): Delete code that touches
3286 redisplay_end_trigger field in buffer.
3288 1995-12-07 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3290 * editfns.c (Vbuffer_access_fontified_property): New variable.
3291 (syms_of_editfns): Set up Lisp var.
3292 (make_buffer_string): Don't call the Vbuffer_access_fontify_functions
3293 if the text is already fontified.
3294 (Fbuffer_string): Pas 1 for PROPS arg.
3295 (update_buffer_properties): New subroutine.
3296 (Finsert_buffer_substring): Use update_buffer_properties.
3298 1995-12-06 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3300 * textprop.c (add_properties, remove_properties, set_properties):
3301 Call signal_after_change.
3303 * s/hpux9.h (LIBXMU, NO_EDITRES): Define only if not HAVE_LIBXMU.
3305 1995-12-05 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3307 * config.in (HAVE_LIBXMU): Add #undef.
3309 * s/hpux9shr.h (C_DEBUG_SWITCH): Definition turned off.
3311 * m/iris4d.h (C_SWITCH_MACHINE): Define only if THIS_IS_MAKEFILE.
3313 1995-12-04 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3315 * editfns.c (make_buffer_string): New arg PROPS.
3316 (Fbuffer_string, Fbuffer_substring): Pass new arg.
3317 (Fbuffer_substring_no_properties): New function.
3318 (syms_of_editfns): defsubr it.
3319 (Vbuffer_access_fontify_functions): New variable.
3320 (Qbuffer_access_fontify_functions): New variable.
3321 (syms_of_editfns): Set up Lisp variable, initialize them.
3322 (make_buffer_string): Run this new hook.
3324 * minibuf.c (read_minibuf): Pass PROPS arg to make_buffer_string.
3325 Let make_buffer_string handle the gap.
3327 1995-12-03 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3329 * config.h (EMACS_INT, EMACS_UINT): Definitions deleted
3330 because lisp.h also defines them.
3332 * Makefile.in (keymap.o): Depend on puresize.h.
3334 * keymap.c: Include puresize.h.
3335 (store_in_keymap): Check PURE_P (def) and copy if nec.
3337 * puresize.h (PURE_P): New macro (three definitions).
3338 (CHECK_IMPURE): Use PURE_P.
3340 * buffer.c (Fkill_buffer): Rename arg bufname to buffer.
3341 Don't gcpro it after the last use.
3342 (Fswitch_to_buffer, Fpop_to_buffer): Rename arg bufname to buffer.
3343 (Fset_buffer): Likewise, and rename local buffer to buf.
3345 1995-12-01 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3347 * Makefile.in (THIS_IS_MAKEFILE): New definition.
3348 * s/irix6-0.h (C_SWITCH_SYSTEM): #undef this if THIS_IS_MAKEFILE.
3350 * macros.c (Fstore_kbd_macro_event): New function.
3351 (syms_of_macros): defsubr it.
3353 1995-11-29 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3355 * xdisp.c (message_dolog): Save and restore windows_or_buffers_changed.
3357 1995-11-28 Paul Eggert <eggert@twinsun.com>
3359 * Makefile.in (lisp): Remove c-mode.elc.
3361 1995-11-27 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3363 * msdos.c (sys_select): Check timer once even if input is pending.
3365 1995-11-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3367 * xfns.c (x_set_menu_bar_lines) [USE_X_TOOLKIT]:
3368 Don't crash for non-X frame.
3370 * callint.c (Fcall_interactively): In `c' case, clear out the message
3371 after reading the character.
3373 * xdisp.c (decode_mode_spec): For p and P, avoid overflow with
3376 * xmenu.c (set_frame_menubar): When called with deep_p == 0,
3377 that invalidates the previous f->menu_bar_vector.
3379 1995-11-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3381 * Version 19.30 released.
3383 * msdos.c (IT_set_menu_bar_lines): Clear last_modified field.
3385 1995-11-23 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3387 * keyboard.c (read_char): Handle unread events from popup menus.
3389 1995-11-22 Geoff Voelker <voelker@cs.washington.edu>
3391 * makefile.nt (DOC, clean): Don't use switches to del not supported
3394 1995-11-22 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3396 * xterm.c (XTmouse_position): Exit the loop if child == win.
3397 (x_iconify_frame): Call FRAME_SAMPLE_VISIBILITY.
3398 (XTframe_up_to_date): Block and unblock input.
3400 1995-11-22 Eli Zaretskii <eliz@is.elta.co.il>
3402 * msdos.c (internal_terminal_init): Initialize the_only_x_display.font.
3404 * xfaces.c (Fset_face_attribute_internal) [MSDOS]:
3405 Set font field to 1.
3407 1995-11-22 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3409 * msdos.c (dos_set_keyboard): If CODE is not recognized,
3410 initialize to the US keyboard table.
3412 1995-11-21 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3414 * s/linux.h (LIB_MOTIF): New definition.
3416 * editfns.c (Fcurrent_time): Doc fix.
3418 * s/hpux10.h (FORCE_ALLOCA_H): Defined (for getdate.y).
3421 * window.c (Fdisplay_buffer): Always deiconify the window's frame.
3422 (display_buffer_1): New subroutine.
3424 * m/alpha.h [LINUX] (LINUX_SBRK_BUG): Defined.
3425 * emacs.c (main): Add LINUX_SBRK_BUG conditional call to __sbrk.
3427 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Increased.
3429 * dosfns.c (syms_of_dosfns): Use 0x75 for dos_keypad_mode.
3431 1995-11-20 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3433 * alloc.c (Flist): Avoid using -- in while condition.
3435 * xfaces.c (unload_color, unload_font): Never invalidate computed
3438 * minibuf.c (choose_minibuf_frame): On MSDOS, just use minibuf_window.
3440 1995-11-19 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3442 * xterm.c (show_mouse_face):
3443 When clearing cursor, use proper column range.
3445 * lread.c (Vsource_directory): New variable.
3446 (init_lread): Initialize it.
3447 (syms_of_lread): Set up Lisp var.
3449 1995-11-18 Fred Fish <fnf@cygnus.com>
3451 * s/linux.h: #undef SIGPOLL and SIGURG as well as SIGIO.
3453 1995-11-18 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3455 * data.c (Fmake_local_variable): Call find_symbol_value
3456 before making a new local binding.
3458 1995-11-15 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
3460 * mem-limits.h [_LIBC] (start_of_data): Use weak ref to
3461 __data_start; use &etext if not present.
3463 1995-11-15 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3465 * xterm.c (XTread_socket): Verify a ButtonPress was actually in the
3466 menu bar before generating a menu_bar_activate_event event.
3468 * s/hpux10.h: New file.
3470 * textprop.c (Fset_text_properties): Call set_properties
3471 even if we also merge an interval.
3473 * xselect.c (x_clear_frame_selections): Get selection_symbol properly.
3474 (syms_of_xselect): Doc fix.
3476 * doprnt.c (doprnt1): Add a cast.
3478 * alloc.c (mark_object): Don't overwrite original argument value.
3480 * .gdbinit (xsymbol): Cast name explicitly to (char *).
3482 1995-11-14 Geoff Voelker <voelker@cs.washington.edu>
3484 * w32term.h: New file.
3486 1995-11-14 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3488 * keyboard.c (Fexecute_extended_command):
3489 Call Fwhere_is_internal just once to handle all the maps.
3491 * xdisp.c (Qredisplay_end_trigger_functions): Renamed from ..._hook.
3492 (syms_of_xdisp): Set up new name.
3493 (display_text_line): Call them with arguments.
3495 * window.c (Fset_window_redisplay_end_trigger): Doc fix.
3497 * fileio.c (check_executable) [DOS_NT]: Treat all dirs as executable.
3499 1995-11-13 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3501 * frame.h (FRAME_WINDOW_P): Always define it one way or another.
3503 * m/alpha.h: Declare calloc like malloc.
3505 1995-11-12 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3507 * xselect.c (x_clear_frame_selections): Undo previous change.
3509 * fileio.c (Fcopy_file): Don't chmod output file on MSDOS
3510 unless we have DJGPP version 2.
3512 * s/usg5-4.h (LIBS_STANDARD): Definition deleted.
3514 * s/isc2-2.h (LIBS_SYSTEM): Fix typo in prev change.
3516 * dispnew.c: Always include dispextern.h before cm.h.
3518 1995-11-11 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3520 * xdisp.c (display_text_line): Handle redisplay_end_trigger
3521 before getting the face of the next character. Reset next_face_change.
3523 * frame.c (syms_of_frame_1): Set up Vdefault_frame_alist here.
3524 (syms_of_frame): Not here.
3525 (Vdefault_frame_alist): Definition now unconditional.
3527 * msdos.c (dos_menubar_clock_displayed): New variable.
3528 (check_timer): Erase the clock if it has been turned off.
3530 * doc.c (Fdocumentation): Reject a file reference
3531 at the end of a lambda body.
3533 * xdisp.c (display_menu_bar): Fix backwards conditional.
3534 (update_menu_bar, redisplay_window): Don't use FRAME_EXTERNAL_MENU_BAR
3535 in #ifdef, since it is always defined.
3537 1995-11-10 Simon Leinen <simon@lia.di.epfl.ch>
3539 * s/hpux9.h (NO_EDITRES): Defined.
3540 (LIBXMU): Define once again.
3542 * xfns.c (HACK_EDITRES): Don't define if NO_EDITRES is defined.
3544 * xterm.c (HACK_EDITRES): Define here as in xfns.c.
3545 (XTread_socket): Test HACK_EDITRES.
3547 1995-11-10 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3549 * s/isc2-2.h (LIB_STANDARD_1): New macro.
3550 (LIB_STANDARD): Use LIB_STANDARD_1.
3551 (LIBS_SYSTEM): Use it here too.
3553 * print.c (debug_print): Explicitly print a CR.
3555 * keyboard.c (interrupt_signal): Do special things in GC.
3557 1995-11-10 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3559 * frame.c (set_menu_bar_lines): Record the fact that the window
3560 configuration changes.
3561 (set_menu_bar_lines_1): Mark the window as modified.
3563 1995-11-09 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3565 * floatfns.c (Fexpt): Doc fix.
3567 * window.h (struct window): New field redisplay_end_trigger.
3569 * window.c (Fwindow_redisplay_end_trigger): New function.
3570 (Fset_window_redisplay_end_trigger): Likewise.
3571 (syms_of_window): defsubr them.
3573 * xdisp.c (display_text_line): Get redisplay_end_trigger from window.
3575 1995-11-09 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3577 * buffer.c (syms_of_buffer): Delete the buffer-redisplay-end-trigger
3580 1995-11-09 Simon Leinen <simon@lia.di.epfl.ch>
3582 * xmenu.c: Don't include Xaw/Paned.h unless USE_LUCID is defined.
3583 (set_frame_menubar): Conditionalized some code on USE_LUCID that
3584 depends on the fact that the parent widget of the menu bar is an Xaw
3587 1995-11-09 Erik Naggum <erik@naggum.no>
3589 * eval.c (run-hook-with-args, run-hook-list-with-args): Safeguard
3590 against a t in the global value of hook variables.
3592 1995-11-08 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3594 * s/msdos.h (SYMS_SYSTEM): Add syms_of_msdos.
3596 * Makefile.in (lisp): Add loadup.el.
3598 * indent.c (compute_motion): Update next_boundary
3599 when we skip to next newline.
3601 1995-11-07 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3603 * lread.c (oblookup): Clear ARRAY_MARK_FLAG in obsize.
3605 * callint.c (syms_of_callint): Set up Qlet, Qletx, Qsave_excursion.
3606 (Fcall_interactively): Look past those special forms
3607 when checking for a call to `list'.
3609 1995-11-07 Geoff Voelker <voelker@cs.washington.edu>
3611 * config.in [HAVE_X_WINDOWS] (HAVE_WINDOW_SYSTEM): New macro.
3612 * s/windowsnt.h [HAVE_NTGUI] (HAVE_WINDOW_SYSTEM): New macro.
3613 * dispextern.h dispnew.c, emacs.c, frame.c, keyboard.c, process.c,
3614 scroll.c, sysdep.c, window.c, xdisp.c: Use HAVE_WINDOW_SYSTEM
3615 instead of testing for specific window systems.
3617 * frame.h [HAVE_X_WINDOWS] (FRAME_WINDOW_P): Macro defined.
3618 [HAVE_NTGUI] (FRAME_WINDOW_P): Macro defined.
3619 * dispnew.c, frame.c, scroll.c, xdisp.c: Use FRAME_WINDOW_P
3620 instead of testing for specific window system frames.
3622 * xdisp.c (update_menu_bar, redisplay_window): Test for definition
3623 of FRAME_EXTERNAL_MENU_BAR before using it.
3625 1995-11-06 Kevin Gallo <kgallo@microsoft.com>
3627 * xterm.h (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): New macros.
3628 * dispnew.c (update_frame): Use FRAME_INTERNAL_BORDER_WIDTH.
3629 (update_line): Use FRAME_LINE_HEIGHT and FRAME_FONT.
3631 * xdisp.c [HAVE_NTGUI] (set_menu_framebar): Declare external.
3632 [HAVE_NTGUI] (frame_title_buf, frame_title_ptr): Include variables
3633 for Win32 window system.
3634 [HAVE_NTGUI] (store_frame_title, x_consider_frame_title): Include
3635 procedures for Win32 window system.
3636 [HAVE_NTGUI] (x_consider_frame_title): Test for Win32 frame.
3637 [HAVE_NTGUI] (display_text_line): Test for Win32 frame on face change.
3638 [HAVE_NTGUI] (display_menu_bar): Perform no-op for NT window system.
3640 * window.c [HAVE_NTGUI] (Fset_window_configuration): Set menu
3643 * term.c [HAVE_NTGUI] (FRAME_TERMCAP_P): Don't redefine.
3645 * sysdep.c [HAVE_NTGUI] (init_sys_modes, reset_sys_modes):
3646 Don't initialize terminal mode when using window system.
3647 [HAVE_NTGUI] (BUFFER_SIZE_FACTOR): Increase for use with window system.
3649 * scroll.c [HAVE_NTGUI] (do_scrolling, do_direct_scrolling):
3650 Update frame geometry.
3652 * process.c [HAVE_NTGUI] (POLL_FOR_INPUT): Define macro.
3654 * keyboard.c [HAVE_NTGUI]: Include w32term.h.
3655 [HAVE_NTGUI] (KBD_BUFFER_SIZE): Increase for NT window system.
3656 [HAVE_NTGUI] (POLL_FOR_INPUT): Define.
3657 [HAVE_NTGUI] (kbd_buffer_get_event): Enable windowing and menu events.
3658 [HAVE_NTGUI] (lispy_function_keys): Define array for NT.
3659 [HAVE_NTGUI] (make_lispy_event): Enable menu bar events.
3660 [HAVE_NTGUI] (modify_event_symbol): Map symbol to keysym.
3661 [HAVE_NTGUI] (read_char_x_menu_prompt): Display menus.
3663 (FUNCTION_KEY_OFFSET): New macro.
3664 (make_lispy_event): Use FUNCTION_KEY_OFFSET to modify event codes
3665 before applying modifiers.
3667 * frame.c [HAVE_NTGUI]: Test for a Win32 frame in procedures
3668 that test for an X frame.
3670 * frame.h (output_method): New method: output_win32.
3671 (output_data): New data: win32.
3672 (FRAME_WIN32_P): New macro.
3673 [HAVE_NTGUI] (external_menu_bar): Define variable.
3674 [HAVE_NTGUI] (FRAME_EXTERNAL_MENU_BAR): Defined macro.
3676 * fns.c [HAVE_NTGUI] (Fy_or_n_p, Fyes_or_no_p): Allow popup.
3678 * emacs.c [HAVE_NTGUI]: Declare Vwindow_system.
3679 [HAVE_NTGUI] (main): Enable inhibit_window_system.
3680 Initialize environment from registry.
3681 Declare syms of Win32 windowing modules.
3683 * dispnew.c [HAVE_NTGUI]: Include w32term.h.
3684 Include dispextern.h before cm.h since dispextern.h includes windows.h.
3685 [HAVE_NTGUI] (make_frame_glyphs, free_frame_glyphs, scroll_frame_lines,
3686 update_frame, update_line): Test for WIN32 frame.
3687 [HAVE_NTGUI] (init_display): Initialize WIN32 window system.
3689 * dispextern.h [HAVE_NTGUI]: Include win32.h.
3690 [HAVE_NTGUI] (struct frame_glyphs): Include pixel fields.
3692 * w32term.c, w32xfns.c, w32fns.c, w32faces.c, w32select.c,
3693 w32menu.c, w32reg.c, win32.h: New files.
3695 * s/windowsnt.h [HAVE_NTGUI] (abort): New macro.
3696 [HAVE_NTGUI] (HAVE_FACES): Defined.
3698 * unexnt.c [HAVE_NTGUI] (WinMain): New procedure.
3699 [HAVE_NTGUI] (hinst, hprevinst, lpCmdLine, nCmdShow): New variables.
3700 [HAVE_NTGUI] (_start): Invoke WinMainCRTStartup.
3702 * ntterm.c (nt_ring_bell): Renamed from ring_bell, now global.
3703 (initialize_win_nt_display): Use nt_ring_bell.
3704 [HAVE_NTGUI] (pixel_to_glyph_coords, glyph_to_pixel_coords):
3707 * ntproc.c [HAVE_NTGUI] (create_child): Pass handles to children.
3708 [HAVE_NTGUI1] (sys_select): Support alternate keyboard handling.
3710 * nt.h (nt_get_resource): Prototype defined.
3712 * nt.c (nt_get_resource, init_environment): Defined.
3713 (prepare_standard_handles, restore_standard_handles) [HAVE_NTGUI]:
3714 Don't duplicate or restore standard handles.
3716 * makefile.nt (SUBSYSTEM, TLIBW32, TLASTLIB, WIN32OBJ): Defined.
3717 (w32term.obj, w32xfns.obj, w32fns.obj w32faces.obj, w32select.obj,
3718 w32menu.obj, w32reg.obj): Defined.
3719 (LINK_FLAGS): Use SUBSYSTEM.
3720 (OBJ1): Remove lastfile.obj.
3721 (LIBS, TEMACS): Use TLASTLIB.
3722 (LIBS) [NTGUI]: Use TLIBW32 and GUI libs.
3723 (EMACS): Remove Windows 95 conditional.
3724 (clean): Remove paths.h.
3726 1995-11-06 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3728 * xdisp.c (display_string): Detect truncation more carefully.
3730 * dispnew.c (update_line): Avoid indexing into obody by -1.
3732 * s/hpux9.h (LIBXMU): Never define this.
3734 1995-11-06 Erik Naggum <erik@naggum.no>
3736 * print.c (debug_print): Print newline to stderr, too.
3738 1995-11-05 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3740 * xfaces.c (unload_font): Invalidate computed faces.
3741 (unload_color): Likewise.
3742 (new_computed_face): Reuse invalidated computed faces.
3744 1995-11-04 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3746 * indent.c (Fmove_to_column): Doc fix.
3748 * buffer.c (Fmake_overlay): New args front-advance
3751 * fileio.c (Fwrite_region): Move the code that writes annotations
3754 1995-11-03 Karl Heuer <kwzh@gnu.ai.mit.edu>
3756 * msdos.h (struct x_output): Rename from struct x_display.
3757 * msdos.c (the_only_x_display): Type is now struct x_output.
3758 (internal_terminal_init): frame member is now named output_data.
3759 (init_environment): Fix timezone rules.
3760 * emacs.c (main): [MSDOS] Call init_gettimeofday.
3761 * frame.c [!MULTI_FRAME] (Fmodify_frame_parameters): Add missing
3762 declaration and initialization.
3763 [MULTI_FRAME] (choose_minibuf_frame): Moved to minibuf.c; now
3765 * minibuf.c (choose_minibuf_frame): Moved here from frame.c.
3767 1995-11-01 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3769 * Makefile.in (USE_@X_TOOLKIT_TYPE@): Define here, if appropriate.
3770 (THIS_IS_YMAKEFILE): Definition deleted.
3772 1995-10-31 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
3774 * doprnt.c: Include lisp.h.
3775 (doprnt1): Renamed from doprnt. New arg LISPSTRINGS.
3776 This is now a static subroutine.
3777 (doprnt): New definition calls doprnt1.
3778 (doprnt_lisp): New function.
3780 * editfns.c (Fformat): Use doprnt_lisp.
3782 * s/dgux.h: Test NOT_C_CODE instead of THIS_IS_YMAKEFILE.
3783 Get fatal error if not using GCC.
3785 * xdisp.c (redisplay_window): On non-X frame, always use
3786 FRAME_MENU_BAR_LINES as criterion for whether to display menu bar.
3787 (update_menu_bar): Likewise.
3788 (display_menu_bar): Do the work here for non-X frames
3789 regardless of USE_X_TOOLKIT.
3791 * m/alpha.h: Don't test THIS_IS_YMAKEFILE.
3793 * s/usg5-4.h: Always include sys/wait.h unless NOT_C_CODE;
3794 don't test #ifdef emacs for that.
3796 1995-10-31 Karl Heuer <kwzh@gnu.ai.mit.edu>
3798 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/altos.h:
3799 * m/amdahl.h, m/apollo.h, m/att3b.h, m/aviion.h, m/celerity.h:
3800 * m/clipper.h, m/cnvrgnt.h, m/cydra5.h, m/delta.h, m/delta88k.h:
3801 * m/dpx2.h, m/dual.h, m/elxsi.h, m/gec63.h, m/gould.h, m/hp9000s300.h:
3802 * m/i860.h, m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h:
3803 * m/irist.h, m/isi-ov.h, m/masscomp.h, m/mega68.h, m/mg1.h, m/news.h:
3804 * m/next.h, m/nh3000.h, m/nh4000.h, m/ns16000.h, m/ns32000.h, m/nu.h:
3805 * m/orion.h, m/orion105.h, m/pfa50.h, m/plexus.h, m/pyramid.h:
3806 * m/sequent.h, m/sparc.h, m/sps7.h, m/stride.h, m/sun1.h, m/sun2.h:
3807 * m/tad68k.h, m/tahoe.h, m/targon31.h, m/tek4300.h, m/tekxd88.h:
3808 * m/template.h, m/tower32.h, m/tower32v3.h, m/ustation.h, m/vax.h:
3809 * m/wicat.h, m/windowsnt.h, m/xps100.h:
3810 (SHORTBITS, INTBITS, LONGBITS): Deleted; now in config.h.
3812 1995-10-30 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
3814 * alloc.c, data.c, doprnt.c, floatfns.c, fns.c, indent.c
3815 * insdel.c, lisp.h, lread.c, print.c, xdisp.c, xfaces.c, xterm.c
3816 (BITS_PER_SHORT, BITS_PER_INT, BITS_PER_LONG): Rename from
3817 SHORTBITS, INTBITS, LONGBITS.
3818 * m/alpha.h, m/convex.h, m/hp800.h, m/intel386.h, m/iris4d.h
3819 * m/iris5d.h, m/mips-siemens.h, m/mips.h:
3820 (SHORTBITS, INTBITS, LONGBITS): Deleted; now in config.h
3821 Used new names for those macros in all references.
3823 1995-10-30 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3825 * config.in (BITS_PER_CHAR, BITS_PER_INT, BITS_PER_SHORT)
3826 (BITS_PER_LONG): Define if not already defined.
3828 * print.c (debug_print): Print a newline here.
3830 * .gdbinit (pr): Don't print newline here.
3832 * syntax.c (check_syntax_table): Check the purpose slot.
3833 Use Qsyntax_table_p for the error message.
3835 * lisp.h (CHECK_CHAR_TABLE): Don't accept nil.
3837 * Makefile.in (prefix-args): Use LDFLAGS, not ALL_LDFLAGS.
3839 * unexalpha.c (fatal_unexec): Don't use varargs.
3841 * editfns.c (Fencode_time): Add cast.
3842 (Fset_time_zone_rule): Add cast.
3844 * xterm.h: Move the include of Xlocale.h after setting HAVE_X11R5.
3846 * keyboard.c (command_loop_1): Test pre- and post-command hooks
3847 for non-nil-ness by looking at the V... variable.
3849 1995-10-29 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3851 * m/m68k.h [linux]: Define NO_REMAP and TEXT_START,
3852 and also DATA_SEG_BITS if compiling for ELF.
3853 (HAVE_ALLOCA, alloca): Define if compiling with GCC.
3855 * keymap.c (describe_translation): Insert newline after key
3858 * fns.c (Fsafe_length): Add missing parentheses around &
3861 * minibuf.c (temp_echo_area_glyphs): Only delete the temporary
3864 1995-10-29 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3866 * syssignal.h [POSIX_SIGNALS] (signal): Undef before defining.
3868 * unexelfsgi.c (find_section): New arg old_section_h.
3869 Rename file_h to old_file_h and fix type.
3872 * syntax.c (Fmodify_syntax_entry): Don't fail to init MATCH.
3874 * lisp.h (PVEC_TYPE_MASK): Remove the 0x100 bit.
3876 * keyboard.c (command_loop_1): No direct display if Column Number mode.
3877 (Vcolumn_number_mode): New variable.
3878 (syms_of_keyboard): Set up Lisp variable.
3880 * marker.c (Fset_marker_insertion_type): Doc fix.
3882 * alloc.c (Fmake_char_table): Doc fix.
3884 * casetab.c (Fset_case_table): Doc fix.
3886 * alloc.c: Cast first arg to bzero.
3888 1995-10-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3890 * xterm.h (FRAME_XIC): Fix wrong field name.
3892 * alloc.c (Fmemory_use_counts): Cast 1 to EMACS_INT before shift.
3894 * eval.c (run_hook_with_args): Add forward declaration.
3896 1995-10-27 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3898 * Makefile.in (TAGS): Separate export DIR=`pwd` into two commands.
3900 * syntax.h (SYNTAX, SYNTAX_WITH_FLAGS, SYNTAX_MATCH):
3901 Fix the non-GCC definitions.
3903 * callint.c (Fcall_interactively): New arg KEYS.
3905 * keyboard.c (Fcommand_execute): New arg KEYS. Callers changed.
3906 (read_char): Specify KEYS when handling Vspecial_event_map.
3908 1995-10-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3910 * msdos.c (IT_ring_bell): Use intdos, not write.
3912 1995-10-25 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
3914 * data.c [!HAVE_FMOD] (fmod): Make consistent with ANSI definition.
3915 Don't use drem; it's not the same function.
3917 1995-10-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3919 * s/linux.h (REGEXP_IN_LIBC): Definition turned off.
3921 * minibuf.c (syms_of_minibuf): Doc fix.
3923 1995-10-23 Erik Naggum <erik@churchy.gnu.ai.mit.edu>
3925 * fns.c (map_char_table): Map over only CHAR_TABLE_ORDINARY_SLOTS
3926 slots, not vector size.
3928 * casetab.c (Fcase_table_p, Fcurrent_case_table): Delete unused
3930 (set_case_table): Delete obsolete local variable `down', use
3931 `table' where referenced. Fix assignment to `canon' when nil.
3932 Store eqv in extras[2], not extras[0].
3933 (init_casetab_once): Case-tables have 3 extra slots, not 4.
3935 1995-10-22 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3937 * msdos.c (recent_doskeys_index, total_doskeys, recent_doskeys):
3939 (Frecent_doskeys): New function.
3940 (syms_of_msdos): New function.
3942 * search.c (string_match_1): Pass the POSIX arg to compile_pattern.
3944 * keyboard.c (ok_to_echo_at_next_pause): Make it a char *.
3945 (read_char): Copy and compare with echo_area_glyphs.
3947 * buffer.c (reset_buffer_local_variables): Call
3948 Fset_standard_case_table if std case table seems to have been changed.
3950 1995-10-21 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3952 * buffer.c (reset_buffer): Initialize redisplay_end_trigger slot.
3953 Initialize extra1, extra2 and extra3 slots.
3955 * textprop.c (Fnext_single_property_change): Rearrange handling of
3956 limit = t; don't return t.
3958 * xdisp.c (try_window_id): Stop the compute_motion at ZV, not Z,
3959 when checking if all changes are below the window.
3961 * keyboard.c (read_char): If we reread a char, the next pause
3962 can start echoing despite a remaining echo area message.
3963 (ok_to_echo_at_next_pause): New variable.
3964 (cancel_echoing): Clear ok_to_echo_at_next_pause.
3966 1995-10-20 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3968 * xdisp.c (Qredisplay_end_trigger_hook): New variable.
3969 (syms_of_xdisp): Set up Lisp variable.
3970 (display_text_line): Run the hook when appropriate.
3972 * buffer.c (init_buffer_once): Mark redisplay_end_trigger always local.
3973 Also fix previous change.
3974 (syms_of_buffer): Set up Lisp var buffer-redisplay-end-trigger.
3976 * buffer.h (struct buffer): New slot redisplay_end_trigger.
3977 Also extra1, extra2, extra3.
3979 1995-10-19 Erik Naggum <erik@naggum.no>
3981 * fns.c (Fmap_char_table): Call map_char_table with correct args.
3983 1995-10-18 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3985 * config.in (RE_TRANSLATE_TYPE): New definition.
3987 * casetab.c: Case tables are now char-tables,
3988 and the case table is stored in the downcase_table slot only.
3989 (Fcurrent_case_table, Fstandard_case_table, set_case_table)
3990 (compute_trt_inverse, init_casetab_once): Use new data format.
3992 * buffer.c (reset_buffer_local_variables):
3993 Get the up, eqv and canon tables from within the down case table.
3995 * editfns.c (Fchar_equal): Handle char-table as case table.
3997 * fns.c (Fchar_table_subtype): New function.
3998 (syms_of_fns): defsube it.
4000 * fns.c (map_char_table): When possible, use a number
4001 to describe the range.
4003 * doc.c (Fsubstitute_command_keys): Pass new arg to describe_map_tree.
4005 * keymap.c (describe_map_tree): New arg always_title. Callers changed.
4007 * search.c (compile_pattern_1, compile_pattern, search_buffer):
4008 Case tables are char-tables now.
4010 1995-10-16 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4012 * lisp.h (UPCASE_TABLE): Definition deleted.
4013 (UPPERCASEP, LOWERCASEP, NOCASEP, UPCASE, UPCASE1, DOWNCASE)
4014 (DOWNCASE_TABLE): Case tables are now char-tables.
4015 (Vascii_upcase_table, Vascii_canon_table, Vascii_eqv_table):
4016 Declarations deleted.
4018 * keyboard.c (read_char): Let Vkeyboard_translate_table be char-table.
4019 (syms_of_keyboard): Doc fix.
4021 1995-10-15 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4023 * lread.c (read1): Handle #' as prefix.
4024 (Qfunction): New variable.
4025 (syms_of_lread): Set up Qfunction.
4027 * fns.c (Fchar_table_range): New function.
4028 (syms_of_fns): defsubr it.
4030 1995-10-14 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4032 * unexelfsgi.c (find_section): New function.
4033 (unexec): Use it. Also simplify previous changes.
4035 1995-10-13 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4037 * unexelfsgi.c (unexec): Find the old data section.
4038 New variable new_offsets_shift used instead of new_data2_size
4039 since they are not always the same. Simplify logic for copying
4040 the headers and inserting new ones.
4042 * xterm.c (x_term_init, XTread_socket): Add HAVE_X_I18N support.
4044 * xfns.c (x_window, both versions): Add HAVE_X_I18N support.
4046 1995-10-12 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4048 * xterm.h (HAVE_X_I18N): New macro.
4049 Maybe include Xlocale.h.
4050 (struct x_output): New field xic.
4051 (FRAME_XIC): New macro.
4053 * window.c (Fdelete_other_windows): Set w->force_start.
4055 * xdisp.c (syms_of_xdisp): Doc fix.
4057 1995-10-11 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4059 * fileio.c (Finsert_file_contents): If replacing,
4060 set selected_window->start_at_line_beg.
4062 1995-10-11 Kim Storm <kfstorm@wombat.gnu.ai.mit.edu>
4064 * keyboard.c (make_lispy_event) [!USE_X_TOOLKIT]: Dragging
4065 the mouse into the menu-bar and releasing it there did
4066 not create a drag-mouse event.
4067 (set-input-mode) [MSDOS]: Do not call reset_sys_modes and
4070 * dosfns.c (insert-startup-screen): New function.
4071 (msdos-memget, msdos-memput): New functions.
4072 (msdos-set-keyboard, insert-startup-screen): New functions.
4073 (dos-timezone-offset, dos-display-scancodes, dos-menubar-clock,
4074 dos-hyper-key, dos-super-key, dos-keypad-mode, dos-keyboard-layout,
4075 dos-decimal-point): New variables.
4077 * dosfns.h (dos_timezone_offset, dos_display_scancodes,
4078 dos_menubar_clock, dos_hyper_key, dos_super_key, dos_keypad_mode,
4079 dos_keyboard_layout, dos_decimal_point): New variables.
4081 * msdos.c: [!HAVE_X_WINDOWS]:
4082 Reworked display code to perform immediate screen output.
4083 Added menu-bar clock.
4084 Reworked keyboard code to support international keyboards.
4085 Improved keypad handling (see dos-keypad-mode).
4086 Properly distinguish between C-end and C-kp-1 etc.
4087 Corrected M-return & M-kp-enter.
4088 Added support for hyper and super keys.
4089 Reworked mouse code to avoid mouse flicker.
4090 Saves and restores DOS-screen prior to emacs startup.
4091 (sys_select): Would abort if rfds = NULL.
4092 (dos_direct_output): New function.
4093 (dos_dump_scancodes): New variable.
4095 * msdos.h (internal_flush): Removed
4096 (mouse_init1, mouse_check_moved, mouse_pressed, mouse_released): Removed.
4097 (dos_get_saved_screen, dos_set_keyboard): New functions.
4099 * s/msdos.h: Check that DJGPP v. 1 is used.
4100 Define __DJGPP__ to 1.
4101 Simplified INTERNAL_TERMINAL termcap definition.
4102 Removed #define fflush internal_flush.
4104 * sysdep.c: (init_sys_modes) [!HAVE_X_WINDOWS (MSDOS)]:
4105 Always call set_terminal_modes.
4106 (reset_sys_modes) [MSDOS]: Do not look at EMACSCOLORS.
4109 1995-10-11 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4111 * buffer.c (Fkill_buffer): Don't kill auto save file if not recent.
4113 * keymap.c (describe_vector): Support nested char-tables.
4115 1995-10-10 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4117 * Give char-tables a new slot `purpose'.
4119 * lisp.h (struct Lisp_Char_Table): New slot `purpose'.
4120 (CHAR_TABLE_STANDARD_SLOTS): Add one.
4122 * alloc.c (Qchar_table_extra_slots): New variable.
4123 (syms_of_alloc): Initialize it.
4124 (Fmake_char_table): Take new arg PURPOSE and get N from a property.
4126 * fns.c (Fcopy_sequence): Call Fmake_char_table the new way.
4127 (map_char_table): No longer static. New arg C_FUNCTION.
4128 (Fmap_char_table): Call to map_char_table changed.
4129 (Fset_char_table_parent): Allow nil s new parent.
4130 Fix the code that checks for a loop in parents.
4132 * syntax.c (Qsyntax_table): New variable.
4133 (init_syntax_once): Call Fmake_char_table the new way.
4134 Set up Qsyntax_table.
4135 (Fsyntax_table_p): Check the `purpose' field.
4137 * disptab.h (DISP_TABLE_P): Check the `purpose' slot.
4138 (Qdisplay_table): Declared.
4139 * dispnew.c (Qdisplay_table): New variable.
4140 (syms_of_display): Initialize it.
4142 1995-10-09 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4144 * data.c (Qvector_or_char_table_p): New variable.
4145 (Fvector_or_char_table_p): New function.
4146 (syms_of_data): Set up Lisp var and function.
4148 * lisp.h (CHECK_VECTOR_OR_CHAR_TABLE): New macro.
4150 1995-10-09 Erik Naggum <erik@naggum.no>
4152 * buffer.c (buffer-display-table): Document new implementation.
4154 1995-10-09 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4156 * minibuf.c (temp_echo_area_glyphs): Restore the old point value.
4158 1995-10-08 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4160 * process.c (exec_sentinel, read_process_output):
4161 Call record_asynch_buffer_change only if caller is reading kbd input.
4163 * buffer.c (init_buffer_once): Make file_format always local,
4164 not just local when set.
4166 1995-10-07 Erik Naggum <erik@naggum.no>
4168 * alloc.c (Fmake_char_table): Initialize parent to nil.
4170 1995-10-07 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4172 * keyboard.c (command_loop_1): Access display tables as char-tables.
4174 * indent.c (buffer_display_table): Use DISP_TABLE_P. Return type
4175 struct Lisp_Char_Table * since display tables are now char-tables.
4176 (character_width, disptab_matches_widthtab, recompute_width_table)
4177 (current_column, Fmove_to_column, compute_motion):
4178 Corresponding changes.
4180 * window.c (window_display_table): Use DISP_TABLE_P. Return type
4181 struct Lisp_Char_Table * since display tables are now char-tables.
4182 * xdisp.c (redisplay_window, redisplay_window, display_text_line):
4183 Fix up calls to window_display_table. Access display tables
4186 * disptab.h (DISP_TABLE_EXTRA_SLOTS, DISP_TABLE_P): New macros.
4187 (DISP_TRUNC_GLYPH, DISP_CONTINUE_GLYPH, DISP_ESCAPE_GLYPH)
4188 (DISP_CTRL_GLYPH, DISP_INVIS_VECTOR, DISP_BORDER_GLYPH):
4189 Use the `extras' field.
4190 (window_display_table, buffer_display_table): Change return type.
4192 * keymap.c (describe_vector): Use Flength to get length of vector.
4194 * Makefile.in (bytecode.o): Depend on syntax.h.
4196 1995-10-06 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4198 * syntax.c (describe_syntax): Handle new syntax-table data format.
4199 (Fmodify_syntax_entry, init_syntax_once): Use SET_RAW_SYNTAX_ENTRY.
4200 Handle new syntax-table data format.
4201 (check_syntax_table): Use CHECK_CHAR_TABLE. Now static.
4202 Don't return anything; callers changed.
4203 (Fcopy_syntax_table): Use Fcopy_sequence.
4204 (Fchar_syntax, Fmatching_paren, Fforward_comment): Copy complex args
4205 to SYNTAX into variables before using them.
4206 (Fsyntax_table_p): Accept any char-table.
4207 (syntax_parent_lookup): New function.
4208 (syntax_temp): New variable.
4210 * syntax.h: Use char tables as syntax tables.
4211 (RAW_SYNTAX, RAW_SYNTAX_MATCH): Macros deleted.
4212 (RAW_SYNTAX_ENTRY, SET_RAW_SYNTAX_ENTRY): New macros.
4213 (SYNTAX, SYNTAX_MATCH): Rewritten.
4214 (SYNTAX_ENTRY, SYNTAX_WITH_FLAGS): New macros.
4215 (SYNTAX_COMSTART_SECOND, SYNTAX_COMEND_FIRST, SYNTAX_COMEND_SECOND)
4216 (SYNTAX_PREFIX, SYNTAX_COMMENT_STYLE): Use SYNTAX_WITH_FLAGS.
4218 * callint.c (callint_message, callint_message_size): New vars.
4219 (syms_of_callint): Set up new vars.
4220 (Fcall_interactively): Keep the prompt in the heap.
4222 1995-10-05 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4224 * window.c (Fset_window_hscroll): Don't reject args > SHORTBITS.
4226 * indent.c (Fmove_to_column): Make it interactive.
4228 1995-10-04 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4230 * lisp.h (struct Lisp_Char_Table): New structure.
4231 (CHAR_TABLE_STANDARD_SLOTS, CHAR_TABLE_ORDINARY_SLOTS): New macros.
4232 (CHAR_TABLE_EXTRA_SLOTS): New macro.
4234 * buffer.c (Fmake_indirect_buffer): Was taking marker positions
4235 from current buffer, which is irrelevant.
4236 (init_buffer_once): Make buffer-file-format always local.
4238 1995-10-03 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4240 * unexec.c (write_segment): Write valid data in units of 1<<13,
4241 but write zeros only a page at a time.
4243 * window.c (window_scroll): Always set force_start.
4245 1995-10-02 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4247 * eval.c (run_hook_with_args_2): New function.
4249 * unexec.c (write_segment): Use pagesize as unit of writing
4252 * lisp.h (CHECK_CHAR_TABLE): New macro.
4254 * frame.c (Qmouse_leave_buffer_hook): New variable.
4255 (syms_of_frame_1): Initialize it.
4256 (Fhandle_switch_frame): Run the hooks.
4258 * keyboard.c (Vsuggest_key_bindings): New variable.
4259 (syms_of_keyboard): Set up Lisp variable.
4260 (Fexecute_extended_command): When enabled, show an equivalent
4263 1995-10-01 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4265 * xterm.c (x_connection_signal_1): New function.
4266 (x_connection_signal): Try all the server connections
4267 to see which one was lost.
4269 1995-09-29 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4271 * xdisp.c (Qwindow_scroll_functions, Vwindow_scroll_functions):
4273 (syms_of_xdisp): Initialize them.
4274 (redisplay_window): Call the functions when appropriate.
4276 * xterm.c (XTcondemn_scroll_bars): No error if
4277 FRAME_CONDEMNED_SCROLL_BARS is non-nil already.
4278 Just move all the scroll bars into there.
4280 * dispnew.c (get_display_line): Don't abort if there's text
4281 in the line to the right beyond HPOS.
4282 (quit_error_check): Make this a no-op.
4284 * fileio.c (barf_or_query_if_file_exists): New arg STATPTR.
4286 (Fcopy_file): Error if input and output are the same file.
4288 1995-09-28 Carsten Bormann <cabo@informatik.uni-bremen.de>
4290 * m/ibmrs6000.h: Add early support for Solaris 2.5 on PowerPCs.
4291 [USG5_4] (CANNOT_DUMP): Define this if USG5_4.
4292 (UNEXEC): Don't define if already defined.
4293 [USG5_4] (DATA_SEG_BITS, LIBS_MACHINE): Alternate definitions.
4294 (C_SWITCH_MACHINE, LD_SWITCH_MACHINE, NLIST_STRUCT, WORDS_BIG_ENDIAN)
4295 (TEXT_START, DATA_START, TEXT_END, DATA_END):
4296 Don't define, if USG5_4.
4298 1995-09-27 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
4300 * lisp.h (pvec_type): Add PVEC_CHARTABLE and PVEC_BOOLVECTOR.
4301 Move PVEC_BUFFER to a higher bit.
4302 (CHARTABLEP, GC_CHARTABLEP, XSETCHARTABLE, XCHARTABLE): New macros.
4303 (XBOOLVECTOR, XSETBOOLVECTOR, BOOLVECTORP, GC_BOOLVECTORP): New macros.
4304 (struct Lisp_Boolvector): New data type.
4306 * lread.c (read1): Handle chartables and boolvectors.
4307 * print.c (print): Handle chartables and boolvectors.
4308 (print_boolvector): New function.
4309 * data.c (Fchartablep, Fboolvectorp): New functions.
4310 (syms_of_data): defsubr them.
4311 (Faref, Faset, Fsequencep): Handle chartables and boolvectors.
4313 * fns.c (Fset_char_table_range): New function.
4314 (make_char_table, Fmap_char_table): New function.
4315 (Fchar_table_extra_slot, Fset_char_table_extra_slot): New functions.
4317 * fns.c (Fcopy_sequence, Felt, internal_equal, Ffillarray):
4318 Handle chartables and boolvectors.
4319 (Flength, concat): Handle boolvectors as args.
4320 (Flength): Handle chartables as args.
4322 * alloc.c (Fmake_chartable, Fmake_boolvector): New functions.
4323 (syms_of_alloc): defsubr them.
4325 * buffer.c (Fmake_overlay): Set end-marker's insertion_type to 1.
4327 1995-09-22 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
4329 * xfns.c (Fx_create_frame): Set up buffer-predicate slot.
4331 * gmalloc.c (current_core_address): New function.
4332 (_malloc_internal): Use current_core_address.
4333 (morecore): Avoid using __morecore (0).
4335 * ralloc.c (r_alloc_sbrk): Round up amount being returned.
4337 1995-09-20 Paul Eggert <eggert@twinsun.com>
4339 * msdos.c (gettimeofday, init_gettimeofday, daylight, gmtoffset):
4340 Undo previous change to msdos.c.
4341 (init_environment): No need to call tzset and init_gettimeofday,
4342 since `main' now does that for us.
4343 (gettimeofday): Ignore tzp; it's obsolescent.
4344 (init_gettimeofday): Invoke tzset first.
4345 * s/msdos.h (LOCALTIME_CACHE, tzset): New macros.
4347 1995-09-17 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
4349 * xfns.c (x_decode_color): Get error if color not defined.
4351 * xmenu.c (popup_get_selection): Pop menu down if button is pressed
4354 * minibuf.c (read_minibuf_unwind): Use safe_run_hooks.
4356 * keyboard.c (safe_run_hooks): No longer static.
4358 * keyboard.c (read_char_x_menu_prompt):
4359 When unreading events generated by a menu,
4360 turn symbols and integers into lists,
4361 for the sake of last_nonmenu_event and thus y-or-n-p.
4363 1995-09-15 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
4365 * lread.c (Fload): Rename arg STR to FILE.
4367 1995-09-14 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu>
4369 * ralloc.c (r_alloc_sbrk): Get the right heap data address
4372 1995-09-12 Karl Heuer <kwzh@gnu.ai.mit.edu>
4374 * s/isc2-2.h (BROKEN_SELECT_NON_X): Define this instead of turning
4376 * s/isc3-0.h (BROKEN_SELECT_NON_X): Moved to s/isc2-2.h.
4377 (HAVE_SELECT): Deleted; s/isc2-2.h no longer undefs this.
4379 1995-09-12 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4381 * insdel.c (signal_after_change): Call report_interval_modification.
4383 * textprop.c (call_mod_hooks): Moved from intevals.c
4384 (verify_interval_modification): Moved from intervals.c.
4385 (interval_insert_behind_hooks, interval_insert_in_front_hooks):
4387 (report_interval_modification): New function.
4388 * intervals.c (call_mod_hooks, verify_interval_modification):
4389 Functions moved to textprop.c.
4391 1995-09-10 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4393 * xmenu.c (xmenu_show): Ignore `quote' when looking up the result.
4395 1995-09-10 Paul Eggert <eggert@twinsun.com>
4397 * editfns.c (Fencode_time): Use mktime to do the real work;
4398 this fixes bugs involving out-of-range dates and leap seconds,
4399 and allows date arithmetic via out-of-range values for arguments.
4400 Allow the ZONE parameter to be a TZ-style string.
4401 Doc string fix: `1900' -> `this century'.
4402 (set_time_zone_rule): New function.
4403 (Fset_time_zone_rule): Use it.
4404 (environ, make_time): Add extern declarations.
4405 (days_per_month): Remove.
4407 1995-09-09 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4409 * keyboard.c (command_loop_1): Set this_command to nil
4410 before reading a command.
4412 * editfns.c (Fdecode_time): Doc fix.
4414 1995-09-08 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4416 * m/apollo.h (HAVE_UNISTD_H): Add #undef.
4418 1995-09-07 Paul Eggert <eggert@twinsun.com>
4420 * editfns.c (Fset_time_zone_rule): New function.
4421 (syms_of_editfns): defsubr it.
4422 * msdos.c (gettimeofday): Don't bother setting time zone,
4423 since nobody uses it, and our hacks to get it get in the way
4424 of the above fix. Use simpler method for getting time stamp.
4425 (init_gettimeofday, daylight, gmtoffset): Remove.
4426 * msdos.h (init_gettimeofday): Remove declaration.
4428 1995-09-06 Paul Eggert <eggert@twinsun.com>
4430 * configure.in (LOCALTIME_CACHE): Define if tzset exists and
4431 if localtime caches TZ. Check for tzset.
4433 * emacs.c (main): Call tzset only if LOCALTIME_CACHE is defined;
4434 not all Suns have this bug.
4435 * m/pmax.h, s/386bsd.h, s/bsd386.h, s/freebsd.h, s/gnu.h,
4436 s/netbsd.h (LOCALTIME_CACHE): Remove; now configured automatically.
4438 1995-09-06 Erik Naggum <erik@naggum.no>
4440 * alloc.c (Fmake_marker): Initialize insertion_type to 0.
4442 1995-09-03 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4444 * insdel.c (adjust_markers_for_insert): New function.
4445 (insert_from_buffer_1, insert_from_string_1, insert_1): Call it.
4447 1995-09-01 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4449 * fileio.c (Fmake_symbolic_link, Fadd_name_to_file):
4450 Look for handler for the new name as well as for the target.
4452 * dired.c (Ffile_name_all_completions, Ffile_name_completion):
4453 Look for handler for FILE as well as for DIRNAME.
4455 1995-08-31 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4457 * marker.c (Fcopy_marker): New arg TYPE.
4458 (Fmarker_insertion_type, Fset_marker_insertion_type): New functions.
4459 (syms_of_marker): defsubr them.
4461 * buffer.c (Fmake_indirect_buffer): Set the insertion_type of the
4462 zv_marker markers to 1.
4464 * window.c (save_window_save): Pass the new arg to Fcopy_marker.
4466 * editfns.c (save_excursion_save): Pass the new arg to Fcopy_marker.
4468 1995-08-31 Erik Naggum <erik@naggum.no>
4470 * keyboard.c (Fcommand_execute): Ignore `disabled' property on
4471 commands if `disable-command-hook' is nil.
4473 1995-08-30 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4475 * keyboard.c (read_key_sequence): Validate the event position
4476 before calling get_local_map.
4478 1995-08-29 Jack Repenning <jackr@sgi.com>
4480 * unexelfsgi.c: Compute new data offset based on memory
4481 address; also, copy .got from memory not temacs.
4483 1995-08-29 Kim Storm <kfs@olicom.dk>
4485 * dosfns.c (Fmsdos_mouse_enable, Fmsdos_mouse_disable)
4486 (Fmsdos_mouse_init): New functions.
4487 (syms_of_dosfns): defsubr them.
4488 (Fmode25, Fmode4350): Call mouse_off unconditionally.
4489 (Fset_mouse_position): Return nil.
4491 * msdos.h (sleep_or_kbd_init): Delete declaration.
4493 * frame.c [!MULTI_FRAME] (Factive_minibuffer_window): New function.
4494 [!MULTI_FRAME] (syms_of_frame): defsubr it.
4496 * sysdep.c (sys_subshell) [MSDOS]: Handle SUSPEND env var.
4497 Disable error report from subshell if system returns non-zero.
4498 Don't call vfork before calling system.
4499 Don't call wait_for_termination.
4500 (sys_select): Turn it off if MSDOS.
4501 (reset_sys_modes): Support EMACSCOLORS env var.
4503 * puresize.h (SITELOAD_PURESIZE_EXTRA): New macro.
4504 (BASE_PURESIZE): Use SITELOAD_PURESIZE_EXTRA.
4506 * msdos.c (putchar): Call internal_flush instead of _flsbuf.
4507 (DO_TERMSCRIPT): New macro to support open-termscript.
4508 (internal_flush): Corrected handling of flush in middle of
4509 escape sequences. Handle screen width > 127.
4510 (flush_escape): New function for use by internal_flush.
4511 (sys_select): New MS-DOS specific version with us timing.
4512 (EMACSCOLORS): New environment variable.
4513 (IT_clear_end_of_line): Set default face.
4514 (run_msdos_command): Restore mouse position after command.
4516 Corrected switch to cooked mode while running command.
4517 (mouse_on, mouse_off): Now checks have_mouse > 0.
4518 Note: "have_mouse < 0" means that a mouse is present, but
4519 it has been disabled via msdos-mouse-disable.
4520 (IT_write_glyphs): Allow esc-character itself to be printed.
4521 (event_timestamp): New function to make reliable times stamps.
4522 (sys_chdir): Skip drive letter before calling chdir.
4523 (sleep_or_kbd_hit): Handle 60 seconds time wrap.
4524 (mouse_get_pos): Return event_timestamp.
4527 1995-08-29 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4529 * msdos.c (struct IT_menu_state): Refer to it as struct, not typedef.
4531 * editfns.c (Fdecode_time): Doc fix.
4533 * minibuf.c (Fdisplay_completion_list): Clear all text properties
4534 for the whitespace between completion items.
4536 * xterm.c (x_wm_set_icon_pixmap): If trying to turn off icon
4539 1995-08-28 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
4541 * s/gnu.h (GETPGRP_NO_ARG, WAIT_USE_INT, UNEXEC): New macros.
4542 (HAVE_SOCKETS, A_TEXT_SEEK, NO_REMAP): Macros removed.
4544 1995-08-27 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4546 * doprnt.c (doprnt): Fix typo in error message.
4548 1995-08-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4550 * emacs.c (decode_env_path): Use ".", not nil, for current dir.
4552 1995-08-22 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4554 * keyboard.c (modifier_names): Add 4 bits to modifier bit positions.
4556 1995-08-21 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
4558 * xdisp.c (display_text_line): Write blanks under the entire
4559 scroll bar, not just the first column.
4561 1995-08-21 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4563 * s/irix5-2.h (SA_RESTART): Add #undef.
4566 (Qpost_command_idle_hook, Vpost_command_idle_hook): New vars.
4567 (syms_of_keyboard): Set up new vars.
4568 (command_loop_1): Run Qpost_command_idle_hook.
4570 1995-08-20 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4572 * s/aix3-1.h (SYSTEM_TYPE): Change to just "aix".
4574 * s/aix4.h: Include aix3-2-5.h, not aix3-2.h.
4575 * s/aix4-1.h (sigsetmask, _setjmp, _longjmp): Delete undefs.
4576 [__GNUC__] (_NO_PROTO): Add undef.
4578 * s/aix3-2-5.h (POSIX_SIGNALS, CLASH_DETECTION): Defined.
4579 (SIGNALS_VIA_CHARACTERS, MAIL_USE_LOCKF): Defined.
4580 (sigmask, sigsetmask, _setjmp, _longjmp): Add undefs.
4582 1995-08-19 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4584 * dispnew.c: Include syssignal.h.
4586 * lisp.h (struct Lisp_Marker): Make insertion_type an unsigned int.
4588 1995-08-16 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4590 * syntax.c (scan_sexps_forward): Fix previous change.
4592 1995-08-15 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
4594 * emacs.c (sort_args): Initialize best_priority smaller than any
4597 1995-08-14 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4599 * fileio.c (Fwrite_region): New arg lockname.
4600 (auto_save_1): Pass new arg.
4602 * callproc.c (Fcall_process_region): Pass new arg to Fwrite_region.
4604 * emacs.c (standard_args): Fix previous change.
4606 1995-08-14 Erik Naggum <erik@naggum.no>
4608 * emacs.c (standard_args): Add option --eval to evalute an
4609 expression on the command line and print the result.
4611 1995-08-14 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4613 * cmds.c (Fself_insert_command): Optimize the case with arg > 2
4614 to avoid running change hooks lots of times.
4616 1995-08-13 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4618 * s/isc4-1.h (NO_SOCKETS_IN_FILE_SYSTEM): Defined.
4619 (START_FILES): Defined.
4620 (LIB_STANDARD): New definition, details depending on __GNUC__.
4622 * syntax.c (scan_sexps_forward): Use the initial depth
4623 in the starting state for tracking when we reach TARGETDEPTH.
4625 1995-08-11 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4627 * m/alpha.h: Test OSF1, not __osf1__.
4628 (ORDINARY_LINK): Define only if OSF1.
4629 (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF, PTY_OPEN):
4630 Define only if OSF1.
4631 (TEXT_END, DATA_END): Fix the definitions.
4633 1995-08-10 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4635 * s/linux.h (ULIMIT_BREAK_VALUE, SEGMENT_MASK): Moved to intel386.h
4636 (LIBS_SYSTEM): Define this instead of LIBS_MACHINE.
4638 * m/intel386.h [linux] (ULIMIT_BREAK_VALUE, SEGMENT_MASK):
4641 * m/alpha.h [linux] (COFF, NO_TERMIO): Defined.
4642 [linux] (TEXT_END, DATA_END): New definitions.
4644 * unexalpha.c (fatal_unexec): Use vfprintf, not _doprnt.
4646 * m/alpha.h (LIBS_DEBUG, START_FILES, LIBS_MACHINE):
4647 Define only if __osf1__.
4649 * macros.c (Fcancel_kbd_macro_events): New function.
4650 (syms_of_macros): defsubr it.
4652 * frame.c (store_frame_param): Don't call set_menu_bar_lines if X.
4654 1995-08-07 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4656 * keyboard.c (read_key_sequence): Undo previous change.
4657 Instead, put back the orig_uppercase event if key is not defined.
4658 When downcasing, back up one step in key-translation processing.
4660 * doprnt.c (doprnt): Error if %-width is too big.
4662 * editfns.c (Fformat): Limit minlen to avoid stack overflow.
4664 1995-08-07 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
4666 * insdel.c (signal_before_change, signal_after_change): Fix
4667 spelling of Vbefore_change_functions and Vafter_change_functions.
4669 1995-08-07 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4671 * doprnt.c (doprnt): Don't let size_bound be gigantic.
4674 1995-08-06 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4676 * buffer.c (get_truename_buffer): New function.
4677 * filelock.c (lock_file): Use get_truename_buffer.
4679 * emacs.c (main) [USG5]: Call setpgrp without testing INTERRUPT_INPUT.
4681 * xdisp.c (redisplay): Compute mini_frame the same way
4682 echo_area_display does.
4684 * keyboard.c (kbd_buffer_store_event):
4685 Don't insert two buffer_switch_event's in a row.
4687 * xfns.c (x_set_menu_bar_lines) [USE_X_TOOLKIT]: When turning
4688 menu bar on, make sure next redisplay creates it.
4690 * eval.c (run_hook_with_args): Move the GCPRO2; add UNGCPRO.
4692 * process.c (read_process_output, exec_sentinel): Call
4693 record_asynch_buffer_change after any eval. Don't call
4695 (wait_reading_process_input): Don't call prepare_menu_bars.
4697 1995-08-05 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4699 * search.c (Freplace_match): New arg SUBEXP.
4701 * eval.c (run_hook_with_args): Add gcpros.
4702 * print.c (print_string): Use insert_from_string for output to buffer.
4703 * minibuf.c (Fdisplay_completion_list): gcpro elt.
4705 * insdel.c (signal_before_change, signal_after_change): Major rewrite.
4706 (before_change_function_restore, after_change_function_restore)
4707 (before_change_functions_restore, after_change_functions_restore):
4709 * eval.c (run_hook_list_with_args): New function.
4710 * buffer.c (Qbefore_change_functions, Qafter_change_functions):
4712 (syms_of_buffer): Initialize them.
4713 * buffer.h (Qbefore_change_functions, Qafter_change_functions):
4716 * frame.c (Fset_mouse_position, Fset_mouse_pixel_position): Doc fixes.
4717 [not MULTI_FRAME] (Fframe_visible_p): New function.
4718 [not MULTI_FRAME] (syms_of_frame): defsubr it.
4720 * xfns.c (Ffocus_frame, Funfocus_frame): Make them no-ops.
4722 1995-08-04 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4724 * xterm.c (x_delete_display) [AIX]: Don't call XRmDestroyDatabase.
4726 * msdos.c (IT_write_glyphs): Call ScreenSetCursor.
4728 * lread.c (saved_doc_string*): New variables.
4729 (load_force_doc_strings): New variable.
4730 (syms_of_lread): Set up Lisp var load-force-doc-strings.
4731 (read_list): Handle load_force_doc_strings.
4732 Use the saved_doc_string, if it's right; otherwise, reread from file.
4733 (read1): Save last doc string in saved_doc_string.
4735 1995-08-03 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4737 * frame.c (set_menu_bar_lines, set_menu_bar_lines_1): New functions.
4738 (store_frame_parameter): Call set_menu_bar_lines.
4739 [!MULTI_FRAME] (Fmodify_frame_parameters): Call set_menu_bar_lines.
4741 * frame.c: Move various Q... vars to top of file, unconditional.
4742 (Vterminal_frame): Just one definition, at top of file, unconditional.
4743 (syms_of_frame_1): New function.
4744 (syms_of_frame. both definitions): Call syms_of_frame_1.
4746 1995-08-02 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4748 * keyboard.c (read_key_sequence): Don't downshift an event
4749 if that fails to make it bound.
4750 (follow_key): Don't alter contents of NEXT until the end.
4752 * xmenu.c [USE_X_TOOLKIT] (xmenu_show): Compute root-based
4753 coordinates. Make a dummy event to pass them to lw_popup_menu.
4755 * lread.c (Funintern): Fix deleting the last symbol in a chain.
4757 1995-08-01 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4759 * xdisp.c (redisplay): When displaying a terminal frame,
4760 if it isn't the same one as last time, clear it and redraw.
4761 Don't redisplay mini_frame as well, if it is a termcap frame.
4763 * frame.c (do_switch_frame): Do nothing special when switching
4764 between terminal frames.
4766 1995-07-31 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
4768 * s/usg5-4.h, s/sol2-5.h (GETTIMEOFDAY_ONE_ARGUMENT): Deleted;
4769 configure handles this now.
4771 1995-07-31 Simon Marshall <simon@duality.gnu.ai.mit.edu>
4773 * eval.c (run_hook_with_args): Renamed from Frun_hook_with_args.
4774 Take extra arg CONDITION, and return appropriately based on hook
4775 function value if CONDITION is until_success or until_failure.
4776 (Frun_hooks, Frun_hook_with_args,
4777 Frun_hook_with_args_until_success,
4778 Frun_hook_with_args_until_failure): New functions, use it.
4779 (syms_of_eval): defsubr them.
4781 * lisp.h (Frun_hook_with_args,
4782 Frun_hook_with_args_until_success,
4783 Frun_hook_with_args_until_failure): Declare them.
4785 1995-07-31 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4787 * xterm.c (XTread_socket): For UnmapNotify, use x_top_window_to_frame.
4789 * keyboard.c (kbd_buffer_get_event, swallow_events): Fix prev change.
4791 1995-07-30 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4793 * xmenu.c (single_submenu):
4794 Only ignore 1st char of pane name if that is an @.
4796 * frame.c (Fmake_terminal_frame): Copy face_alist from selected frame.
4798 * s/linux.h (HAVE_XRMSETDATABASE): Define if not defined.
4800 1995-07-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4802 * s/isc3-0.h (HAVE_SELECT): Defined.
4804 * s/isc4-1.h (HAVE_SOCKETS, NEED_NET_ERRNO_H): Defined.
4805 (HAVE_TERMIOS): Defined.
4806 (HAVE_TERMIO): Add undef.
4808 * s/isc4-0.h (sigblock, SIG_BLOCK): Don't define them if POSIX_SIGNALS.
4810 * process.c: Maybe include net/errno.h.
4812 * alloc.c (cons_cells_consed, floats_consed, vector_cells_consed)
4813 (symbols_consed, string_chars_consed, misc_objects_consed)
4814 (intervals_consed): New vars.
4815 (make_float, Fcons, make_interval, allocate_vectorlike, Fmake_symbol)
4816 (allocate_misc, make_uninit_string): Increment them.
4817 (Fmemory_use_counts): New function.
4818 (syms_of_alloc): defsubr it.
4820 1995-07-28 Göran Uddeborg <uddeborg@carmen.se>
4822 * s/isc4-1.h: ISC 4.1 has termios.
4824 1995-07-27 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4826 * config.in (GETTIMEOFDAY_ONE_ARGUMENT): Add #undef.
4828 1995-07-27 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
4830 * eval.c (syms_of_eval): Add missing defsubr.
4832 * buffer.c: (struct sortstrlist): New type.
4833 (overlay_heads, overlay_tails): Change to struct sortstrlist.
4834 (overlay_heads_len, overlay_tails_len): Deleted; now part of struct.
4835 (record_overlay_string): New function.
4836 (overlay_strings): Simplify. Use record_overlay_string.
4837 Check for window match in overlays_after loop, not just in
4839 Handle zero-sized overlays better.
4841 1995-07-27 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4843 * keymap.c (describe_buffer_bindings): Print bindings from
4844 Vfunction_key_map and from Vkey_translation_map.
4845 (describe_translation): New function.
4846 (describe_command): Handle vector like string.
4847 (describe_map_tree): New arg TRANSL. Callers changed.
4849 * keymap.c (Vkey_translation_map): Defined.
4850 (syms_of_keymap): Set up Lisp var.
4851 * keyboard.c (Vkey_translation_map): Just declare, don't define.
4852 (syms_of_keyboard): Don't set up Lisp var.
4854 1995-07-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4856 * Makefile.in (prefix-args): Pass ALL_LDFLAGS.
4858 * xdisp.c (syms_of_xdisp): Doc fix.
4860 * keyboard.c (kbd_buffer_get_event): Update input_pending after
4861 discarding one event from the queue, if we process the event here.
4862 (swallow_events): Likewise.
4864 1995-07-25 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4866 * m/iris4d.h (LIBS_MACHINE): Delete -lsun.
4867 * s/irix3-3.h (LIBS_SYSTEM): Defined.
4869 * frame.h (struct frame): Rename `display' member to `output_data'.
4870 Use new data type name for output_data.x.
4871 * xterm.h (struct x_output): Renamed from struct x_display.
4872 * xterm.c, xfns.c, xmenu.c, dispnew.c, frame.c, xfaces.c: Do renamings:
4873 frame->display => frame->output, struct x_display -> struct x_output.
4875 1995-07-25 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
4877 * lisp.h (Frun_hook_with_args): Declare this function.
4878 * eval.c (Frun_hook_with_args): New C function, formerly in subr.el.
4879 * insdel.c (signal_before_change): Use Frun_hook_with_args.
4880 (signal_after_change): Likewise.
4882 1995-07-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4884 * xterm.c (next_noop_dpyinfo): New variable.
4885 (XTread_socket): Use that to cycle through all displays for XNoOp.
4887 1995-07-24 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4889 * undo.c (Fprimitive_undo): Don't end inner loop
4890 just because a previous-modtime doesn't match any more.
4892 1995-07-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4894 * process.c (Fstart_process):
4895 Don't expand the file name before trying openp.
4897 1995-07-23 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4899 * xterm.h (struct x_display): New fields saved_button_event, id.
4900 * termhooks.h (enum event_kind): Added menu_bar_activate_event.
4901 * xterm.c (XTread_socket) [USE_X_TOOLKIT]: For ButtonPress in menu bar,
4902 save the event--don't pass to Xt yet. Make a menu_bar_activate_event.
4903 (temp_index, temp_buffer): Now static.
4904 * keyboard.c (kbd_buffer_get_event) [USE_X_TOOLKIT]:
4905 Handle menu_bar_activate_event by calling x_activate_menubar.
4906 * xmenu.c: Include buffer.h.
4907 (x_activate_menubar): New function.
4908 (set_frame_menubar): New arg deep_p. Callers changed.
4909 Run various hooks here when deep_p is true.
4910 (frame_vector): Variable deleted.
4911 (syms_of_xmenu): Don't staticpro it.
4912 (frame_vector_add_frame): Function deleted.
4913 (menubar_id_to_frame): New function.
4914 (menubar_selection_callback): Use menubar_id_to_frame.
4915 (next_menubar_widget_id): New variable.
4916 (set_frame_menubar): Use next_menubar_widget_id.
4917 (free_frame_menubar): Get id from f->display.x->id.
4919 * xdisp.c (update_menu_bar): Pass new arg to set_frame_menubar.
4920 * xfns.c (x_menubar_window_to_frame): New function.
4922 * window.c (Fprevious_window, Fnext_window): When minibuf = nil,
4923 accept only the minibuffer window that is currently active.
4925 1995-07-21 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4927 * lread.c (read_list): When a file loaded from site-init.el uses #$,
4928 turn it into a relative file name starting with ../lisp.
4930 * dispnew.c (update_frame): Check that the echo area is in the
4931 frame being displayed.
4933 * keyboard.c (command_loop_1): Clear echo area after 2 sec
4934 only if the minibuffer is in the same place as the echo area.
4936 * window.h (echo_area_window): Declared.
4938 * xdisp.c (echo_area_display): Use selected frame's minibuf window
4939 but don't set the minibuf_window (don't call choose_minibuffer_frame).
4940 (message2_nolog, message): Likewise.
4941 (echo_area_window): New variable.
4942 (echo_area_display): Set echo_area_window.
4943 (redisplay_window): Distinguish minibuf_window and echo_area_window.
4945 * fileio.c (do_auto_save_unwind): Set auto_saving to 0.
4946 (Fdo_auto_save): Don't clear auto_saving here. Set it to 1
4947 only when we make the unwind-protect.
4949 * xdisp.c (redisplay): Skip shortcuts if buffer's clip_changed is set.
4950 (redisplay_window): If buffer's clip_changed is set, update mode line.
4952 * frame.c (do_switch_frame): Don't call choose_minibuffer_frame.
4953 (choose_minibuf_frame): Choose frame regardless of minibuffer level.
4954 * minibuf.c (read_minibuf): Call choose_minibuffer_frame.
4955 First save the previous minibuf_window.
4956 (read_minibuf_unwind): Restore old minibuf_window.
4958 1995-07-20 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4960 * s/aix4.h (AIX4): New definition.
4961 * m/ibmrs6000.h (LD_SWITCH_MACHINE) [AIX4]: New alternate definition.
4963 * xmenu.c (set_frame_menubar): If the Lisp-level menu bar menus
4964 are unchanged, don't recompute the widgets.
4966 * xmenu.c (syms_of_xmenu): Set up Qdebug_on_next_call.
4967 (set_frame_menubar): Bind it to nil.
4969 * fileio.c (Ffile_modes) [DOS_NT]: Use check_executable.
4970 (check_executable): DOS_NT code moved here from Ffile_modes.
4971 (check_writable): New code for MSDOS.
4973 * editfns.c (Fformat): Doc fix.
4975 1995-07-20 Karl Heuer <kwzh@gnu.ai.mit.edu>
4977 * fns.c (Fsafe_length): Return a conservative upper bound.
4979 1995-07-20 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4981 * editfns.c (Fsubst_char_in_region):
4982 Bind buffer-file-name to nil if NOUNDO is true.
4984 * insdel.c (prepare_to_modify_buffer): Don't lock the file
4985 if current_buffer->filename is nil.
4987 * msdos.c (init_environment): Move alloca call out of function arg.
4989 * puresize.h [!MULTI_FRAME] (BASE_PURESIZE): Increased to 325000.
4991 1995-07-19 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4993 * textprop.c (Fget_char_property): If OBJECT is non-current buffer,
4994 use it properly for overlays_at.
4996 1995-07-18 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4998 * alloc.c (init_alloc_once): Set gc_cons_threshold from Lisp obj size.
5000 * editfns.c (Fmessage): Doc fix.
5001 (Fformat): Increment total for size of control string.
5003 * window.c (Fwindow_start): Doc fix.
5005 * xfaces.c (unload_color): Don't free colors if immutable colormap.
5007 * eval.c (Ffuncall, Fapply): Doc fix.
5009 * callint.c (Fcall_interactively): Doc fix.
5011 * fileio.c (Fexpand_file_name): Initial ~ means name is absolute.
5013 * config.in: Renamed from config.h.in.
5014 * paths.in: Renamed from paths.h.in.
5015 * Makefile.in: Renamed from Makefile.in.in.
5016 (paths.h): Depend on paths.in.
5017 (config.h): Depend on config.in.
5018 (distclean): Delete Makefile.c, not Makefile.in.
5019 (SOURCES): Corresponding changes.
5021 * callproc.c (init_callproc): Set Vdoc_directory based on
5022 Vinstallation_directory when that's non-nil, regardless of whether
5023 we had to set Vexec_directory.
5025 * unexsunos4.c (unexec): If not SUNOS4_SHARED_LIBRARIES
5026 or if apparently not dynamically linked, just clear rel and erel.
5028 * s/sunos4shr.h (SUNOS4_SHARED_LIBRARIES): Defined.
5030 1995-07-18 Mikael Djurfeldt <mdj@kidjo.nada.kth.se>
5032 * xdisp.c (decode_mode_spec): New arg spec_width.
5033 Use pint2str for %l and %c. New code to output ??.
5034 (display_mode_element): New var minendcol.
5035 Pass new arg to decode_mode_spec.
5036 (pint2str): New function.
5038 1995-07-17 Karl Heuer <kwzh@kropotkin.gnu.ai.mit.edu>
5040 * bytecode.c (Fbyte_code): Fix variable names in previous change.
5042 1995-07-17 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5044 * xfns.c [USE_MOTIF]: Don't include X11/Xaw/Paned.h, X11/Xaw/Label.h.
5046 1995-07-16 Richard Stallman <rms@gnu.ai.mit.edu>
5048 * keyboard.c (kbd_buffer_get_event): Discard a selection_clear_event
5049 before processing it.
5051 * bytecode.c (Fbyte_code): For Beqlsign, if both args are ints,
5054 * xterm.c [HAVE_X11XTR6]: Include locale.h
5055 (x_term_init) [HAVE_X11XTR6]: Set LC_NUMERIC and LC_TIME back to C.
5057 * data.c (Fnumber_to_string): Make `buffer' long enough.
5059 1995-07-15 Richard Stallman <rms@gnu.ai.mit.edu>
5061 * xselect.c (x_clear_frame_selections): Delete duplicate code.
5063 * alloc.c (Flist): Rewritten.
5065 1995-07-13 Richard Stallman <rms@gnu.ai.mit.edu>
5067 * dispnew.c (Fsit_for): Don't call prepare_menu_bars here.
5069 * emacs.c (main): Add to usage message.
5071 * s/netbsd.h (AMPERSAND_FULL_NAME): Defined.
5073 1995-07-12 Richard Stallman <rms@gnu.ai.mit.edu>
5075 * s/sco4.h (SCO_R4): Defined.
5077 1995-07-10 Richard Stallman <rms@gnu.ai.mit.edu>
5079 * floatfns.c (Fexpt): Use EMACS_INT for integer calculation.
5082 1995-07-09 Richard Stallman <rms@gnu.ai.mit.edu>
5084 * buffer.c (last_overlay_modification_hooks): New variable.
5085 (last_overlay_modification_hooks_used): Likewise.
5086 (syms_of_buffer): Init last_overlay_modification_hooks.
5087 (add_overlay_mod_hooklist): New function.
5088 (call_overlay_mod_hooks): Call add_overlay_mod_hooklist.
5089 (report_overlay_modification): When AFTER is non-nil,
5090 call the functions recorded in last_overlay_modification_hooks.
5092 * s/aix4-1.h (_setjmp, _longjmp): Add #undef's.
5094 * alloc.c (allocating_for_lisp): New variable.
5095 (init_intervals, make_interval, init_symbol, Fmake_symbol)
5096 (init_float, make_float, init_cons, Fcons)
5097 (allocate_vectorlike, init_marker, allocate_misc)
5098 (init_strings, make_uninit_string): Set allocate_misc temporarily.
5100 * Makefile.in.in (TAGS): Use etags from build dir, but make TAGS
5102 (${lispsource}TAGS): Renamed from ../lisp/TAGS. Deps changed too.
5103 (tags): Corresponding changes.
5104 (lisptagsfiles): Delete the term/*.el files.
5106 * fileio.c (Fwrite_region): If fsync fails with EINTR, don't
5107 report a Lisp error.
5109 1995-07-08 Richard Stallman <rms@gnu.ai.mit.edu>
5111 * process.c (keyboard_bit_set): Fix one-off in loop end.
5113 1995-07-07 Richard Stallman <rms@gnu.ai.mit.edu>
5115 * keymap.c (current_minor_maps): Catch errors in Findirect_function.
5116 (current_minor_maps_error): New function.
5118 1995-07-06 Richard Stallman <rms@gnu.ai.mit.edu>
5120 * frame.h (struct frame): New field `mouse_moved'.
5121 * keyboard.c (mouse_moved): Variable deleted.
5122 (kbd_buffer_get_event, readable_events):
5123 Check mouse_moved in all frames.
5124 Check do_mouse_tracking for non-nil ness.
5125 (Ftrack_mouse): Set do_mouse_tracking to t.
5126 * xterm.c (note_mouse_movement): Set mouse_moved in the x_display_info.
5127 (XTmouse_position, x_scroll_bar_note_movement): Likewise.
5128 (x_scroll_bar_report_motion): Likewise.
5130 * xterm.c (x_draw_box, x_display_box_cursor, x_display_bar_cursor):
5131 New args x, y. Don't use curs_x or curs_y here. Callers changed.
5133 * ntinevt.c (win32_mouse_position, mouse_moved_to):
5134 Access mouse_moved in selected_frame.
5135 * msdos.c (mouse_get_pos, mouse_check_moved, XMenuActivate):
5136 Access mouse_moved in selected_frame.
5138 * lread.c (Fread): Rename arg READCHARFUN to STREAM.
5140 * xfns.c (Fx_list_fonts): Don't free thisinfo if it is 0.
5142 * sysdep.c (sys_close): Handle Sunos 4.1 bug in close errno value.
5144 1995-07-05 Richard Stallman <rms@gnu.ai.mit.edu>
5146 * Makefile.in.in (lispsource): Renamed from lispdir.
5148 * sysdep.c (init_system_name): Add cast in init for fqdn.
5150 1995-07-03 Michael Shields <shields@tembel.org>
5152 * m/intel386.h [linux]: Include values.h and #undef
5153 certain macros, to avoid conflict later.
5155 1995-07-06 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
5157 * s/irix6-0.h [!__GNUC__] (LD_SWITCH_SYSTEM): Define this.
5159 * s/usg5-4-2.h (LIB_MOTIF, VFORK_RETURN_TYPE): Define these.
5161 * xterm.c (x_initialize) [USE_X_TOOLKIT]: Set fallback resources.
5163 * window.c (Fset_window_hscroll): Set clip_changed in the buffer.
5164 (temp_output_buffer_show): Likewise.
5166 * lisp.h (get_keymap_1): Declared.
5168 * editfns.c (Fwiden): Set clip_changed in current buffer.
5169 (Fnarrow_to_region, save_restriction_restore): Likewise.
5171 * buffer.c (overlays_in): Don't count empty overlays at END.
5172 (Foverlays_in): Likewise.
5174 1995-07-02 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5176 * keyboard.c (read_char): Temporarily clear Vquit_flag
5177 while checking Vspecial_event_map.
5179 * xdisp.c (redisplay_window): Fix typos in clip_changed change.
5181 * buffer.h (struct buffer): New field clip_changed.
5183 * xdisp.c (clip_changed): Variable deleted.
5184 (prepare_menu_bars): Don't look at clip_changed.
5185 (redisplay): Don't set clip_changed. Do set b's clip_changed.
5186 (redisplay_window): Check clip_changed in current_buffer.
5187 (mark_window_display_accurate): Clear clip_changed
5188 in the window's buffer.
5190 1995-07-01 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5192 * keyboard.c (Vspecial_event_map): New variable.
5193 (syms_of_keyboard): Define Lisp var; init the map.
5194 (read_char): Look up each event in Vspecial_event_map; if bound,
5195 execute the binding here and read another event.
5196 (keys_of_keyboard): Make bindings for iconify-frame,
5197 make-frame-visible and delete-frame.
5199 * fns.c (Fsafe_length): New function.
5200 (syms_of_fns): defsubr it.
5201 * lisp.h (Fsafe_length): Declared.
5202 * xfaces.c (compute_char_face): Use Fsafe_length.
5204 * s/aix4-1.h (sigsetmask): Add #undef.
5206 * s/riscos5.h: New file.
5208 * xfns.c (x_set_icon_type, x_set_icon_name): Don't ever remap the
5209 frame window; changing the icon doesn't make it disappear.
5211 * process.c (Fstart_process): Expand PROGRAM.
5212 Error if it is a directory.
5214 * s/sunos4shr.h (LIBXMU): New definitions (two alternative ones).
5216 * s/sunos4-1-3.h: Don't use sunos4shr.h; go back to 19.28 definition.
5218 1995-06-30 Geoff Voelker (voelker@cs.washington.edu)
5220 * nt.c (PASSWD_FIELD_SIZE): Defined.
5221 (the_passwd_name, the_passwd_passwd, the_passwd_gecos,
5222 the_passwd_dir, the_passwd_shell, getpwuid): Use PASSWD_FIELD_SIZE.
5223 (get_emacs_configuration): Check if processor macros are defined.
5225 * ntheap.c: Include config.h.
5226 (syspage_mask, real_data_region_end): Defined.
5227 (allocate_heap) [WINDOWS95]: Reverse conditional, end search
5229 (sbrk): Commit and uncommit memory in machine dependent
5232 * s/windows95.h (CANNOT_DUMP): Undefined.
5233 * makefile.nt (EMACS) [win95]: Removed.
5235 * makefile.nt (TLASTLIB): Defined.
5236 (TEMACS): Use TLASTLIB.
5237 * unexnt.c (get_section_info): Set the end of the data region
5238 to be just before the start of the shared library data.
5239 (read_in_bss): Read directly into memory.
5240 (map_in_heap): Read directly into memory if unable to map.
5242 1995-06-30 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5244 * s/hpux9.h (LIBX11_SYSTEM): Add undef.
5246 * m/intel386.h [SOLARIS] (LIBS_MACHINE): Move this out of the
5247 SOLARIS2_4 conditional.
5249 * xdisp.c (redisplay_window): Update individual window's mode line
5250 if %c calls for an update.
5251 (redisplay): Set update_mode_line for selected window only,
5252 if it needs this because of %c.
5254 1995-06-29 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5256 * s/aix3-2-5.h (C_OPTIMIZE_SWITCH, C_DEBUG_SWITCH): Use these
5257 names instead of C_SWITCH_OPTIMIZE, C_SWITCH_DEBUG.
5259 * s/aix4.h: Include aix3-2.h, not aix3-2-5.h.
5261 * callproc.c (child_setup): Don't get confused if in == err.
5263 * xterm.c (XTread_socket): Turn off meta, super, hyper and alt bits
5264 in the arg for XLookupKey.
5266 1995-06-28 Morten Welinder <terra+@cs.cmu.edu>
5268 * unexmips.c [MACH]: Include a.out.h.
5269 [MACH] (STYP_INIT, _RDATA, STYP_RDATA, _SDATA, STYP_SDATA): Defined.
5270 [MACH] (_SBSS, STYP_SBSS, HDRR, pHDRR): New definitions.
5271 (unexec): Add MACH conditionals.
5273 * m/pmax.h [MACH]: Use built-in alloca, set START_FILES.
5275 * s/mach-bsd4-3.h: New file.
5277 1995-06-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5279 * term.c (term_init): Alternative error messages for TERMCAP/TERMINFO.
5281 * m/alpha.h (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_OPEN)
5282 (PTY_TTY_NAME_SPRINTF): New definitions.
5284 * dispnew.c (update_frame): Pretend cursor is in echo area
5285 rather than put it in a minuffer hidden by the echo area.
5287 1995-06-27 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5289 * s/hpux9.h (LIBXMU): New definition.
5291 * s/hpux9-x11r4.h, s/hpux9shxr4.h: New files.
5293 * xmenu.c (single_submenu): Handle commands appearing directly
5296 1995-06-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5298 * xterm.c (x_display_bar_cursor, x_display_box_cursor):
5299 Don't alter curs_x or curs_y here.
5300 (x_display_cursor): Copy them from the frame cursor here.
5301 (x_update_cursor): New function.
5302 (frame_highlight, frame_unhighlight): Use x_update_cursor.
5304 * xdisp.c (echo_area_display): Don't set FRAME_CURSOR_... here.
5305 (redisplay): In the "point hasn't moved" shortcut,
5306 make sure that the cursor is in the right window already.
5308 * msdos.c (IT_cursor_to, IT_clear_end_of_line, IT_write_glyphs):
5309 (IT_set_face): Call internal_flush if short of room.
5311 1995-06-25 Morten Welinder <terra+@cs.cmu.edu>
5313 * emacs.c (init_cmdargs): Make Vinvocation_directory
5314 absolute if it isn't already.
5316 1995-06-25 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5318 * frame.c (Fdelete_frame): It's ok to have no minibuffer left on
5319 a kboard if there are no frames on it either.
5321 * buffer.c (overlays_in): New function.
5322 (Foverlays_in): New function.
5323 (syms_of_buffer): defsubr it.
5325 * xfns.c (Fx_open_connection, x_display_info_for_name):
5326 Error if window-system is not x.
5328 * process.c (Fopen_network_stream): Sleep 1 sec before connect retry.
5330 * frame.c (next_frame, prev_frame): Consider only frames on same kbd.
5331 (Fdelete_frame): If next_frame finds nothing, try an alternative.
5333 * buffer.c (overlay_strings): Fix calls to xrealloc.
5335 1995-06-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5337 * s/aix4-1.h (LIB_MOTIF): Defined.
5339 * emacs.c (main): Fix --help message.
5341 * window.c (Fsplit_window): Nicer error if split size is too small.
5343 * Makefile.in.in (LIBXMU): New macro.
5344 (LIBXT): Use LIBXMU.
5346 1995-06-23 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5348 * fileio.c (directory_file_name): Don't get confused by // at end
5349 on Unix-like systems.
5351 1995-06-22 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5353 * xmenu.c (menu_item_enabled_p_1): Special handling for quit.
5354 (set_frame_menubar): Inhibit quitting.
5356 1995-06-21 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5358 * buffer.c (syms_of_buffer): Doc fix.
5360 * Makefile.in.in (SOME_MACHINE_OBJECTS): Add dosfns.o,
5361 intervals.o, textprop.o.
5363 See ChangeLog.5 for earlier changes.
5365 Copyright (C) 1995, 1996 Free Software Foundation, Inc.
5366 Copying and distribution of this file, with or without modification,
5367 are permitted provided the copyright notice and this notice are preserved.
5369 ;;; arch-tag: 66a98e1c-2268-45e8-8a57-286b9c85a4e9