declare smobs in alloc.c
[bpt/emacs.git] / src / ChangeLog.5
CommitLineData
615d0182
DL
11995-06-21 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2
3 * Version 19.29 released.
4
5 * xfns.c (Fx_display_grayscale_p): Return t or nil.
6 Return t for color displays.
7
77100b2a 8 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Increase to 68000.
615d0182
DL
9
10 * xdisp.c (decode_mode_spec) [!MULTI_FRAME]: Handle %F properly.
11
121995-06-20 Richard Stallman <rms@mole.gnu.ai.mit.edu>
13
14 * keyboard.c (read_key_sequence): Don't use Vprefix_help_command
15 for the first character in a key seq.
16
17 * ntinevt.c (map_virt_key): Mark some additional chars as valid ASCII.
18
19 * ntterm.c (ctrl_c_handler): Ignore CTRL_BREAK_EVENT signals.
20
211995-06-19 Richard Stallman <rms@mole.gnu.ai.mit.edu>
22
23 * sysdep.c (rmdir): Fix up Aug 19 1993 change that wasn't done right.
24
25 * ntproc.c (win32_wait): Massage retval into what is expected in Unix.
26
27 * process.c (sigchld_handler): Change XSETFASTINT to XSETINT.
28
29 * keyboard.c (Freset_this_command_lengths): New function.
30 (before_command_key_count, before_command_echo_length)
31 (before_command_restore_flag): New variables.
32 (add_command_key): If requested, reset the lengths.
33 (command_loop_1): Record current lengths before reading cmd.
34 (read_char): Update the recorded length before echoing.
35
36 * xfns.c (Fx_create_frame): Fix last arg to x_get_arg for Qdisplay.
37
38 * s/linux.h (LIB_GCC): Fix previous change.
39 If we redefine it later, #undef it first.
40
411995-06-18 Richard Stallman <rms@mole.gnu.ai.mit.edu>
42
43 * keyboard.c (quit_throw_to_read_char): Turn off the error check
44 testing poll_suppress_count.
45
46 * s/linux.h (LIB_GCC): Define here, overriding Makefile.in.in,
47 so as to use C_SWITCH_X_MACHINE.
48
491995-06-17 Richard Stallman <rms@mole.gnu.ai.mit.edu>
50
51 * m/alpha.h (SYSTEM_MALLOC): Definition deleted.
52
53 * keymap.c (Vdefine_key_rebound_commands): New variable.
54 (syms_of_keymap): Set up Lisp var.
55 (Fdefine_key): Put new definition onto Vdefine_key_rebound_commands.
56
57 * xmenu.c (menu_item_equiv_key): Do reconsider a command that had
77100b2a 58 no equivalent before, if it is in Vdefine_key_rebound_commands.
615d0182
DL
59
60 * data.c (Flocal_variable_if_set_p): New function.
61 (syms_of_data): Call defsubr.
62
63 * xdisp.c (display_text_line): Fill in charstart for end of buffer.
64
651995-06-16 Richard Stallman <rms@mole.gnu.ai.mit.edu>
66
67 * puresize.h [MULTI_FRAME] (BASE_PURESIZE): Increase to 315000.
68
69 * frame.c (Fdelete_frame): Use do_switch_frame directly.
70 (do_switch_frame): No longer static.
71 * window.c (Fset_window_configuration): Use do_switch_frame directly.
72 * keyboard.c (quit_throw_to_read_char): Use do_switch_frame directly.
77100b2a 73 * lisp.h (do_switch_frame): Declare.
615d0182
DL
74
751995-06-16 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
76
77 * frame.c [MULTI_FRAME] (Fignore_event): New function.
78 [MULTI_FRAME] (keys_of_frame): Bind iconify-frame and
79 make-frame-visible to it.
80
811995-06-16 Richard Stallman <rms@mole.gnu.ai.mit.edu>
82
83 * .gdbinit: Use long, not EMACS_INT.
84 Do `set main' to make gdb_valbits etc. available.
85
86 * frame.h (struct frame): New field icon_name.
87 * xterm.h (struct x_display): icon_name deleted.
88 * xfns.c (x_report_frame_params, x_set_icon_type, x_set_icon_name)
89 (x_set_name, x_icon, Fx_create_frame): Use moved icon_name field.
90 * alloc.c (mark_object): Mark icon_name field.
91
921995-06-15 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
93
94 * keyboard.h (struct kboard): Add Voverriding_terminal_local_map.
95 * keyboard.c (init_kboard): Initialize it.
96 (syms_of_keyboard): Defvar it.
97 (read_key_sequence, menu_bar_items):
98 Check Voverriding_terminal_local_map before Voverriding_local_map.
99 * doc.c (Fsubstitute_command_keys): Likewise.
100 * keymap.c (Fkey_binding, describe_buffer_bindings): Likewise.
101
102 * xdisp.c (Qoverriding_terminal_local_map): New variable.
103 (syms_of_xdisp): staticpro it.
104 (update_menu_bar): If we bind overriding-local-map, also bind
105 overriding-terminal-local-map.
106
107 * frame.c (Fhandle_switch_frame): Preserve prefix arg.
108 * keyboard.c (command_loop_1): In special handling for commands
109 that create a prefix arg, don't handle commands that merely
110 preserve one that was previously created.
111
112 * .gdbinit ($valmask): Use EMACS_INT, not int.
113
114 * lisp.h (enum pvec_type): Don't use trailing comma.
115
1161995-06-15 Richard Stallman <rms@mole.gnu.ai.mit.edu>
117
118 * m/alpha.h (malloc, realloc): If not _MALLOC_INTERNAL,
119 always use void *.
120
1211995-06-15 Geoff Voelker <voelker@cs.washington.edu>
122
123 * callproc.c (call-process-region) [DOS_NT]: Use IS_DIRECTORY_SEP.
124 (call-process-region) [WINDOWSNT]: Use proper temp file template.
125
126 * ntproc.c (win32_spawnve): Accept program names without executable
127 suffixes.
128
129 * makefile.nt (TRES) [MSVCNT11]: Use emacs.res, and don't compile it.
130
1311995-06-15 Richard Stallman <rms@mole.gnu.ai.mit.edu>
132
133 * m/alpha.h (LD_SWITCH_MACHINE): Don't define it.
134 (malloc, realloc): If non-ANSI C, declare value as char *.
135
1361995-06-14 Richard Stallman <rms@mole.gnu.ai.mit.edu>
137
138 * sysdep.c (emacs_set_tty): Swap TCSETAF and TCSETAW.
139 Rename arg waitp to flushp.
140
1411995-06-14 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
142
143 * callint.c (Fprefix_numeric_value): Fix type check.
144
145 * keyboard.c (command_loop_1): Clear prefix arg (undo Feb 1 change).
146
1471995-06-14 Richard Stallman <rms@mole.gnu.ai.mit.edu>
148
149 * data.c (Flocal_variable_p): Fix backwards logical operator.
150
1511995-06-14 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
152
153 * m/intel386.h: If NOT_C_CODE, don't include alloca.h.
154 [!__GNUC__] (C_SWITCH_MACHINE): Disable this; it seems to confuse cpp.
155
1561995-06-14 Richard Stallman <rms@mole.gnu.ai.mit.edu>
157
158 * frame.c (Fdelete_frame): If the minibuf window was selected,
159 make that remain so.
160
161 * process.c (status_notify): Undo May 18 change.
162 Set update_tick at the beginning not at end.
163
164 * buffer.c (Fprevious_overlay_change): Check for overlays that
165 end at POS.
166
1671995-06-13 Richard Stallman <rms@mole.gnu.ai.mit.edu>
168
169 * xfns.c (syms_of_xfns): Initialize Vx_no_window_manager. Doc fix.
170
1711995-06-13 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
172
173 * m/ibmrs6000.h (LIBS_MACHINE): Use -lpthreads, not -lpthread.
174 * config.h.in (HAVE_LIBPTHREADS): Add #undef.
175
1761995-06-12 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
177
178 * mem-limits.h [_LIBC] (start_of_data): Define to &__data_start
087b38a0 179 for GNU libc.
615d0182
DL
180
1811995-06-11 Richard Stallman <rms@gnu.ai.mit.edu>
182
183 * xmenu.c (frame_vector_add_frame): Don't forget to store
184 the longer vector.
185
186 * xterm.h (struct x_display): New field asked_for_visible.
187 * xterm.c (x_make_frame_visible): Test and set asked_for_visible.
188
189 * widget.c (EmacsFrameSetCharSize): Manually alter the height
190 and width of the outer widget (and the width of the column widget)
191 carefully using deltas.
192 Set update_hints_inhibit nonzero while updating.
193 Then call update_wm_hints explicitly.
194 (update_wm_hints): Use 0 for min_rows, min_cols.
195 Do nothing if update_hints_inhibit is nonzero.
196
197 * xterm.c: Include widget.h.
198 (x_wm_set_size_hint) [USE_X_TOOLKIT]:
199 Get the size from the outer widget.
200 Copy the base and minimum sizes from the old hint.
201
202 * xfns.c [USE_X_TOOLKIT] (x_window): If using Motif,
203 add some extra to sizes, for consistent behavior.
204
2051995-06-10 Richard Stallman <rms@gnu.ai.mit.edu>
206
207 * dispnew.c (Fframe_or_buffer_changed_p): Calculate vector size right.
208 Add hysteresis when making it larger. Fill it up reliably
209 and check at the end for overflowing it.
210 (syms_of_display): Make frame_and_buffer_state initially with 20 elts.
211
212 * keyboard.c (read_char_minibuf_menu_prompt):
213 If the char to type doesn't match the prompt string,
214 show the char explicitly.
215
2161995-06-10 Geoff Voelker <voelker@cs.washington.edu>
217
39c87140 218 * ntterm.c, ntproc.c, nt.c: Include config.h before stdio.h.
615d0182
DL
219
2201995-06-09 Geoff Voelker <voelker@cs.washington.edu>
221
222 * makefile.nt (TEMACS): Depend upon $(BLD).
223 (temacs): Remove $(BLD) dependency.
224
2251995-06-09 Richard Stallman <rms@gnu.ai.mit.edu>
226
227 * xterm.c (x_get_keysym_name): New function.
228 * keyboard.c (modify_event_symbol): Mask out high bits here,
229 and only for certain purposes. table_size now unsigned.
087b38a0 230 (modify_event_symbol) [HAVE_X_WINDOWS]: Use x_get_keysym_name.
615d0182
DL
231 (make_lispy_event): Don't mask high bits here.
232 Supply -1 as table_size for system-specific keys.
233
234 * xdisp.c (update_menu_bar): Use set_buffer_internal_1 to switch bufs.
235 Run the hooks in the proper buffer.
236 Normally bind overriding-local-map to nil.
237 (Qoverriding_local_map): New variable.
238 (syms_of_xdisp): staticpro it.
239
2401995-06-09 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
241
242 * keyboard.h (struct kboard): New member system_key_syms.
243 * alloc.c (mark_kboards): Mark it.
244 * keyboard.c (system_key_syms): Deleted; now part of struct kboard.
245 (make_lispy_event): Use the struct member.
246 (init_kboard): Initialize it.
247 (syms_of_keyboard): Delete initialization and staticpro.
248
249 * Makefile.in.in (SOURCES): Makefile isn't source; Makefile.in.in is.
250
2511995-06-08 Richard Stallman <rms@gnu.ai.mit.edu>
252
253 * keyboard.c (Fevent_convert_list): Renamed from
254 convert_event_type_list.
255 (syms_of_keyboard): defsubr it.
256 * keymap.c (Flookup_key, Fdefine_key): Use Fevent_convert_list.
257
258 * xmenu.c (xmenu_show): Do call lw_destroy_all_widgets.
259 (xdialog_show): Likewise.
260 (popup_get_selection): Don't call it here.
261
262 * search.c (Freplace_match): Fix check for valid reg in string replace.
263 Do the right thing with backslash.
264
265 * keyboard.c (Vhelp_event_list): New var.
266 (syms_of_keyboard): Set up Lisp var.
267 (help_char_p): New function.
268 (read_char, echo_char, read_key_sequence): Use help_char_p.
269
270 * keyboard.h (Vlucid_menu_bar_dirty_flag): Declare this variable.
271 (Qrecompute_lucid_menubar, Qactivate_menubar_hook): Likewise.
272
273 * keyboard.c (read_key_sequence): Don't run activate-menubar-hook
274 or call recompute-lucid-menubar.
275
276 * xdisp.c (update_menu_bar): Run activate-menubar-hook
277 and call recompute-lucid-menubar.
278
2791995-06-08 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
280
281 * commands.h (last_command): Declaration deleted.
282 * keyboard.h (struct kboard): New member Vlast_command.
283 * keyboard.c (last_command): Var deleted; now part of struct kboard.
284 (init_kboard): Initialize it.
285 (syms_of_keyboard): Defvar it.
286 (command_loop_1): Make last_command be kboard-local.
287 * cmds.c (internal_self_insert): Likewise.
288 * minibuf.c (Fminibuffer_complete): Likewise.
289
290 * m/ibmrs6000.h (LIBS_MACHINE): Use -lpthread if it exists.
291
292 * m/alpha.h (LIBS_MACHINE): Define to -ldnet or -ldnet_stub.
293
294 * s/msdos.h (SYSTEM_PURESIZE_EXTRA) [!HAVE_X_WINDOWS]:
295 Increase to 62000.
296
297 * process.c [!subprocesses]: Include sysselect.h.
298
299 * xmenu.c (xmenu_show): If !HAVE_X_WINDOWS, don't reference X display.
300
3011995-06-07 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
302
303 * keyboard.h (struct kboard): member Vprefix_arg restored, replacing
304 prefix_factor, prefix_value, prefix_sign, and prefix_partial.
305 * callint.c (current_prefix_partial): Deleted.
306 (Vprefix_arg): Deleted; not part of struct kboard again.
307 (Funiversal_argument, Fnegative_argument, Fdigit_argument)
308 (clear_prefix_arg, finalize_prefix_arg, describe_prefix_arg): Deleted.
309 (syms_of_callint): Use DEFVAR_KBOARD for Vprefix_arg.
310 Remove defsubrs for deleted functions.
311 * lisp.h: Remove declarations for deleted vars and functions.
312 * alloc.c (mark_kboards): Mark Vprefix_arg instead of
313 prefix_factor and prefix_value.
314 * macros.c (Fexecute_kbd_macro): Vprefix_arg is now part of kboard.
315 * keyboard.c (cmd_error, command_loop_1, Fcommand_execute)
316 (Fexecute_extended_command, init_kboard, syms_of_keyboard):
317 Undo Feb 28 change; prefix arg handling is now in Lisp code again.
318
087b38a0 319 * buffer.c (syms_of_buffer): Doc fix.
615d0182 320
087b38a0 321 * buffer.c (Fbuffer_disable_undo): Make this function interactive.
615d0182
DL
322
3231995-06-07 Richard Stallman <rms@gnu.ai.mit.edu>
324
325 * data.c (Flocal_variable_p): New optional arg BUFFER.
326 Really check whether var is local in *that* buffer.
327
328 * xfns.c (x_real_positions): Uncatch and recatch X errors in the loop.
329
330 * filelock.c (unlock_file, lock_file): Call Fexpand_file_name.
331
3321995-06-05 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
333
334 * Makefile.in.in (TOOLKIT_DEFINES): Define.
335 (ALL_CFLAGS): Insert $(TOOLKIT_DEFINES) here.
336 * xfns.c (syms_of_xfns): Provide motif in Motif version.
337
087b38a0 338 * lisp.h (Fwaiting_for_user_input_p): Function declared.
615d0182
DL
339 (Fupcase_initials, Fupcase_initials_region): Likewise.
340 (Fplist_get, get_local_map, Fx_popup_menu, Fx_popup_dialog): Likewise.
341 (Fframe_first_window): Likewise.
342 * keyboard.c (cmd_error): Use NULL, not 0, as arg to
343 cmd_error_internal.
344 (menu_bar_items): Likewise, for arg of current_minor_maps.
345 (record_char): Add cast.
346 * indent.c (Fvertical_motion): Add cast.
347 * undo.c (record_insert): Change args to be ints, not Lisp_Objects.
348 * casefiddle.c (casify_region): Use explicit local vars for start
349 and end, so that the type will be correct.
350 (operate_on_word): Likewise for iarg in this function.
351 (upcase_initials, upcase_initials_region): Deleted; these were
352 redundant copies of Fupcase_initials and Fupcase_initials_region.
353 * abbrev.c (Fexpand_abbrev): Call to upcase_initials_region
354 changed to Fupcase_initials_region for consistency.
355 * search.c (Freplace_match): Likewise.
356 * alloc.c: Declare sbrk.
357
358 * xdisp.c: Include keyboard.h.
359
360 * s/irix5-0.h (POSIX_SIGNALS): Defined.
361
3621995-06-03 Richard Stallman <rms@gnu.ai.mit.edu>
363
364 * xterm.c (x_wm_set_icon_pixmap): Set IconPixmapHint in both cases.
365
366 * buffer.c (Fkill_buffer): When killing indirect buffer,
367 unchain that buffer's markers (only) from the common chain.
368 Don't rekill this buffer's indirect buffers that are dead.
369 Do nothing if this buffer is already dead.
370
3711995-06-03 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
372
373 * editfns.c (Fencode_time): Doc fix.
374
375 * fns.c (NULL): Define if not defined.
376
3771995-06-02 Richard Stallman <rms@gnu.ai.mit.edu>
378
379 * xfns.c (Fx_create_frame): Make sure icon_name is a string or nil.
380
381 * xterm.h (struct x_display): Rename icon_label to icon_name
382 and make it a Lisp_Object.
383
384 * xfns.c (Qicon_name): New variable.
385 (Fx_create_frame): Look for icon-name parm and set icon_label field.
386 (x_set_icon_type): Compute arg to x_text_icon
387 based on frame name and icon_name fields.
388 (x_set_icon_name): New function.
389 (x_icon): Call x_text_icon.
c4cc8b9a 390 (x_set_name): Look at icon_name field when setting the icon name.
615d0182
DL
391 (x_frame_parms): Add icon-name.
392 (syms_of_xfns): Set up Qicon_name.
393
394 * xterm.c (x_text_icon): Do call XSetIconName or XSetWMIconName.
395 Don't save ICON_NAME anywhere.
396
397 * sysdep.c (old_tty_valid): New variable.
398 (init_sys_modes): Set old_tty_valid if we set old_tty.
399 (reset_sys_modes): Restore tty settings only if old_tty_valid.
400
401 * term.c (cursor_to, clear_to_end_of_line_raw):
402 If chars_wasted is 0, do nothing.
403 (clear_end_of_line): Don't die if chars_wasted is 0.
404
405 * search.c (trivial_regexp_p): = is special after \.
406
407 * s/ptx.h (HAVE_SELECT, HAVE_TIMEVAL): Definitions deleted.
408
4091995-06-01 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
410
411 * xfns.c (x_destroy_bitmap): Block and unblock input.
412 (Fx_horizontal_line): Add one UNBLOCK_INPUT to fix a misbalance,
413 and move another one to include the call to XFreeGC, in case we
414 someday remove the "#if 0" conditions.
415 * widget.c (EmacsFrameDestroy): Block and unblock input.
416
4171995-05-31 Richard Stallman <rms@gnu.ai.mit.edu>
418
419 * xfns.c (x_display_info_for_name): Fix error message.
420 (Fx_open_connection): Fix error messages.
421
4221995-05-30 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
423
424 * s/sol2-4.h (LD_SWITCH_SYSTEM): Copied back from s/sol2-3.h;
425 added references to /usr/dt/lib.
426
427 * xfns.c (syms_of_xfns): Allow PATH_BITMAPS to be a
428 colon-separated list.
429
430 * editfns.c (syms_of_editfns): user-login-name renamed from user-name.
431 user-real-login-name renamed from user-real-name.
432 C names changed to Vuser_real_login_name, Vuser_login_name as well.
433 * nt.c: Change Vuser_real_name to Vuser_real_login_name.
434
4351995-05-30 Richard Stallman <rms@gnu.ai.mit.edu>
436
437 * xfns.c (x_top_window_to_frame): Don't match menu-bar widget.
438
439 * xdisp.c (update_menu_bar): Reverse test of save_match_data.
440
441 * xmenu.c (set_frame_menubar): Always call update_frame_menubar.
442
443 * xfns.c (x_window): Use applicationShellWidgetClass,
444 not topLevelShellWidgetClass. Call lw_set_main_areas after
445 creating the menubar widget.
446
4471995-05-29 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
448
449 * xdisp.c (update_menu_bar): Do update if region display has changed.
450
451 * frame.c (make_frame_without_minibuffer): New arg DISPLAY.
452 If there's no minibuffer frame to use, create one.
453 * xfns.c (Fx_create_frame): Pass new arg to
454 make_frame_without_minibuffer.
455
456 * fns.c (Frandom): Use EMACS_INT, not int.
457 Use NULL, not 0, as arg of `time'.
458
459 * frame.c: Declare x_get_focus_frame.
460 (Fmouse_position): Use NULL, not 0, as arg of pixel_to_glyph_coords.
461 * keyboard.c (make_lispy_event, make_lispy_movement): Likewise.
462
4631995-05-29 Richard Stallman <rms@gnu.ai.mit.edu>
464
465 * xterm.c (XTread_socket) [USE_X_TOOLKIT]: Do pass MotionNotify events
466 to the toolkit.
467
468 * keyboard.c (Fset_input_mode): When read_socket_hook, ignore
469 what the user specified, and set interrupt_input in the preferred
470 way for this system.
471
472 * xterm.c (x_term_init): Call init_sigio only if interrupt_input.
473
4741995-05-28 Morten Welinder <terra+@cs.cmu.edu>
475
476 * s/osf1.h (COFF): Define.
477 * m/alpha.h (LD_SWITCH_MACHINE) [!__GNUC__]: Don't define.
478 (r_alloc, r_re_alloc, r_alloc_free) [REL_ALLOC,
479 !_MALLOC_INTERNAL, !NOT_C_CODE]: Prototype.
480
4811995-05-28 Richard Stallman <rms@gnu.ai.mit.edu>
482
483 * xterm.c (x_set_offset): Distinguish CHANGE_GRAVITY < 0 case.
484 * xfns.c (x_set_frame_parameters): Pass -1 to x_set_offset.
485
486 * xfns.c (x_report_frame_params): Report top and left
487 in a way that represents negative offsets correctly.
488
489 * syntax.c (describe_syntax_1): Pass new arg to describe_vector.
490
491 * keymap.c (describe_vector): New arg entire_map.
492 Don't show bindings shadowed earlier on in the same map.
493 (Fdescribe_vector, describe_map): Pass new arg.
494
495 * xdisp.c (redisplay_window): Don't use try_window_id if
496 newline has a display table entry.
497
498 * xdisp.c (update_menu_bar):
499 Call set_frame_menubar with proper buffer current.
500
5011995-05-26 Geoff Voelker <voelker@cs.washington.edu>
502
503 * lread.c (init_lread) [CANNOT_DUMP]: Set Vload_path to EMACSLOADPATH.
504
5051995-05-26 Richard Stallman <rms@gnu.ai.mit.edu>
506
507 * xfns.c (x_window): Call initialize_frame_menubar
508 near the end, after UNBLOCK_INPUT.
509
510 * xmenu.c (popup_get_selection): Force deactivation if key pressed.
511 New arg `id'.
512 (xdialog_show, xmenu_show): Pass new arg to popup_get_selection.
513 * xterm.c (XTread_socket): Don't call popup_get_selection here.
514
5151995-05-26 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
516
517 * sysdep.c (VFORK_RETURN_TYPE): Use int if not already defined.
518 (vfork): Declare the return type.
519 * s/sol2-3.h (HAVE_VFORK): Moved here from s/sol2-4.h.
520 (VFORK_RETURN_TYPE): Defined.
521 * s/sol2-4.h (HAVE_VFORK): Moved to s/sol2-3.h.
522 (pid_t): Deleted; s/sol2-3.h now defines a symbol for this.
523
524 * xdisp.c (x_consider_frame_title): Use FRAME_KBOARD.
525
5261995-05-26 Geoff Voelker <voelker@cs.washington.edu>
527
528 * s/windows95.h: New file.
529
530 * ntheap.h (get_data_region_base): Undefined.
531 (get_reserved_heap_size): Use reserved_heap_size.
532 (reserved_heap_size): Declared.
533 * ntheap.c (reserved_heap_size,allocate_heap): Defined.
534 (sbrk): Use allocate_heap.
535
536 * ntterm.c (set_terminal_modes): Set cursor size appropriate for
537 Windows 95.
538 (write_glyphs): Don't memset attrs, which is a word array.
539
540 * nt.c (configuration_buffer): Increase size.
541 (get_emacs_configuration) [WINDOWS95]: Use appropriate string.
542 (prepare_standard_handles) [WINDOWS95]: Disable subprocesses.
543 (reset_standard_handles): Check error number on failure.
544
545 * makefile.nt (LIBS): Use BASE_LIBS and ADVAPI32.
546 (config.h,paths.h): Use $(CP) instead of cp.
547 (config.h): Use $(CONFIG_H).
548 (EMACS) [WINDOWS95]: Don't dump temacs.exe.
549 (clean): Cleanup MSVC files and config.h.
550 (cleandump): Separate commands onto multiple lines.
551 Cleanup comments.
552
5531995-05-26 Michael Ernst <mernst@research.microsoft.com>
554
555 * emacs.c (standard_args): -i, -itype, --icon-type take 0, not 1, args
556
5571995-05-25 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
558
559 * process.c (create_process, send_process): Add volatile qualifiers.
560 (wait_reading_process_input) [both versions]: Cast args of select.
561
562 * syntax.c (scan_lists): Make stringterm an unsigned char.
563
564 * dispnew.c (change_frame_size_1): Declare arg DELAY.
565
566 * insdel.c (adjust_point): Declare arg AMOUNT.
567
568 * lisp.h (do_symval_forwarding): Declare this function.
569 (frame_buffer_predicate, Foverlay_start, Foverlay_end): Ditto.
570 (Fprevious_single_property_change, Fend_of_line, Felt): Ditto.
571 (Fforward_line, Fforward_word, Fdelete_region, Fforward_char): Ditto.
572 (Fnarrow_to_region, Fwiden, Fmatch_beginning, Fmatch_end): Ditto.
573 (Fskip_chars_forward, Fskip_chars_backward): Ditto.
574 (Ffile_name_absolute_p, read_doc_string): Ditto.
575 (get_frame_param, store_frame_param, store_in_alist): Ditto.
576 (describe_map_tree): Declaration moved here from keymap.c.
577 * keymap.c (describe_map_tree): Move declaration to lisp.h.
578
579 * doc.c (Fsubstitute_command_keys): Cast arg of describe_map_tree.
580 * frame.c [MULTI_FRAME] (Fmouse_position): Cast arg of
581 pixel_to_glyph_coords.
582 * callint.c (Fcall_interactively): Cast arg of doprnt.
583 * editfns.c (format1): Likewise.
584 * xdisp.c (message): Likewise.
585 (scroll_bottom_vpos, fmodetrunc): Declarations deleted.
586
5871995-05-25 Richard Stallman <rms@gnu.ai.mit.edu>
588
589 * dispnew.c (Fframe_or_buffer_changed_p): Record frame names
590 as well as the frame objects.
591
592 * xterm.c (XTread_socket):
593 For MapNotify, call record_asynch_buffer_change.
594
595 * xdisp.c (prepare_menu_bars): Update frame titles before menu bars.
596
597 * xfns.c (Fx_get_resource): Major rewrite to make it clearer.
598 (validate_x_resource_name): Use build_string, not make_string.
599 (Fx_create_frame): Initially use Vinvocation_name as resource name.
600 Switch to frame name if frame name is explicit.
601 (x_display_info_for_name, Fx_open_connection): Add casts.
602 Initially use Vinvocation_name as resource name.
603 [USE_X_TOOLKIT] (x_window): Use Vx_resource_name for widget names.
604
605 * xmenu.c (xmenu_show, xdialog_show): Increment widget_id_tick
606 in the same way as in xfns.c. Use LWLIB_ID type where appropriate.
607 (set_frame_menubar, free_frame_menubar): Add casts to LWLIB_ID.
608
609 * xterm.c (XTflash): Use pointers as args to select.
610 (XTread_socket, x_set_offset, x_set_window_size)
611 (x_make_frame_invisible): Cast 2nd arg to x_wm_set_size_hint.
612 (XTclear_end_of_line): Don't specify return type.
613 (note_mouse_highlight): Declare args x and y.
614 (x_icon_type): New declaration.
615 (flashback): Declaration deleted.
616
6171995-05-24 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
618
619 * lisp.h (menu_bar_items): Declare this function.
620
6211995-05-24 Richard Stallman <rms@gnu.ai.mit.edu>
622
623 * xmenu.c (Fx_popup_dialog): Treat (menu-bar) like t, for POSITION.
624
625 * frame.c (Fdelete_frame): When updating Vdefault_minibuffer_frame,
626 insist on a frame on the proper keyboard.
627
628 * xterm.c (x_connection_closed): Unblock input, first thing.
629 Set Vdefault_minibuffer_frame to t
630 before deleting a frame that might have its own minibuffer.
631
6321995-05-23 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
633
634 * xfns.c (hack_wm_protocols): Use cast instead of suffix.
635
6361995-05-23 Richard Stallman <rms@gnu.ai.mit.edu>
637
638 * xfns.c (x_set_frame_parameters): Pass 1 as change_gravity
639 when calling x_set_offset.
640 (x_real_positions): Don't add border_width into win_x, win_y.
641 * xterm.c (x_set_offset): Add border_width when calling XMoveWindow.
642
643 * xterm.h (struct x_display): New field menubar_height.
644 * xmenu.c (set_frame_menubar): Set menubar_height field.
645 * xfns.c (x_window) [both versions]: Set menubar_height.
646
647 * xfns.c [USE_X_TOOLKIT] (x_window): Don't call XMoveWindow
648 or x_calc_absolute_position. Do use the border_width.
649
650 * xterm.c (x_calc_absolute_position): Use menubar_height field.
651 In toolkit case, use outermost Emacs widget and its parent.
652 [USE_X_TOOLKIT] (x_make_frame_visible): Do call x_set_offset.
653
654
655 * xfns.c [USE_X_TOOLKIT] (x_window): Pass position to toolkit
656 only if user-specified. But always use XMoveWindow to move the
657 window to that position.
658
659 * alloc.c (Fgarbage_collect): Clear consing_since_gc first thing.
660
661 * xdisp.c (redisplay_window): Use set_buffer_internal_1.
662
663 * buffer.c (set_buffer_internal_1): New subroutine.
664 (Fmove_overlay): Don't set windows_or_buffers_changed.
665
6661995-05-22 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
667
668 * xselect.c (x_get_window_property): Cast args of XGetWindowProperty.
669 * xfaces.c (unload_color): Cast args of XFreeColors.
670 * xfns.c (hack_wm_protocols): Cast args of XGetWindowProperty.
671 (x_set_border_pixel): Cast args of XSetWindowBorder.
672 * widget.c (create_frame_gcs): Cast args of XCreateGC.
673 (setup_frame_gcs): Cast args of XCreatePixmapFromBitmapData.
674
675 * data.c (long_to_cons): Don't assume 32-bit longs.
676 * fileio.c (Fvisited_file_modtime): Cast arg of long_to_cons.
677
678 * editfns.c (Fformat): Split double into two pointers, not two ints.
679
680 * s/hpux9.h: Delete HAVE_FMOD; configure handles that correctly now.
681
6821995-05-22 Richard Stallman <rms@waves>
683
684 * xdisp.c (display_text_line): Enter a char in charstarts
685 at the very end of the character loop.
686 Enter newline or ^M (if selective display) separately.
687
688 * lisp.h (gdb_lisp_params): New enum type.
689 * .gdbinit: Use gdb_lisp_params to get storage layout info.
690 Set and use $valmask and $nonvalbits.
691
692 * lread.c (oblookup): Delete argument hashp.
693
6941995-05-19 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
695
696 * floatfns.c (Flogb): frexp needs a pointer to int, not EMACS_INT.
697
6981995-05-19 Richard Stallman <rms@waves>
699
700 * dispnew.c (buffer_posn_from_coords): Don't let startp be before BEGV.
701
7021995-05-18 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
703
704 * indent.c (compute_motion): Handle overlay strings.
705 New arg DID_MOTION. All callers changed.
706 * dispnew.c, window.c: Add new argument to calls of compute_motion.
707 * xdisp.c: Add new argument to calls of compute_motion.
708 (zv_strings_seen): New variable.
709 (redisplay, try_window, try_window_id): Clear zv_strings_seen.
710 (display_text_line): Handle overlay strings.
711
7121995-05-18 Richard Stallman <rms@waves>
713
714 * s/sol2-4.h: Undo previous change.
715
716 * emacs.c (Fkill_emacs): Delete the auto-save-list file
717 after shut_down_emacs.
718
719 * process.c (status_notify): If Vprocess_alist changes within
720 the loop, do the whole loop again.
721
7221995-05-17 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
723
724 * emacs.c (Fdump_emacs): Don't take address of array.
725
726 * buffer.c (Fmake_indirect_buffer): Fix interactive spec.
727
728 * Makefile.in.in (SOURCES): Fix reference to ymakefile.
729
730 * keyboard.c (syms_of_keyboard): Always define track-mouse.
731 (do_mouse_tracking): Always declare this var.
732
f0131492 7331995-05-15 Marcus G. Daniels <marcus@ee.pdx.edu>
615d0182
DL
734
735 * s/linux.h: Test _STDIO_USES_IOSTREAM as well as _IO_STDIO_H.
736 [__ELF__] (START_FILES, LIB_STANDARD, LIB_GCC, UNEXEC): Define these.
737 [__ELF__] (UNEXEC_USE_MAP_PRIVATE): Define this.
738
739 * unexelf.c (unexec) [UNEXEC_USE_MAP_PRIVATE]: New logic for
740 systems that don't support MAP_SHARED with PROT_WRITE.
741
7421995-05-15 Richard Stallman <rms@churchy.gnu.ai.mit.edu>
743
744 * s/sol2-4.h (LD_SWITCH_SYSTEM): Define.
745
7461995-05-15 Simon Leinen <simon@lia.di.epfl.ch>
747
748 * indent.c (vmotion): handle the case where `minibuf_prompt' is nil.
749
7501995-05-12 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
751
752 * indent.c (vmotion): Simplify. Replace last three args with a single
753 struct window *. All callers changed.
754 * xdisp.c (minmax): New macro.
755 (redisplay, redisplay_window, try_window_id): Clip cursor hpos at both
756 low and high extremes, in anticipation of a change to compute_motion.
757
758 * xterm.c (Qvendor_specific_keysyms): New var.
759 (syms_of_xterm): Initialize and staticpro it.
760 (x_term_init): Initialize Vsystem_key_alist according to vendor.
761
762 * emacs.c (main) [NeXT]: Add missing braces.
763
7641995-05-11 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
765
766 * sysdep.c (init_system_name): Clean up signedness mismatch.
767 * unexelf.c (unexec): Fix type mismatch.
768 * print.c (float_to_string): Fix type mismatch and simplify.
769
770 * dispnew.c [!MULTI_FRAME] (Fredraw_frame): Delete extra docstring.
771 * frame.c [!MULTI_FRAME] (Fframe_height, Frame_width): Likewise.
772
7731995-05-09 enami tsugutomo <enami@sys.ptg.sony.co.jp>
774
775 * window.c [MULTI_FRAME] (init_window_once): Set Vterminal_frame
776 to selected_frame.
777 * frame.c [MULTI_FRAME] (make_terminal_frame): Don't set
778 Vterminal_frame.
779 (do_switch_frame): Set Vterminal_frame to selected_frame.
780
7811995-05-08 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
782
783 * Makefile.in.in (VMS_SUPPORT): Add missing `.elc'.
784 (SOME_MACHINE_LISP): New variable.
785 (${etc}DOC): Use it.
786
787 * buffer.c (syms_of_buffer): Doc fix.
788
789 * frame.c (frame-height, frame-width, set-screen-height,
790 set-screen-width, termal-frame) [!MULTI_FRAME]: Delete doc strings.
791
7921995-05-08 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
793
794 * keyboard.c (init_kboard): Initialize Vdefault_minibuffer_frame.
795 * keyboard.h (struct kboard): New member Vdefault_minibuffer_frame.
796 * frame.c: Vdefault_minibuffer_frame is now part of KBOARD instead
797 of a variable. All references changed.
798 (make_frame_without_minibuffer): New arg KB.
799 Require the new frame's minibuffer to be on the same display.
800 * xfns.c (Fx_create_frame): Pass kb to make_frame_without_minibuffer.
801
802 * xdisp.c (x_consider_frame_title): When setting multiple_frames,
803 ignore invisible frames and frames on other displays.
804
805 * keyboard.c [MULTI_KBOARD] (read_char): If the character was for
806 the wrong kboard, don't let it get processed twice.
807
8081995-05-08 Richard Stallman <rms@mole.gnu.ai.mit.edu>
809
810 * callproc.c (Fcall_process): Keep reading till buffer is nearly full.
811
812 * emacs.c (Fdump_emacs): Don't use & before my_edata.
813
b344d29d 8141995-05-08 Francesco Potortì (pot@cnuce.cnr.it)
615d0182
DL
815
816 * m/delta.h (C_SWITCH_MACHINE): Let configure decide if this is
817 a 68040 or 68030. Don't condition on __STDC__.
818
8191995-05-08 enami tsugutomo <enami@sys.ptg.sony.co.jp>
820
821 * frame.c (Fraise_frame, Flower_frame): Make arg FRAME optional.
822
823 * keyboard.c (Fread_key_sequence): Doc fix.
824
8251995-05-08 Richard Stallman <rms@mole.gnu.ai.mit.edu>
826
827 * window.c (Fdisplay_buffer): Initialize other, upper, lower.
828
8291995-05-07 Richard Stallman <rms@mole.gnu.ai.mit.edu>
830
831 * lisp.h (Fmatch_data, Fstore_match_data): Declared.
832
833 * xdisp.c (prepare_menu_bars): Save and restore the match data.
834 (update_menu_bar): New arg save_match_data.
835 Maybe save and restore match data here.
836
8371995-05-07 Geoff Voelker <voelker@cs.washington.edu>
838
839 * makefile.nt (region-cache.obj,vm-limit.obj): Dependencies defined.
840 (OBJ1): Don't compile xfaces.c.
841 (buffer.obj,indent.obj,search.obj): Add region-cache.h dependency.
842
8431995-05-07 Paul Eggert <eggert@twinsun.com>
844
845 * data.c (Fmod): Fix the final adjustment, when f2 < 0 and f1 == 0.
846
847 * lread.c (isfloat_string): Reject strings like "0.5+".
848
8491995-05-07 Richard Stallman <rms@mole.gnu.ai.mit.edu>
850
851 * process.c (wait_reading_process_input): Pass arg in new call to
087b38a0 852 set_waiting_for_input.
615d0182
DL
853
854 * xfns.c (Funfocus_frame): Check for live X frame.
855
856 * lread.c (init_lread): Don't warn about missing installation dirs
857 when using dirs derived from the executable.
858
8591995-05-06 Geoff Voelker <voelker@cs.washington.edu>
860
861 * makefile.nt (TRES): Defined.
862 (TLIB1,TLIB2): Created out of TLIB.
863 (TLIB): Split to reduce time to do library updates.
864 (DOC): Use DOC-X.
865 (strftime.obj): Compile with -Dstrftime=emacs_strftime.
866
8671995-05-06 Richard Stallman <rms@mole.gnu.ai.mit.edu>
868
869 * window.c (syms_of_window): Doc fix.
870 (temp_output_buffer_show): If we use Vtemp_buffer_show_function,
871 do nothing else.
872
873 * s/bsd386.h (GETPGRP_NO_ARG): New definition.
874 (BSD): Include sys/param.h instead of redefining BSD.
875 But do this only if emacs is defined.
876
877 * lisp.h (gc_cons_threshold): Change back to int.
878 * alloc.c (gc_cons_threshold): Change back to int.
879 (min): New macro.
880 (inhibit_garbage_collection): Don't exceed value an int can hold.
881
882 * xdisp.c (prepare_menu_bars): Clear size-change flag before running
883 size-change functions.
884 (scroll_step, debug_end_pos, line_number_display_limit): Now static.
885
8861995-05-05 Richard Stallman <rms@mole.gnu.ai.mit.edu>
887
888 * emacs.c (Fdump_emacs_data): Don't use & before my_edata.
889
890 * editfns.c (Fencode_time): Rename arg from min to minute.
891 (days_per_month): Move variable to top level.
892
893 * process.c (wait_reading_process_input): Don't call prepare_menu_bars.
894 Clear waiting_for_input around calling redisplay_preserve_echo_area.
895
896 * xfns.c [USE_X_TOOLKIT] (x_window): Always pass position in geometry.
897 Set XtNmappedWhenManaged to 0 for shell_widget.
898 (Fx_create_frame): Always call x_wm_set_size_hints.
899
900 * s/sol2-4.h (HAVE_VFORK): Add #undef.
901
902 * s/netbsd.h (GETPGRP_NO_ARG): Defined.
903
9041995-05-04 Richard Stallman <rms@mole.gnu.ai.mit.edu>
905
c4cc8b9a 906 * s/freebsd.h (GETPGRP_NO_ARG): Define.
615d0182
DL
907 (HAVE_GETPAGESIZE): Definition deleted.
908
909 * data.c (store_symval_forwarding): Error if value out of range
910 for an integer variable.
911 (Fstring_to_number): Avoid using make_number to return value.
912 Maybe use atol.
913
9141995-05-04 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
915
916 * buffer.c (Qbefore_string, Qafter_string): New vars.
917 (syms_of_buffer): Initialize and staticpro them.
918 (cmp_for_strings, overlay_strings): New functions.
919
9201995-05-04 Richard Stallman <rms@mole.gnu.ai.mit.edu>
921
922 * indent.c (string_display_width): Renamed from string_width.
923 (vmotion): Use new name.
924
925 * s/sco4.h [!__GNUC__] (LINKER): Defined.
926
927 * insdel.c (make_gap): Don't allow buffer size that won't fit in int.
928 Make this new error check also check exceeding VALBITS.
929 (insert_1): Delete old error test.
930 (min): New macro.
931
932 * Makefile.in.in (${etc}DOC): Put SOME_MACHINE_OBJECTS before obj.
933
934 * xfaces.c (region_face, next_face_id): Make static.
935
936 * xselect.c (Vselection_converter_alist, x_selection_timeout)
937 (Vx_sent_selection_hooks, Vx_lost_selection_hooks, Vselection_alist):
938 Make static.
939
940 * alloc.c (inhibit_garbage_collection):
941 Use XSETINT, and do arithmetic in type EMACS_INT.
942
943 * s/hpux9.h (HAVE_FMOD): Defined.
944
945 * sysdep.c (bcmp, bcopy): Fix backward BSTRING conditionals.
946
947 * emacs.c (Fkill_emacs): Delete the Vauto_save_list_file_name file.
948
9491995-05-04 Morten Welinder <terra+@cs.cmu.edu>
950
951 * data.c (arith_driver): Make accum and next EMACS_INTs.
952 (Fmod): i1 and i2 are EMACS_INT.
953
954 * editfns.c (Fformat): Allow 30 characters in the printed version
955 of integers and floats.
956
957 * print.c (print): Handle long EMACS_INT in sprintf.
958 * keyboard.c (Fexecute_extended_command):
959 Handle long EMACS_INT in sprintf.
960 * lread.c (read1): Handle long EMACS_INT in atol.
961 * doprnt.c (doprnt): Handle long EMACS_INT in sprintf.
962 * data.c (Fnumber_to_string, Fstring_to_number):
963 Handle long EMACS_INT in sprintf and atol.
964
965 * process.c (list_processes_1): Cast XFASTINT for passing to sprintf.
966
967 * m/alpha.h (bcopy, bzero, bcmp): Don't let string.h prototype these.
968
9691995-05-03 Morten Welinder <terra+@cs.cmu.edu>
970
971 * keyboard.c (parse_modifiers, apply_modifiers): Don't assume
972 32-bit EMACS_INT.
973 (parse_modifiers): modifiers is an int, not an EMACS_INT.
974 (read_key_sequence): Pass modifiers as int, not EMACS_INT.
975
976 * buffer.h (Fdelete_overlay): Was mistakenly called Fdelete_overlays.
977
978 * lisp.h (gc_cons_threshold): Make this an EMACS_INT.
979
980 * alloc.c (gc_cons_threshold): Make this an EMACS_INT.
981 (gc_sweep): Make already_free an EMACS_INT.
982
983 * search.c (search_buffer): Cast p_limit to EMACS_INT not int.
984
985 * s/osf1.h (GETPGRP_NO_ARG): Define.
986
9871995-05-03 Richard Stallman <rms@mole.gnu.ai.mit.edu>
988
989 * keyboard.c (reorder_modifiers): Use XINT.
990 Cast apply_modifiers arg to int.
991
992 * unexapollo.c: New file.
993
994 * m/apollo.h (CANNOT_DUMP, VIRT_ADDR_VARIES, LIBS_TERMCAP)
995 (NO_X_DESTROY_DATABASE): Macros deleted.
996 (BSTRING): #undef deleted.
997 (SYSTEM_TYPES): Redefinition deleted.
998 (UNEXEC): New definition.
999 (LD_SWITCH_SYSTEM): Define as empty.
1000 (C_SWITCH_MACHINE, LD_SWITCH_MACHINE): New definitions.
1001 (OLDXMENU_OPTIONS): New definition.
1002
1003 * fileio.c (directory_file_name): Add APOLLO conditional.
1004 (Fcopy_file, Fset_file_modes): Delete APOLLO conditionals.
1005
1006 * emacs.c: Delete all APOLLO conditionals.
1007
10081995-05-02 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
1009
1010 * intervals.c (get_local_map): Use Fget_char_property, so that
1011 overlay properties will be considered as well as text properties.
1012
10131995-05-02 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1014
1015 * insdel.c (prepare_to_modify_buffer): Use file_truename for locking.
1016
1017 * fileio.c (Finsert_file_contents): Use file_truename for unlocking.
1018
1019 * buffer.c (Fset_buffer_modified_p): Use the truename for locking.
1020
1021 * lread.c (read1): New arg FIRST_IN_LIST; all callers changed.
1022 Special handling for backquote and comma.
1023 (Qbackquote, Qcomma, Qcomma_at, Qcomma_dot): New variables.
1024 (syms_of_lread): Initialize and staticpro them.
1025 (Fread, Fread_from_string): Initialize new_backquote_flag.
1026
10271995-05-01 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
1028
1029 * xmenu.c (xmenu_show, menubar_selection_callback): Move declaration
1030 of entry to an outer block, to guarantee its value is preserved.
1031
1032 * keyboard.c (kbd_buffer_get_event): New arg USED_MOUSE_MENU.
1033 [USE_X_TOOLKIT]: Set *USED_MOUSE_MENU if returning menu-bar symbols.
1034 (read_char): Pass used_mouse_menu to kbd_buffer_get_event.
1035 This variable is now meaningful for toolkit menus as well as
1036 non-toolkit menus.
1037
1038 * dispnew.c (update_frame): Don't put cursor in echo area unless
1039 the echo area is on this frame.
1040 * xdisp.c (redisplay): Don't move the cursor if it's supposed to
1041 be in the echo area.
1042 (display_text_line): Likewise.
1043 (echo_area_display): Put cursor in echo area if appropriate.
1044
10451995-04-30 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1046
1047 * emacs.c (standard_args): Add #ifdef VMS for -map.
1048 (main): Delete duplicate code for -version.
1049 (standard_args): Add -help and -version.
1050
1051 * fileio.c (Fdo_auto_save): Record visited file name
1052 as well as auto-save file name in the auto-save-list-file-name file.
1053 Call Fexpand_file_name for auto-save-list-file-name.
1054
10551995-04-29 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1056
1057 * sysdep.c [HAVE_UNISTD_H]: Include unistd.h.
1058
1059 * emacs.c (standard_args): Add -L/--directory/-directory.
1060
1061 * s/sunos4shr.h (ORDINARY_LINK): Defined.
1062 (LINKER): Definition deleted.
1063
10641995-04-28 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
1065
1066 * xfns.c (x_non_menubar_window_to_frame): New function.
1067 * xterm.h: Declare x_non_menubar_window_to_frame.
1068 * xmenu.c (popup_get_selection): Use x_non_menubar_window_to_frame.
1069 Either queue or dispatch the event, but not both.
1070 (dialog_selection_callback): Clear popup_activated_flag.
1071
1072 * xmenu.c (Fx_popup_menu): If POSITION is just (menu-bar), use the
1073 current mouse position.
1074 (menubar_selection_callback): Use (menu-bar) instead of 'menu-bar.
1075 * keyboard.c (read_char, read_char_x_menu_prompt): Exclude
1076 menu-bar clicks when processing mouse clicks.
1077
1078 * xterm.c (x_term_init): Add stub to initialize Vsystem_key_alist.
1079
10801995-04-27 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
1081
1082 * process.c (create_process): Don't reference pty_name if !HAVE_PTYS.
1083
10841995-04-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1085
1086 * fileio.c (Ffile_regular_p): Use Qfile_regular_p.
1087 (syms_of_fileio): Set up Qfile_regular_p.
1088
1089 * emacs.c (standard_args): Move -iconic and --icon-type
1090 to the end of the initial args.
1091
10921995-04-25 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
1093
1094 * alloc.c (mark_kboards): Mark the kbd macro and Vsystem_key_alist.
1095
10961995-04-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1097
1098 * s/linux.h (REGEXP_IN_LIBC): Defined.
1099
1100 * callproc.c (Fcall_process): Use bigger buffer, and grow it
1101 as we get more and more data.
1102
11031995-04-24 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
1104
1105 * xterm.c (x_term_init): If the previous kboard was the dummy one,
1106 switch to the new one immediately.
1107
1108 * keyboard.h (struct kboard): New member Vsystem_key_alist.
1109 * keyboard.c (Vsystem_key_alist): Delete global variable.
1110 (init_kboard): Initialize Vsystem_key_alist member.
1111 (syms_of_keyboard): Change DEFVAR_LISP to DEFVAR_KBOARD.
1112 (make_lispy_event): Use the kboard's alist instead of the global.
1113
1114 * fns.c (Fplist_put): Don't signal an error if plist isn't a cons.
1115
1116 * xterm.c (x_focus_frame, x_focus_event_frame, x_highlight_frame):
1117 Delete these vars; now part of struct x_display_info.
1118 (x_new_focus_frame): New arg DPYINFO. Callers changed.
1119 Use the struct members instead of the globals.
1120 Call x_frame_rehighlight instead of XTframe_rehighlight, so we can
1121 pass on the dpyinfo pointer.
1122 (x_mouse_leave): New arg DPYINFO. Callers changed.
1123 (XTframe_rehighlight): New arg FRAME. Callers changed.
1124 Now does all the work in x_frame_rehighlight.
1125 (x_frame_rehighlight): New function, code from XTframe_rehighlight.
1126 (XTread_socket): Use the struct members instead of the globals.
1127 (x_unfocus_frame, x_iconify_frame, x_destroy_window): Likewise.
1128 (x_display_box_cursor, x_make_frame_invisible): Likewise.
1129 (x_term_init): Initialize the struct members.
1130 (x_initialize): Delete initialization of deleted globals.
1131 * xfns.c (x_get_focus_frame): New arg FRAME. Callers changed.
1132 (Funfocus_frame): Unfocus on selected_frame's display.
1133 * xterm.h (struct x_display_info): New members x_focus_frame,
1134 x_focus_event_frame, x_highlight_frame, replacing global vars.
1135 * frame.c (do_switch_frame): Don't try to refocus termcap frames.
1136
1137 * Makefile.in.in: Make dispnew.o and keyboard.o depend on xterm.h.
1138 Make intervals.o and term.o depend on keyboard.h.
1139
1140 * xfns.c (x_window): Fix type mismatch.
1141
1142 * xdisp.c (message_dolog): The message log doesn't need an undo list.
1143
1144 * term.c (term_init): MagicWrap implies AutoWrap.
1145
11461995-04-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1147
1148 * keyboard.c (safe_run_hooks_1, safe_run_hooks_error): New subroutines.
1149 (safe_run_hooks): Handle errors to clear the hook,
1150 instead of always clearing it temporarily.
1151
1152 * callproc.c (child_setup): Reword "can't exec" message.
1153 Add newline after message.
1154
1155 * process.c (create_process): Don't abort if can't reopen
1156 pty_name in the child. Exit the child instead.
1157
11581995-04-20 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
1159
1160 * abbrev.c (Fexpand_abbrev): Add some error checking.
1161
1162 * xmenu.c (Fx_popup_dialog): Don't pass menubarp arg to xdialog_show.
1163
11641995-04-19 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
1165
1166 * frame.h (struct frame): New member namebuf.
1167 * frame.c (make_frame): Initialize it.
1168 (Fdelete_frame): Free it.
1169 * xfns.c (x_window): Use (or reuse) frame's namebuf instead of a
1170 temp var. This avoids a storage leak.
1171
11721995-04-19 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1173
1174 * xmenu.c (xmenu_show, xdialog_show): Delete menubarp arg.
1175 (Fx_popup_menu): Don't compute menubarp.
1176
11771995-04-18 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1178
1179 * callproc.c (Fcall_process): Call Fexpand_file_name for error_file.
1180
1181 * keyboard.c (map_event_to_object): Declaration deleted.
1182
11831995-04-18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1184
1185 * eval.c (Ffetch_bytecode): Check the type of the object being
1186 read from the file.
1187
11881995-04-17 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1189
1190 * editfns.c (Fencode_time): Don't treat years < 100 as special.
1191
11921995-04-17 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
1193
1194 * lisp.h: Declare some functions.
1195 * buffer.c (adjust_overlays_for_insert): New function.
1196 (adjust_overlays_for_delete): New function.
1197 * insdel.c (insert_1): Adjust overlay center after inserting.
1198 (insert_from_string_1, insert_from_buffer_1): Likewise.
1199 (del_range_1): Adjust overlay center after deleting.
1200
12011995-04-17 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1202
1203 * editfns.c (Fencode_time): Rewrite by Naggum.
1204
12051995-04-15 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1206
1207 * xfns.c (x_report_frame_params): Report value of `display' parm.
1208
1209 * Makefile.in.in (really-lwlib, really-oldXMenu): Mark as .PHONY.
1210
12111995-04-14 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
1212
1213 * editfns.c (Fencode_time): Fix missing \n\'s.
1214
12151995-04-14 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1216
1217 * editfns.c (init_editfns): Add casts.
1218
1219 * doc.c (get_doc_string): Add cast.
1220
1221 * keyboard.c (kbd_buffer_get_event): Don't use prototype.
1222
1223 * xdisp.c (message_log_check_duplicate): Make p1 and p2
1224 unsigned char *.
1225
12261995-04-13 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1227
1228 * xterm.c (x_term_init): Call XtSetLanguageProc only if HAVE_X11XTR6.
1229
12301995-04-13 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
1231
1232 * editfns.c (Fbuffer_string): Doc clarification.
1233
1234 * alloc.c: Delete the #if that compares MARKBIT.
1235
1236 * window.c (Fdisplay_buffer): Search the proper frame when the
1237 current frame is minibuffer-only.
1238
1239 * fileio.c (Fexpand_file_name): Use IS_DIRECTORY_SEP instead of
1240 special code for WINDOWSNT.
1241
12421995-04-13 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1243
1244 * xfaces.c (compute_char_face): Don't use NULL.
1245
1246 * buffer.c (Foverlays_at, Fnext_overlay_change): Don't use NULL.
1247 (Fprevious_overlay_change): Don't use NULL.
1248
1249 * xfns.c (Fx_color_defined_p): Doc fix.
1250
1251 * xfaces.c [! HAVE_X_WINDOWS] (build_face): Deleted.
1252
12531995-04-12 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1254
1255 * callint.c (Fcall_interactively): Fix paren nesting.
1256
1257 * buffer.c (evaporate_overlays): Fix type error.
1258
12591995-04-13 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1260
1261 * xterm.c (XTmouse_position): Handle X errors in XTranslateCoordinates.
1262
1263 * lisp.h (MARKBIT): Do the shifting as unsigned int.
1264 Delete the #if that compares MARKBIT.
1265
12661995-04-12 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1267
1268 * xterm.c (XTread_socket): For ConfigureNotify,
1269 combine the USE_X_TOOLKIT and non-toolkit cases, which provides
1270 some things that were missing in the former.
1271
1272 * alloc.c (gc_sweep): If a misc has type Lisp_Misc_Free,
1273 keep it on the free list. Sum pseudovector sizes properly.
1274
1275 * dispnew.c (Fframe_or_buffer_changed_p): Ignore buffers whose names
1276 start with space.
1277
1278 * editfns.c (Fencode_time): Use XINT to examine `zone'.
1279
12801995-04-11 Geoff Voelker <voelker@cs.washington.edu>
1281
1282 * ntinevt.c (nt_kdb_patch_event): Created.
1283
1284 * callproc.c (child_setup) [WINDOWSNT]: Removed syntax errors.
1285
1286 * dired.c (Ffile_attributes) [WINDOWSNT]: Removed syntax errors.
1287
1288 * fileio.c (Fexpand_file_name) [DOS_NT]: Preserve drive letter case.
1289 Fix syntax errors.
1290 Check drive letter when expanding ~\.
1291
1292 * sysdep.c (sys_subshell) [WINDOWSNT]: Don't invoke restore_console.
1293
1294 * ntproc.c (win32_wait): Reap synchronous subprocesses, and place
1295 return code in synch_process_retcode.
1296
1297 * s/windowsnt.h (ctime): Defined to be nt_ctime.
1298 (NULL): Defined when missing from included system files.
1299 (EMACS_CONFIG_OPTIONS): Defined.
1300 (LISP_FLOAT_TYPE): Defined.
1301 (HAVE_TZNAME): Defined.
1302 (HAVE_TIMEVAL): Defined.
1303 (struct timeval): Defined.
1304 (struct timezone): Defined.
1305
1306 * nt.c (nt_ctime): Defined.
1307 (gettimeofday): Defined.
1308
1309 * ntinevt.c (do_mouse_event): Use XSETFASTINT.
1310 (SET_FRAME): Undefined.
c4cc8b9a 1311 (select): Renamed to sys_select to correspond to routine in sysdep.c.
615d0182
DL
1312 (sys_select): Support struct timeval.
1313 (key_event): Support German keyboard.
1314 Replace SET_FRAME with XSETFRAME.
1315 (nt_kbd_mods_to_emacs): Renamed to win32_kbd_mods_to_emacs.
1316 (win32_kbd_mods_to_emacs): Support AltGr on German keyboards.
1317 (win32_number_shift_map): Defined.
1318 (WIN32_KEY_SHIFTED): Defined.
1319 (win32_patch_key): Defined.
1320 (map_virt_key): Support VK_OEM_102 for German keyboards.
1321 (win32_mouse_position): Add arg insist.
1322 (do_mouse_event): Replace SET_FRAME with XSETFRAME.
1323 Use win32_kbd_mods_to_emacs.
1324
1325 * fileio.c (directory_file_name) [WINDOWSNT]: Handle UNC format.
1326
1327 * nt.c (nt_stat): Defined.
1328
1329 * s/windowsnt.h (struct nt_stat): Defined.
1330
1331 * ntinevt.h: Fixed function prototypes.
1332
1333 * makefile.nt (TEMACS): Add dependence on $(BLD).
1334
1335 * ntterm.c (Fset_message_beep): Defined.
1336 (ring_bell): Support audio cards.
1337
1338 * makefile.nt (DOC): Defined.
1339
1340 * s/windowsnt.h (HAVE_RANDOM): Defined.
1341 (random): Macro undefined.
1342 (srandom): Macro undefined.
1343 (HAVE_UTIME): Defined.
1344 (utime): Defined.
1345 (EMACS_CONFIGURATION): Defined.
1346
1347 * nt.c (random): Defined.
1348 (srandom): Defined.
1349
1350 * nt.c (readdir): Include "." and "..".
1351 (get_inode_and_device_vals): Handle directories.
1352
1353 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't strip slash from
1354 default dirs like "C:\\"
1355
1356 * makefile.nt (all): Use COMPAT_LIB in library list.
1357 Use DEL_TREE instead of delnode.
1358
1359 * ntheap.c (sbrk): Shrink heap by arbitrary amounts.
1360
1361 * m/intel386.h (NO_ARG_ARRAY) [WINDOWSNT]: Defined.
1362
1363 * s/windowsnt.h (_VARARGS_): Defined.
1364 (_CALLBACK_): Defined.
1365
13661995-04-11 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
1367
1368 * process.c (create_process): Set PROCESS's tty_name to Qnil when
087b38a0
JB
1369 !PTY_FLAG, so Fprocess_tty_name returns nil for pipes as its
1370 docstring says.
615d0182
DL
1371
13721995-04-11 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1373
1374 * keyboard.c (read_char): Rearrange code so that getcjmp is set
1375 only around sit_for and kbd_buffer_get_event, and
1376 and polling is stopped only around the kbd_buffer_get_event call.
1377 (Ftrack_mouse, tracking_off, read_char): Don't call prepare_menu_bars.
1378
1379 * dispnew.c (init_desired_glyphs): New function.
1380 * xdisp.c (redisplay): Call init_desired_glyphs for each frame.
1381 Call prepare_menu_bars.
1382 (prepare_menu_bars): Delete code at beginning that duplicates
1383 things done at the beginning of redisplay.
1384
1385 * alloc.c (inhibit_garbage_collection): New function.
1386
1387 * xterm.c (XTread_socket): Pass dpyinfo to popup_get_selection.
1388
1389 * xmenu.c (popup_get_selection): Queue up events that aren't
1390 for the menu, and process them afterward. New arg dpyinfo.
1391 (set_frame_menubar): Use inhibit_garbage_collection.
1392 [USE_X_TOOLKIT] (xmenu_show): Delete the queue code here.
1393 Pass dpyinfo to popup_get_selection.
1394 Don't call lw_destroy_all_widgets.
1395 [USE_X_TOOLKIT] (xdialog_show): Simplify using popup_get_selection.
1396
13971995-04-10 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1398
1399 * callint.c (Fcall_interactively): Fix handling of @
1400 when it tests whether the event has a window in it.
1401
1402 * s/sco4.h (NO_SOCKETS_IN_FILE_SYSTEM): Defined.
1403
1404 * eval.c (internal_condition_case): Abort if interrupt_input_blocked>0.
1405
1406 * xmenu.c (set_frame_menubar): Don't block input until after
1407 the menubar maps have been decoded.
1408
14091995-04-10 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
1410
1411 * keyboard.c (push_frame_kboard, pop_frame_kboard): Do nothing if
1412 !MULTI_KBOARD.
1413
1414 * keyboard.c (init_keyboard): Don't malloc a new structure;
1415 initial_kboard should already exist for that.
1416 * frame.c (make_terminal_frame): Put initial_kboard on the list of
1417 all kboard objects.
1418
14191995-04-10 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1420
1421 * xmenu.c (popup_get_selection): For ButtonRelease event,
1422 clear dpyinfo->grabbed.
1423
1424 * window.c (temp_output_buffer_show): Select the chosen window
1425 temporarily for running temp-buffer-show-hook.
1426 (syms_of_window): Fix typo.
1427
1428 * s/osf1.h: Don't include alloca.h, string.h here.
1429 (malloc. realloc, xmalloc, xrealloc): Declarations moved to m/alpha.h.
1430 * m/alpha.h: Include alloca.h, string.h here.
1431 (malloc. realloc, xmalloc, xrealloc): Declarations moved from s/osf1.h.
1432
1433 * xdisp.c (display_mode_line): Use push_frame_kboard, pop_frame_kboard.
1434
1435 * xfns.c (x_window): Copy the frame name to non-Lisp string.
1436
1437 * keyboard.c (any_kboard_state): Renamed from unlock_kboard.
1438 Define it unconditionally, but it's a no-op unless MULTI_KBOARD.
1439 (single_kboard_state): New function.
1440 (push_frame_kboard, pop_frame_kboard): New functions.
1441 (single_kboard): Renamed from kboard_locked.
1442
1443 * keyboard.h (single_kboard): Renamed from kboard_locked.
1444 All refs renamed.
1445 (struct kboard): Move flag fields to the end, and make them chars.
1446 Delete the `unused' field.
1447
1448 * callint.c (Fcall_interactively): Call single_kboard_state
1449 to switch to the single-kboard state.
1450 * minibuf.c (read_minibuf): Call single_kboard_state
1451 to switch to the single-kboard state.
1452
1453 * alloc.c, data.c, macros.c, print.c: Include keyboard.h.
1454
1455 * Makefile.in.in (alloc.o, data.o, macros.o, print.o):
1456 Depend on keyboard.h.
1457
1458 * xterm.h (x_display_info): Use `struct kboard', not KBOARD.
1459 * frame.h (struct frame): Use `struct kboard', not KBOARD.
1460
1461 * keyboard.h (KBOARD, etc): Moved from lisp.h.
1462 (struct kboard): Renamed from struct KBOARD.
1463 * lisp.h (KBOARD, etc): Moved to keyboard.h.
1464
14651995-04-09 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1466
1467 * keyboard.c (unlock_kboard): Do nothing with Vunread_command_events.
1468 (read_char): Clean up logic for reading from KBOARD queues.
1469
1470 * xfns.c (defined_color): Fix typo (duplicate +).
1471
1472 * keyboard.c (kbd_buffer_get_event): Set copy by assignment, not init.
1473
1474 * xterm.c (XTread_socket): Make deiconify event
1475 only if frame was iconified.
1476
1477 * xrdb.c (xmalloc, xrealloc): Declare them here.
1478
14791995-04-08 Erik Naggum <erik@naggum.no>
1480
1481 * editfns.c (Fencode_time): New function, to match `decode-time'.
1482
14831995-04-08 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1484
1485 * intervals.c (set_point): When skipping intangible text,
1486 stop where property value changes.
1487
1488 * indent.c (Fmove_to_column): Fix minor bug in prev change.
1489
1490 * lread.c (read_escape): Undo Nov 15 change.
1491
1492 * xdisp.c (display_mode_line): Test mode_line_inverse_video
1493 before highlighting partial-width mode line.
1494
1495 * xmenu.c (popup_activate_callback): Increment popup_activated_flag.
1496 (popup_deactivate_callback): Decrement it.
1497
1498 * s/linux.h (HAVE_SELECT, HAVE_TIMEVAL): Definitions deleted.
1499 config.h should handle them.
1500
1501 * xdisp.c (redisplay): Don't call update_frame for non-selected
1502 termcap frame.
1503
15041995-04-08 Noah Friedman <friedman@prep.ai.mit.edu>
1505
1506 * window.c (Fnext_window, Fprevious_window): If all_frames is a
1507 frame and window is not on that frame, return the first window on
1508 that frame.
1509
15101995-04-07 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1511
1512 * lread.c (init_lread): Add site-lisp under the installation dir
1513 to Vload_path if that exists.
1514
1515 * s/osf1.h (xmalloc, xrealloc): Declare them.
1516
1517 * frame.c (make_terminal_frame): Use Emacs, Emacs-2, ... as name.
1518
1519 * xdisp.c (decode_mode_spec): Add %F code.
1520 Order alternatives alphabetically.
1521
1522 * s/aix4.h: Use "..." in #include.
1523
15241995-04-07 Morten Welinder <terra+@cs.cmu.edu>
1525
1526 * s/osf1.h: Include alloca.h, string.h. Test NOT_C_CODE.
1527
1528 * m/alpha.h (SPECIAL_EMACS_INT): Defined.
1529
15301995-04-07 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
1531
1532 * keyboard.c (kbd_buffer_get_event): Check for frame buried in a cons.
1533 Delete menu_bar_event handling code.
1534 (make_lispy_event): Move it here, so it gets a switch-frame if needed.
1535
1536 * callint.c (Fcall_interactively): Fix previous change.
1537
15381995-04-07 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1539
1540 * doprnt.c (xmalloc, xrealloc): Declare them here.
1541
1542 * callint.c (Fcall_interactively): `+' is reserved for user changes.
1543
1544 * process.c (read_process_output_error_handler)
1545 (exec_sentinel_error_handler): Fsleep_for wants two args.
1546
1547 * xfns.c (validate_x_resource_name): Change invalid chars to `_'.
1548
1549 * doprnt.c (doprnt): Cast pointer to int by way of EMACS_INT.
1550
1551 * xmenu.c (menubar_selection_callback, dialog_selection_callback)
1552 (single_submenu): Cast pointer to int by way of EMACS_INT.
1553
1554 * floatfns.c (Flogb): Use EMACS_INT for `value'.
1555
1556 * editfns.c (Fformat): Cast int to pointer by way of EMACS_INT.
1557
1558 * search.c (search_buffer): Avoid casting trt to int.
1559 Use EMACS_INT for comparing pointers.
1560
1561 * buffer.h (Fdelete_overlays): Add declaration.
1562
1563 * keyboard.c (parse_modifiers): Use type EMACS_INT for `modifiers'.
1564
1565 * xterm.c (dumpglyphs): Cast FACE_DEFAULT to (XFontStruct *)
1566 for comparison with face->font.
1567
1568 * sysdep.c (bcopy): If NEED_BCOPY, do compile this.
1569
1570 * m/ncr386.h: New file.
1571
1572 * s/hpux9.h (LD_SWITCH_X_DEFAULT): New definition.
1573 (C_SWITCH_X_DEFAULT): New definition.
1574
1575 * doc.c (get_doc_string): In (STRING . INTEGER), if INTEGER
1576 is negative, negate it.
1577
1578 * eval.c (Fuser_variable_p): For (STRING . INTEGER), test sign.
1579
1580 * s/sol2.h (C_SWITCH_X_SYSTEM): Defined.
1581
1582 * s/usg5-4-2.h (LIBS_SYSTEM): New override definition.
1583
1584 * lisp.h (XMISCTYPE): New macro.
1585 (union Lisp_Misc): Delete the `type' field.
1586 Use XMISCTYPE instead of that.
1587
1588 * alloc.c (Fmake_marker, mark_object): Use XMISCTYPE.
10d1d0af 1589 (clear_marks, gc_sweep): Use u_marker union elt to extract misc type.
615d0182
DL
1590
1591 * lread.c (defvar_int, defvar_bool, defvar_lisp_nopro, defvar_kboard)
1592 (defvar_per_buffer): Use XMISCTYPE.
1593 * print.c (print): Use XMISCTYPE.
1594 * fns.c (internal_equal): Use XMISCTYPE.
1595 * buffer.c (Fmake_overlay): Use XMISCTYPE.
1596 * data.c (Ftype_of, do_symval_forwarding, store_symval_forwarding)
1597 (find_symbol_value, Fmake_variable_buffer_local, Fmake_local_variable):
1598 Use XMISCTYPE.
1599
1600 * xdisp.c (prepare_menu_bars): Do the frame titles last.
1601
16021995-04-06 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1603
1604 * xfaces.c (intern_face): Cast FACE_DEFAULT to (XFontStruct *)
1605 for comparison with face->font.
1606
1607 * puresize.h (CHECK_IMPURE): Remove & from before my_edata.
1608
1609 * editfns.c (Fformat_time_string): Use emacs_strftime. Doc fix.
1610
1611 * Makefile.in.in (strftime.o): Define strftime as emacs_strftime.
1612
1613 * xmenu.c (frame_vector): New static variable.
1614 (syms_of_xmenu): staticpro it.
1615 (frame_vector_add_frame): New function.
1616 (set_frame_menubar): Use frame_vector; use index as the widget id.
1617 (free_frame_menubar): Likewise. Remove the frame from frame_vector.
1618 (menubar_selection_callback): Use frame_vector to turn id into frame.
1619
1620 * emacs.c (main): Cast arg to `brk'.
1621
1622 * sysdep.c (init_sys_modes): Use TCOON only if defined.
1623
1624 * s/netbsd.h (NO_MATHERR): Defined.
1625 (LIBS_SYSTEM): Definition deleted.
1626
1627 * unexsunos4.c: Treat __NetBSD__ like __FreeBSD__.
1628
16291995-04-06 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
1630
1631 * fns.c (Fplist_put): Fix missing \n\.
1632
1633 * xfns.c (x_window_to_frame): Skip non-X frames before testing dpyinfo.
1634 [USE_X_TOOLKIT] (x_any_window_to_frame, x_top_window_to_frame): Ditto.
1635
16361995-04-06 Simon Marshall <simon@duality.gnu.ai.mit.edu>
1637
1638 * data.c (Fcar, Fcdr, Fsetcar, Fsetcdr): Arg name doc fixes.
1639
16401995-04-06 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1641
1642 * puresize.h (BASE_PURESIZE): Increment to 310000.
1643
1644 * indent.c (string_width): New function.
1645 (vmotion): Compute the width of minibuf_prompt
1646 if it isn't already known.
1647
1648 * buffer.c (Fkill_buffer): Call reset_buffer_local_variables
1649 and swap_out_buffer_local_variables.
1650 (swap_out_buffer_local_variables): New subroutine.
1651 (Fkill_all_local_variables): Use that subroutine.
1652
1653 * search.c (Flooking_at, Fposix_looking_at): Change arg name.
1654
16551995-04-05 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1656
1657 * frame.c (Fraise_frame, Flower_frame): Now interactive.
1658
16591995-04-04 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
1660
1661 * lisp.h: Declare Ffetch_bytecode.
1662 * eval.c (Ffetch_bytecode): New function.
1663 (funcall_lambda): Call it.
1664 (syms_of_eval): defsubr it.
1665
16661995-04-03 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
1667
1668 * xfns.c (x_window_to_frame): New arg DPYINFO. All callers changed.
1669 (x_any_window_to_frame, x_top_window_to_frame): Likewise.
1670
1671 * lisp.h (Vmessage_log_max): Declare this variable.
1672 (message_nolog): Declare this function.
1673 * emacs.c (main): Start with an empty message log.
1674 * xdisp.c (message_nolog): New function.
1675 * fns.c (Fy_or_n_p): Don't log prompt.
1676 (Fyes_or_no_p): Fix typo in doc string.
1677
16781995-04-01 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1679
1680 * lread.c (oblookup): Save bucket num in oblookup_last_bucket_number.
1681 (Funintern): New function.
1682 (syms_of_lread): defsubr it.
1683
16841995-03-31 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1685
1686 * dired.c (Fdirectory_files): Fix bug in IS_ANY_SEP usage
1687 introduced in Oct 30 change.
1688
16891995-03-31 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
1690
1691 * keyboard.c (command_loop_1): If we ignore force_start, then also
1692 ignore beg_unchanged and end_unchanged.
1693
16941995-03-31 Michael Ernst <mernst@research.microsoft.com>
1695
1696 * lread.c (isfloat_string): Permit trailing space.
1697
16981995-03-30 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
1699
1700 * keyboard.c (event_to_kboard): Ignore dead frames.
1701 (kbd_buffer_get_event): In batch mode, use current_kboard.
1702
1703 * xterm.c (x_delete_display): Extract kboard deletion, for modularity.
1704 * keyboard.c (wipe_kboard): Make this function static.
1705 (delete_kboard): New function, extracted from x_delete_display.
1706
1707 * lisp.h: Declare function delete_kboard.
1708
1709 * xterm.h (struct x_display_info): New member cut_buffers_initialized.
1710 * xterm.c (x_term_init): Initialize it.
1711 * xselect.c (Fx_store_cut_buffer_internal): Use the flag in the
1712 frame's x_display_info, not a global flag.
1713 (Fx_rotate_cut_buffers_internal): Likewise.
1714
1715 * emacs.c (sort_args): Skip strncmp if longname is a null pointer.
1716
17171995-03-30 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1718
1719 * data.c (Fmod): Fix the final adjustment, when i2 < 0 and i1 == 0.
1720
17211995-03-29 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1722
1723 * frame.c [MULTI_FRAME] (Factive_minibuffer_window): New function.
1724 [MULTI_FRAME] (syms_of_frame): Defsubr it.
1725
17261995-03-28 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
1727
1728 * process.c (Fsignal_process): SIGCODE is a symbol, not a string.
1729
17301995-03-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1731
1732 * fns.c (Fconcat): Undo previous change.
1733
17341995-03-27 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1735
1736 * fns.c (Fget, Fput): Fetch and store symbol's plist directly.
1737
17381995-03-27 Boris Goldowsky <boris@cs.rochester.edu>
1739
1740 * fns.c (Fplist_put, Fplist_get): New fns.
1741 (Fget): Use Fplist_get to do the work.
1742 (Fput): Use Fplist_put to do the work.
1743
1744 * textprop.c (Vdefault_text_properties): name changed from
1745 Vdefault_properties.
1746 * intervals.h: As above.
1747 * intervals.c (textget): As above.
1748
1749 * intervals.c (textget_direct): Fn deleted.
1750 (textget, verify_interval_modification): Use Fplist_get instead.
1751 * intervals.h: Remove declaration.
1752
17531995-03-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1754
1755 * xterm.c (XTmouse_position): New arg `insist'.
1756 * ntinevt.c (win32_mouse_position): New arg `insist'.
1757 * msdos.c (mouse_get_pos): New arg `insist'.
1758
1759 * xmenu.c (Fx_popup_menu): Pass 1 for `insist' arg.
1760 (Fx_popup_dialog): Likewise.
1761 * frame.c (Fmouse_position--both definitions): Pass 0 for `insist'.
1762 (Fmouse_pixel_position): Pass 0 for `insist'.
1763 Add HAVE_MOUSE conditional.
1764 * keyboard.c (kbd_buffer_get_event): Pass 0 for `insist' arg.
1765
1766 * m/intel386.h (C_SWITCH_SYSTEM): Don't #undef or define it.
087b38a0 1767 [SOLARIS2, SOLARIS2_4, !__GNUC__] (C_SWITCH_MACHINE): Define instead.
615d0182 1768
177c0ea7 17691995-03-26 Germano Caronni <caronni@tik.ethz.ch>
615d0182
DL
1770
1771 * ralloc.c (r_re_alloc): Correct realloc behavior--allow shrinking
087b38a0 1772 of blocks while reallocating, if shrinking by more than one page.
615d0182
DL
1773 (relocate_blocs, resize_blocs): Added failsafe to protect future
1774 calling of these routines when in frozen state.
1775 (r_alloc_thaw): Added call to r_alloc_init.
1776 (relocate_blocks, resize_bloc, r_alloc_sbrk, r_alloc_thaw): Extended
1777 functionality to let ralloc package work in frozen state, allowing
1778 for the existence of unused blocks.
1779
17801995-03-25 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1781
1782 * process.c (Fsignal_process): Allow signal names as well as numbers.
1783
17841995-03-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1785
1786 * editfns.c (init_editfns): Use NAME envvar to init user-full-name.
1787
17881995-03-24 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
1789
1790 * textprop.c (Fnext_property_change): Fix previous change.
1791
21818739 17921995-03-23 Kevin Rodgers <kevinr@ihs.com> (tiny change)
615d0182
DL
1793
1794 * print.c (temp_output_buffer_setup): (Re)set the default
1795 directory of the temp buffer to that of the current buffer.
1796
17971995-03-23 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
1798
1799 * buffer.c (syms_of_buffer): Doc fix.
1800
1801 * xdisp.c (redisplay): Make sure pause is set before used.
1802 Delete unused vars.
1803 (redisplay_window): Make sure update_mode_line is set before used.
1804 If startp might not have been set, use w->start directly.
1805 (try_window_id): In the easy case, find cursor pos before returning.
1806 (try_window_id): Stop scan at bottom of window, not one line later.
1807 Don't fail on account of continuation line below window.
1808 (redisplay_window): Stop scan at bottom of window.
1809 Fix reversed condition.
1810
1811 * Makefile.in.in (FRAME_SUPPORT, MSDOS_SUPPORT): Don't list face
1812 and mouse related files here.
1813 (FACE_SUPPORT, MOUSE_SUPPORT): New lists.
1814 (FACE_SUPPORT): Add facemenu.elc.
1815 (WINNT_SUPPORT): New list.
1816 (lisp): Add format.elc, FACE_SUPPORT, MOUSE_SUPPORT, WINNT_SUPPORT.
1817
18181995-03-23 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1819
1820 * m/sparc.h: Don't include alloca.h if NOT_C_CODE.
1821
1822 * m/mips-siemens.h (UNEXEC): Override the definition.
087b38a0 1823 (LIBS_DEBUG, ORDINARY_LINK): Add #undefs.
615d0182
DL
1824
18251995-03-22 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
1826
1827 * dispnew.c (direct_output_forward_char): Don't use direct output
1828 at an overlay boundary.
1829 * buffer.c (overlay_touches_p): New function.
1830 * lisp.h: Declare overlay_touches_p.
1831
1832 * fns.c (concat): Treat integers as characters, not strings.
1833 This makes `concat' more like `insert'.
1834
1835 * window.c (syms_of_window): Fix missing \n\.
1836 * keymap.c (Fwhere_is_internal): Fix missing \n\.
1837 * fileio.c (syms_of_fileio): Fix missing \n\.
1838
18391995-03-21 Marco Walther <Marco.Walther@mch.sni.de.>
1840
1841 * unexelfsni.c: New file.
1842
1843 * m/mips-siemens.h: Total rewrite.
1844
18451995-03-20 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1846
1847 * xdisp.c (redisplay_window): Skip the only-point-has-changed
1848 optimization if updating the window's mode line.
1849
18501995-03-19 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1851
1852 * xdisp.c (invisible_p, invisible_ellipsis_p): Handle list
1853 as invisible property value.
1854
18551995-03-18 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1856
1857 * xdisp.c (display_menu_bar): Just one space between menu items.
1858
18591995-03-18 Ted Lemon <mellon@toccata.fugue.com>
1860
1861 * emacs.c (dump-emacs-data, dump-emacs): Declare my_edata as
1862 char array.
1863 * lastfile.c (my_edata): Declare as char array, not int.
1864 * puresize.h (CHECK_IMPURE): Declare my_edata as char array.
1865
18661995-03-17 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1867
1868 * lread.c (Vload_read_function): New variable.
1869 (readevalloop): Use that variable.
1870 (syms_of_lread): Set up Lisp variable.
1871
18721995-03-17 Boris Goldowsky <boris@spiff.gnu.ai.mit.edu>
1873
1874 * buffer.h (struct buffer): Add file_format member.
1875
1876 * buffer.c (reset_buffer): Reset file_format element too.
1877 (init_buffer_once): Define file_format flag; reset file_format.
1878 (syms_of_buffer): New vbl buffer-file-format.
1879
1880 * fileio.c (Finsert_file_contents): Call format-decode.
1881 (build_annotations): Call format-annotate-function for each element of
1882 buffer-file-format.
1883 (Vauto_save_file_format): New vbl.
1884 (build_annotations): Use it.
1885
18861995-03-17 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1887
1888 * alloc.c (init_alloc_once): Increase gc_cons_threshold to 300000.
1889
18901995-03-15 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1891
1892 * xfns.c (x_decode_color): Don't use cdef if defined_color failed.
1893
18941995-03-15 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
1895
1896 * config.h.in [HAVE_X_WINDOWS] (MULTI_KBOARD): Define this symbol.
1897
18981995-03-14 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
1899
1900 * lisp.h (struct KBOARD, MULTI_KBOARD, current_kboard, all_kboards):
1901 (Lisp_Misc_Kboard_Objfwd, Lisp_Kboard_Objfwd, XKBOARD_OBJFWD):
1902 (KBOARD_OBJFWDP, GC_KBOARD_OBJFWDP, kboard_locked, the_only_kboard):
77100b2a 1903 (DEFVAR_KBOARD): Rename from PERDISPLAY, MULTI_PERDISPLAY,
615d0182
DL
1904 current_perdisplay, all_perdisplays, Lisp_Misc_Display_Objfwd,
1905 Lisp_Display_Objfwd, XDISPLAY_OBJFWD, DISPLAY_OBJFWDP,
1906 GC_DISPLAY_OBJFWDP, display_locked, the_only_perdisplay,
1907 DEFVAR_DISPLAY. All uses changed.
1908 (struct KBOARD): New member reference_count.
1909 (initial_kboard): Declare this var.
77100b2a 1910 * .gdbinit (xkbobjfwd): Rename from xdispobjfwd.
615d0182
DL
1911 * frame.h (struct frame): New member kboard.
1912 (FRAME_KBOARD): Accessor macro for that member, replacing
1913 get_perdisplay.
77100b2a 1914 * xterm.h (struct x_display_info): Member kboard (formerly
615d0182 1915 perdisplay) is now a pointer, not an actual struct.
77100b2a
SM
1916 (get_perdisplay, get_perdisplay_macro): Delete.
1917 * xfns.c (Fx_create_frame): Set the frame's kboard member.
1918 * xterm.c (get_perdisplay): Delete.
615d0182
DL
1919 (same_x_server): New function.
1920 (x_term_init): If this display shares a keyboard with one we've
1921 already opened, then share the structure.
1922 (x_delete_display): Don't delete the kboard until the reference
1923 count becomes zero.
77100b2a
SM
1924 * lread.c (defvar_kboard): Rename from defvar_display.
1925 * alloc.c (mark_kboards): Rename from mark_perdisplays.
615d0182
DL
1926 * frame.c (make_frame): Initialize kboard member.
1927 (make_terminal_frame): Create initial_kboard if not already set.
77100b2a
SM
1928 * keyboard.c (unlock_kboard): Rename from unlock_display.
1929 (wrong_kboard_jmpbuf): Rename from wrong_display_jmpbuf.
1930 (event_to_kboard): Rename from event_to_perdisplay.
615d0182
DL
1931 (kbd_buffer_get_event): If no associated kboard, store
1932 current_kboard rather than the first kboard in the global list.
77100b2a 1933 (init_kboard): Rename from init_perdisplay. Initialize reference
615d0182 1934 count.
77100b2a 1935 (wipe_kboard): Rename from wipe_perdisplay.
615d0182
DL
1936 * data.c (find_symbol_value): current_perdisplay now is never null.
1937 (store_symval_forwarding, do_symval_forwarding): Likewise.
1938
19391995-03-14 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1940
1941 * data.c (Fash): Fix previous change.
1942
1943 * buffer.c (Fmake_indirect_buffer): Invert the arguments.
1944
1945 * marker.c (unchain_marker): Allow differing buffers
1946 as long as they have the same text.
1947
19481995-03-13 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
1949
1950 * keyboard.c (event_to_perdisplay): New function.
1951 (kbd_buffer_get_event): Use event_to_perdisplay.
1952 (kbd_buffer_store_event): If C-g arrives while we're in the run
1953 state on behalf of another display, just clear the queue and
1954 deposit the C-g to be read later.
1955 (read_key_sequence): After a throw, unwind delayed_switch_frame as
1956 well as keybuf. Don't insert an extra switch-frame if empty.
1957
1958 * print.c (print): current_perdisplay now is never null.
1959 * callint.c (clear_prefix_arg): Likewise.
1960 * macros.c (Fexecute_kbd_macro): Likewise.
1961
19621995-03-13 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1963
1964 * minibuf.c (read_minibuf): Save Voverriding_local_map.
1965 (read_minibuf_unwind): Restore Voverriding_local_map.
1966
19671995-03-13 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1968
1969 * unexelf.c (unexec): Adjust the file offset of sections located
1970 after the section header table.
1971
19721995-03-12 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
1973
1974 * keyboard.c (unlock_display): current_perdisplay now is never null.
1975 (cmd_error, command_loop_1, read_char): Likewise.
1976 (kbd_buffer_get_event, read_key_sequence): Likewise.
1977 (read_char): Handle synchronous quit_char on a different display.
1978 (read_char): Rewrite queue-searching code.
1979 (read_key_sequence): Save selected_frame.
1980 (init_keyboard): Initialize current_perdisplay.
1981
19821995-03-12 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1983
1984 * keyboard.c (parse_modifiers_uncached): Delete the code for
1985 multi-character modifiers and for recognizing a modifier alone.
1986 (parse_solitary_modifier): New function.
1987 (convert_event_type_list): Use parse_solitary_modifier.
1988 Also convert symbol A to character A.
1989 Handle shift modifier with lower-case letters.
1990
1991 * window.c (Fdisplay_buffer): Fix prev change--return sel window.
1992
1993 * indent.c (compute_motion, Fmove_to_column, current_column)
1994 (character_width): Let display table handle \n, \r, \t.
1995 (compute_motion): Fix logic in previous change wrt skipping invisible.
1996
19971995-03-11 Richard Stallman <rms@mole.gnu.ai.mit.edu>
1998
1999 * xdisp.c (display_text_line): When setting selective_rlen,
2000 ignore whether selective display is on or off.
2001
2002 * textprop.c (Fnext_property_change): Handle LIMIT = t.
2003
2004 * indent.c (compute_motion): Call recenter_overlay_lists sooner.
2005 Use Fnext_property_change to get a quick lower bound for
2006 where `invisible' changes.
2007
20081995-03-10 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2009
2010 * data.c (Fash, Flsh): Change arg names.
2011
20121995-03-09 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2013
2014 * intervals.h (TEXT_PROP_MEANS_INVISIBLE): New macro.
2015 (TEXT_PROP_MEANS_INVISIBLE_WITH_ELLIPSIS): New macro.
2016
2017 * xdisp.c (display_text_line, try_window): Check `invisible' prop
2018 using TEXT_PROP_MEANS_INVISIBLE.
2019 (display_text_line): Check TEXT_PROP_MEANS_INVISIBLE_WITH_ELLIPSIS;
2020 if it says so, use ellipses after invisible text.
2021 (invisible_p, invisible_ellipsis_p): New functions.
2022
2023 * indent.c (compute_motion, vmotion): Check `invisible' prop
2024 using TEXT_PROP_MEANS_INVISIBLE.
2025
2026 * buffer.h (struct buffer): New field `invisibility_spec'.
2027 * buffer.c (reset_buffer_local_variables): Init invisibility.
2028 (init_buffer_once): Set up buffer_local_flags for it.
2029 (syms_of_buffer): New variable `buffer-invisibility-spec'.
2030
20311995-03-08 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2032
2033 * syntax.c (Fforward_comment): Always clear immediate_quit for return.
2034
20351995-03-08 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
2036
2037 * sysdep.c (read_input_waiting): Fix Lisp_Object vs. int problem.
2038
20391995-03-07 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
2040
2041 * lisp.h (struct PERDISPLAY): New member kbd_queue_has_data.
2042 * keyboard.c (unlock_display): If adding to kbd_queue, set
2043 kbd_queue_has_data.
2044 (read_char): Set and clear kbd_queue_has_data appropriately, but
2045 leave it unset when we push back an incomplete sequence.
2046 (read_char): Take the longjmp even if current_perdisplay was null.
2047 (readable_events): Check kbd_queue_has_data instead of kbd_queue.
2048 (init_perdisplay): Initialize kbd_queue_has_data.
2049
2050 * keyboard.c (command_loop_1): Removed inline code for prefix args.
2051 * callint.c (current_prefix_partial): New var.
2052 (Funiversal_argument): New function, formerly inlined in keyboard.c.
2053 (Fnegative_argument, Fdigit_argument): Likewise.
2054 (clear_prefix_arg): Moved here from keyboard.c.
2055 Don't clear the internal state if we're still building a prefix arg.
2056 (finalize_prefix_arg, describe_prefix_arg): Moved from keyboard.c.
2057 (syms_of_callint): defsubr the new functions.
2058 * lisp.h: Declare new var and functions.
2059
2060 * lisp.h (struct PERDISPLAY): New member Vlast_kbd_macro.
2061 * alloc.c (mark_perdisplays): Mark it here.
2062 * keyboard.c (init_perdisplay): Initialize it here.
2063
2064 * macros.c (Fstart_kbd_macro): Access Vlast_kbd_macro via perdisplay.
2065 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
2066 (init_macros): Delete initialization.
2067 (syms_of_macros): Use DEFVAR_DISPLAY for Vlast_kbd_macro.
2068 Doc fix for executing-macro, executing-kbd-macro, last-kbd-macro.
2069
2070 * keyboard.c (cmd_error): Bind Vprint_level and Vprint_length.
2071
20721995-03-06 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
2073
2074 * keyboard.c (command_loop_1): Fix test for prefix arg.
2075
20761995-03-06 Boris Goldowsky <boris@cs.rochester.edu>
2077
2078 * textprop.c (Vdefault_properties): New variable.
2079 * intervals.h: Declare it.
2080 * intervals.c (textget): Check it.
2081
20821995-03-03 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2083
2084 * callint.c (Fcall_interactively): Fix Feb 22 change.
2085
2086 * keyboard.c (read_key_sequence): Update orig_local_map
2087 for some additional gotos to replay_sequence.
2088
2089 * process.c (exec_sentinel, read_process_output): If running filter
2090 or sentinel changes the local map, call record_asynch_buffer_change.
2091
20921995-03-02 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
2093
2094 * xdisp.c (display_mode_line): Temporarily set current_perdisplay
2095 to reference the frame we're updating.
2096
2097 * lisp.h (struct PERDISPLAY): New members defining_kbd_macro,
2098 kbd_macro_buffer, kbd_macro_ptr, kbd_macro_end, kbd_macro_bufsize.
2099 * macros.h (defining_kbd_macro): Delete declaration.
2100 * macros.c (defining_kbd_macro): Delete; now part of perdisplay.
2101 All uses changed.
2102 (kbd_macro_buffer, kbd_macro_ptr, kbd_macro_end): Likewise.
2103 (kbd_macro_bufsize): Likewise.
2104 (Fstart_kbd_macro): Initialize kbd_macro_buffer if not already done.
2105 (init_macros): Delete initialization of defining_kbd_macro.
2106 (syms_of_macros): Delete initialization of kbd_macro_buffer.
2107 * keyboard.c (read_char_minibuf_menu_prompt): orig_defn_macro is
2108 now a Lisp_Object, not an int.
2109 (init_perdisplay): Initialize some of the new members.
2110 (wipe_perdisplay): Free kbd_macro_buffer.
2111
2112 * keyboard.c (cmd_error): Allow current_perdisplay to be null.
2113
2114 * keyboard.c (read_key_sequence): New arg can_return_switch_frame.
2115 All callers changed.
2116 (Fread_key_sequence): Likewise.
2117 * callint.c (Fcall_interactively): Defer switch-frame events when
2118 reading `k' or `K' specification.
2119
21201995-03-02 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2121
2122 * emacs.c (syms_of_emacs): Doc fix.
2123
21241995-03-02 John Grabowski <johng@media.mit.edu>
2125
2126 * xfns.c (defined_color): If colormap is full, find closest match.
2127 * xfaces.c (load_color): Call defined_color to allocate the color.
2128
21291995-03-01 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2130
2131 * xterm.c (x_connection_closed): Ignore non-X frames.
2132 Fix the logic for deleting frames that use separate minibuffers
2133 that are on the dead connection.
2134
2135 * buffer.c (Fpop_to_buffer): Call Fset_buffer_major_mode
2136 if we create a buffer.
2137
21381995-02-28 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
2139
2140 * keyboard.c (cmd_error): Use clear_prefix_arg.
2141 (internal_last_event_frame, Vlast_event_frame): Normal vars again.
2142 All uses changed.
2143 (Quniversal_argument, Qdigit_argument, Qnegative_argument): Declare.
2144 (clear_prefix_arg, finalize_prefix_arg, describe_prefix_arg): New fns.
2145 (command_loop_1): Handle digits and minus specially, when they're
2146 part of a prefix arg.
2147 Handle universal-argument and digit-argument and negative-argument
2148 bindings here, rather than doing I/O in the Lisp code.
2149 (read_char): When reading switch-frame events from the side queue,
2150 set internal_last_event_frame.
2151 (readable_events): Return non-zero if a side queue has data.
2152 (kbd_buffer_get_event): Don't abort if event has no associated frame.
2153 (read_key_sequence): Improve behavior when there's no current display.
2154 (init_perdisplay): Initialize the new members.
2155 * callint.c (Fcall_interactively, syms_of_callint): Undo Jan 31 change.
2156 (Vprefix_arg, Vcurrent_prefix_arg): Undo Jan 31 change.
2157 * mocklisp.c (Fml_provide_prefix_argument, Fml_prefix_argument_loop):
2158 Undo Jan 31 change.
2159 * minibuf.c (read_minibuf, read_minibuf_unwind): Undo Jan 31 change.
2160 * frame.c (do_switch_frame): Undo Feb 6 change.
2161 * macros.c (Fexecute_kbd_macro): Use clear_prefix_arg.
2162 * lisp.h (struct PERDISPLAY): Add prefix_factor, prefix_value,
2163 prefix_sign, prefix_partial. Delete Vcurrent_prefix_arg and
2164 Vprefix_arg; those are now plain vars again.
2165 * alloc.c (mark_perdisplays): Update to reflect current Lisp_Objects.
2166 (NSTATICS): Increase to 768.
2167
21681995-02-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2169
2170 * frame.c (Fframep): Doc fix.
2171
21721995-02-28 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
2173
2174 * callint.c (Fcall_interactively): Lock the display before
2175 executing the command, no matter how we execute it.
2176
21771995-02-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2178
2179 * keyboard.c (convert_event_type_list): New function.
2180 (lucid_event_type_list_p): New function.
2181 (parse_modifiers_uncached): If MODIFIERS_END is -1,
2182 look for just a modifier. Guts rewritten.
2183
2184 * keymap.c (Fdefine_key): Handle Lucid-style (crtl backspace) etc.
2185 (Flookup_key): Likewise.
2186
2187 * callproc.c (Fcall_process): Extend BUFFER arg so it can specify
2188 a separate output file for stderr output.
2189 (Fcall_process_region): Doc fix.
2190
21911995-02-25 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2192
2193 * xmenu.c (Fx_popup_menu): Init f from selected_frame
2194 before calling mouse_position_hook.
2195
2196 * window.c (Vsame_window_buffer_names, Vsame_window_regexps): New vars.
2197 (syms_of_window): Set up Lisp vars.
2198 (Fdisplay_buffer): Use those vars--if requested, use current window.
2199
22001995-02-24 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
2201
2202 * keyboard.c (unlock_display): New function.
2203 (cmd_error, command_loop_1): Call it when appropriate.
2204 (read_char): If no current display, don't try to echo.
2205
2206 * term.c (term_init) [TERMINFO]: Make error message more accurate.
2207
22081995-02-23 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2209
2210 * keymap.c (Fglobal_set_key, Flocal_set_key, Fglobal_unset_key)
2211 (Flocal_unset_key): Functions deleted (moved to simple.el).
2212 (syms_of_keymap): Don't defsubr them.
2213
22141995-02-23 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
2215
2216 * keyboard.c (display_locked): New var to indicate when we're in
2217 the run state. current_perdisplay is now meaningful in the wait
2218 state as well.
2219 (cmd_error): Clear display_locked in addition to current_perdisplay.
2220 (command_loop_1): outer_perdisplay renamed from global_perdisplay.
2221 Restore display_locked as well as current_perdisplay.
2222 (read_char): read_char_perdisplay merged with current_perdisplay.
2223 (read_key_sequence): Likewise.
2224 * minibuf.c (read_minibuf): Make sure the display is locked.
2225 * callint.c (Fcall_interactively): If the display hasn't already
2226 been locked by reading from the minibuffer, lock it before
2227 executing the command.
2228 * lisp.h (display_locked): Declare this var.
2229
22301995-02-23 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2231
2232 * window.c (syms_of_window): Doc fixes.
2233
2234 * keymap.c (Fwhere_is_internal): If FIRSTONLY is not nil or non-ascii,
2235 completely ignore menu bindings.
2236 * xmenu.c (menu_item_equiv_key): Delete the code that rejected
2237 menu bindings returned by Fwhere_is_internal.
2238
2239 * window.c (window_loop): Handle special display buffer frames
2240 for DELETE_BUFFER_WINDOWS as for UNSHOW_BUFFER.
2241
22421995-02-22 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2243
2244 * callint.c (Fcall_interactively): Use markers temporarily in
2245 args vector to stand for point and mark values; replace them
2246 with integers just before calling the command.
2247
22481995-02-21 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
2249
2250 * lisp.h (struct PERDISPLAY): New member kbd_queue.
2251 Delete obsolete members kbd_buffer_frame_or_window, kbd_buffer,
2252 kbd_fetch_ptr, kbd_store_ptr; these are regular vars again.
2253 * alloc.c (mark_perdisplays): Mark kbd_queue.
2254 Remove reference to obsolete kbd_buffer_frame_or_window.
2255 * xmenu.c (menubar_selection_callback): frame_or_window field of a
2256 menu-bar event now includes both the frame and the magic cookie.
2257 * keyboard.c (kbd_buffer_frame_or_window): Restored old var.
2258 (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr): Likewise.
2259 (read_char_perdisplay): New var.
2260 (read_char): Search all appropriate perdisplay objects, and do the
2261 right thing if the next event comes from a different source.
2262 (read_key_sequence): If there's a change of display in mid-stream,
2263 retreat and try reading the new display.
2264 (find_active_event_queue): Function deleted. All callers changed
2265 to just test the main kbd_buffer instead.
2266 (kbd_buffer_store_event): Write to the main kbd_buffer again.
2267 (kbd_buffer_get_event): Read from the main kbd_buffer again.
2268 Now returns a perdisplay pointer in addition to a lispy event.
2269 (Fdiscard_input, swallow_events): Use the main kbd_buffer again.
2270 (stuff_buffered_input): Likewise.
2271 (init_perdisplay): Initialize member kbd_queue.
2272 Remove references to obsolete members.
2273 (wipe_perdisplay): Remove obsolete reference.
2274 (init_keyboard, syms_of_keyboard): Restore initialization of vars.
2275
22761995-02-21 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2277
2278 * xdisp.c (display_string, display_text_line):
2279 Display table overrides ordinary display even for \t, \n, etc.
2280
22811995-02-19 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2282
2283 * frame.c (Fmake_terminal_frame): Doc fix.
2284
22851995-02-18 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2286
2287 * s/hpux9.h (LIB_X11_LIB, C_SWITCH_X_SYSTEM, LD_SWITCH_X_DEFAULT):
2288 Add #undef's to cancel hpux8.h's definitions.
2289
22901995-02-17 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2291
2292 * config.h.in (MULTI_FRAME): Define unconditionally.
2293
22941995-02-16 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2295
2296 * dispnew.c (change_frame_size_1): New subroutine.
2297 (change_frame_size): If f is termcap frame, change size of all of them.
2298 (remake_frame_glyphs): No longer static.
2299 Don't mark nonselected termcap frame as garbaged.
2300
2301 * term.c (calculate_costs): Update max_frame_height, max_frame_width.
2302 They determine length of chars_wasted, copybuf and char_ins_del_vector.
2303
2304 * xdisp.c (redisplay): Don't display nonselected terminal frames.
2305
2306 * frame.c (Fmake_terminal_frame): New function.
2307 (syms_of_frame): defsubr it.
2308 (make_terminal_frame): Init Vframe_list only the first time.
2309 Set visible and async_visible directly.
2310 Give each terminal frame a unique name.
2311
2312 * ralloc.c (r_alloc_check): Return void.
2313 (r_alloc_freeze): Initialize if it hasn't been done.
2314 (r_re_alloc, r_alloc_free, r_alloc_sbrk): Likewise.
2315 (r_alloc_init): Set __malloc_extra_blocks.
2316
23171995-02-15 Paul Reilly <pmr@geech.gnu.ai.mit.edu>
2318
2319 * s/dgux.h (LIB_MOTIF): Add -lgen to provide provide the symbols
2320 `regcmp' and `regex'.
2321
23221995-02-15 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2323
2324 * xmenu.c (xmenu_show, both versions): New arg for_click.
2325 (Fx_popup_menu): Compute it and pass it.
2326
23271995-02-14 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2328
2329 * callint.c: Doc fix.
2330
23311995-02-14 Paul Reilly <pmr@geech.gnu.ai.mit.edu>
2332
2333 * xterm.c (x_bitmap_icon): Fix test for unallocated icon bitmap.
2334
23351995-02-14 Richard Stallman <rms@geech.gnu.ai.mit.edu>
2336
087b38a0 2337 * filelock.c (unlock_buffer, unlock_all_files, Flock_buffer)
615d0182
DL
2338 (Funlock_buffer): Use buffer's file_truename, not filename.
2339
2340 * buffer.c (syms_of_buffer): Set up Lisp var buffer-file-truename.
2341 (init_buffer_once): Set up flag and default value for file_truename.
2342 (reset_buffer): Init file_truename slot.
2343
2344 * buffer.h (struct buffer): New field file_truename.
2345
2346 * ralloc.c (r_alloc_free): Call refill_memory_reserve only if emacs.
2347
2348 Include getpagesize.h unconditionally.
2349 (free_bloc): Don't die if bloc->next or bloc->prev is null.
2350 [!emacs] (bzero): New macro definition.
2351
2352 * keyboard.c (input_poll_signal): Add ignored argument.
2353 (interrupt_signal): Likewise.
2354
2355 * dispnew.c (window_change_signal): Add ignored argument.
2356
2357 * process.c (Fstart_process): Make process marker point into proc buf.
2358
2359 * xterm.c (x_display_bar_cursor): Use frame's cursor_width.
2360
2361 (x_connection_signal): New function.
2362 (x_initialize): Use it as signal handler.
2363
2364 * xfns.c (x_set_cursor_type): Set cursor_width field.
2365 Handle args of form (bar . WIDTH).
2366
2367 * xterm.h (struct x_display): New element cursor_width.
2368
23691995-02-14 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2370
2371 * filelock.c (unlock_buffer, unlock_all_files, Flock_buffer)
2372 (Funlock_buffer): Use buffer's file_truename, not filename.
2373
2374 * buffer.h (struct buffer): New field file_truename.
2375 * buffer.c (syms_of_buffer): Set up Lisp var buffer-file-truename.
2376 (init_buffer_once): Set up flag and default value for file_truename.
2377 (reset_buffer): Init file_truename slot.
2378
2379 * xterm.h (struct x_display): New element cursor_width.
2380 * xfns.c (x_set_cursor_type): Set cursor_width field.
2381 Handle args of form (bar . WIDTH).
2382 * xterm.c (x_display_bar_cursor): Use frame's cursor_width.
2383
23841995-02-13 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2385
2386 * m/iris4d.h (STACK_DIRECTION): Undef before defining.
2387 [__GNUC__] (C_SWITCH_MACHINE): Remove -cckr.
2388 Add -32, only if IRIX_FORCE_32_BITS.
2389 * s/irix5-0.h [__GNUC__] (C_SWITCH_SYSTEM): Defined.
2390 * s/irix4-0.h [__GNUC__] (C_SWITCH_SYSTEM): Define this.
2391 (C_SWITCH_MACHINE): Instead of this.
2392
2393 * ralloc.c (r_alloc_free): Call refill_memory_reserve only if emacs.
2394
2395 * s/irix6-0.h: New file.
2396
2397 * fileio.c (Fexpand_file_name): Copy default-directory
2398 before looking for a handler on the directory arg.
2399
2400 * cmds.c (Vself_insert_face, Vself_insert_face_command): New variables.
2401 (syms_of_cmds): Set up Lisp variables. Doc syntax fix.
2402 (internal_self_insert): Handle Vself_insert_face.
2403
2404 * lisp.h (Qprocessp): Declared.
2405
2406 * xdisp.c (redisplay_window): If we update the mode line,
2407 switch to the buffer for real, and switch back for real.
2408
24091995-02-12 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2410
2411 * xterm.c (x_connection_signal): New function.
2412 (x_initialize): Use it as signal handler.
2413
2414 * keyboard.c (input_poll_signal): Add ignored argument.
2415 (interrupt_signal): Likewise.
2416
2417 * dispnew.c (window_change_signal): Add ignored argument.
2418
24191995-02-11 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2420
2421 * fileio.c (Fexpand_file_name): Look for a handler for defalt.
2422 (syms_of_fileio): Minor rearrangement.
2423
2424 * ralloc.c: Include getpagesize.h unconditionally.
2425 (free_bloc): Don't die if bloc->next or bloc->prev is null.
2426 [!emacs] (bzero): New macro definition.
2427
2428 * xmenu.c (menu_item_equiv_key): If command is an alias,
2429 check only the underlying command for a keyboard equivalent.
2430
2431 * s/netbsd.h (WAIT_USE_INT): Defined.
2432 * syswait.h: New alternative specified by WAIT_USE_INT.
2433
2434 * process.c (Fstart_process): Make process marker point into proc buf.
2435
24361995-02-10 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2437
2438 * data.c: Rename arg OBJ to OBJECT in all type predicates.
2439 (Ftype_of): New function.
2440
24411995-02-09 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2442
2443 * xfaces.c (load_color): Ignore failure from XAllocColor.
2444 * xfns.c (x_decode_color): Ignore failure from defined_color.
2445
2446 * m/intel386.h [SOLARIS2_4, !__GNUC__] (C_SWITCH_SYSTEM): Defined..
2447 [SOLARIS2_4, !__GNUC__]: Include alloca.h.
2448
24491995-02-07 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2450
2451 * Makefile.in.in (maintainer-clean): Renamed from realclean.
2452 Print warning message.
2453
24541995-02-07 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
2455
2456 * keyboard.c (command_loop_1): Put back cancel_echoing call, if
2457 there's a perdisplay for it to apply to.
2458 (init_perdisplay): Initialize echo vars.
2459
2460 * xdisp.c (message_log_check_duplicate): New function.
2461 (message_dolog): Delete previous line if the new one is a
2462 duplicate. Include a counter if appropriate.
2463 Don't bother truncating the buffer until after adding newline.
2464
24651995-02-06 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
2466
2467 * lisp.h (struct PERDISPLAY): Add Vlast_event_frame.
2468 Define internal_last_event_frame only #if MULTI_FRAME.
2469 Add some placeholders so we don't need to rebuild every time this
2470 struct changes.
2471 * keyboard.c (internal_last_event_frame, Vlast_event_frame):
2472 Deleted; now part of perdisplay. All uses changed.
2473 (MOUSE_ACTIVITY_AVAILABLE) Deleted.
2474 (find_active_event_queue): New arg check_mouse. All callers changed.
2475 (Vlast_event_frame): Change from DEFVAR_LISP to DEFVAR_DISPLAY.
2476 * frame.c (do_switch_frame): internal_last_event_frame is now in
2477 perdisplay.
2478
24791995-02-05 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2480
2481 * ralloc.c (r_alloc_size_in_use): New function.
2482
2483 * alloc.c (emacs_blocked_malloc): Set __malloc_extra_blocks here.
2484 (malloc_hysteresis): New variable.
2485 (init_alloc_once): Initialize malloc_hysteresis.
2486 (buffer_memory_full): New function.
2487 * emacs.c (main): Undo previous change.
2488 * buffer.c (Fget_buffer_create): Call buffer_memory_full.
2489
2490 * alloc.c (refill_memory_reserve): New function.
2491 * ralloc.c (r_alloc_free): Call refill_memory_reserve.
2492
24931995-02-04 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2494
2495 * alloc.c (SPARE_MEMORY): New macro.
2496 (emacs_blocked_free): If no spare_memory now, and enough free
2497 space is available, get a new spare.
2498 (__malloc_size_t, _bytes_used): Declared.
2499 (bytes_used_when_full): New variable.
2500
2501 * frame.h (struct frame): New field window_sizes_changed.
2502 (FRAME_WINDOW_SIZES_CHANGED): New macro (two definitions).
2503 * window.c (Fdelete_window, set_window_height, set_window_width)
2504 (Fsplit_window, Fset_window_configuration): Set
2505 FRAME_WINDOW_SIZES_CHANGED to 1 in the frame being changed.
2506 * xdisp.c (Vwindow_size_change_functions): New variable.
2507 (prepare_menu_bars): Call those functions. Add gcproing.
2508 (syms_of_xdisp): Set up Lisp variable.
2509
2510 * alloc.c (syms_of_alloc): Improve memory exhausted error message.
2511 (init_alloc_once): Allocate spare_memory.
2512 (memory_full): Free spare_memory.
2513
25141995-02-03 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2515
2516 * xselect.c (x_get_foreign_selection, x_reply_selection_request):
2517 Use an unwind-protect to call x_stop_queuing_selection_requests.
2518 (some_frame_on_display): New function.
2519 (queue_selection_requests_unwind): New function.
2520
25211995-02-03 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
2522
2523 * callint.c (syms_of_callint): Move DEFVAR_DISPLAY's ...
2524 * keyboard.c (syms_of_keyboard): ... to here.
2525 [MULTI_PERDISPLAY] (current_perdisplay, all_perdisplays): New vars.
2526 (find_active_event_queue): Search all perdisplays.
2527 (init_perdisplay, wipe_perdisplay): New functions.
2528 (init_keyboard): Move perdisplay initialization to init_perdisplay.
2529 (syms_of_keyboard): Likewise.
2530 (cmd_error): Cancel echoing here.
2531 (command_loop_1): Not here.
2532
2533 * lisp.h (all_perdisplays): New var.
2534 (struct PERDISPLAY): New member next_perdisplay.
2535 * alloc.c (mark_perdisplays): New function.
2536 (Fgarbage_collect): Call it.
2537 * lread.c (defvar_display): Don't staticpro; these objects are now
2538 protected through mark_perdisplays.
2539 * xterm.c [MULTI_PERDISPLAY] (x_term_init): Initialize perdisplay.
2540 [MULTI_PERDISPLAY] (x_delete_display): Destroy perdisplay.
2541 (x_delete_display): Use xfree, not free.
2542
2543 * lisp.h (defvar_display): Declare this function.
2544 (DEFVAR_DISPLAY): Use current_perdisplay, not get_perdisplay.
2545 * data.c (do_symval_forwarding): Likewise.
2546 (store_symval_forwarding, find_symbol_value): Likewise.
2547 * print.c (print): Likewise.
2548 * keyboard.c (echo_prompt, echo_char, echo_dash, echo): Likewise.
2549 (cancel_echoing, echo_length, read_char, Fdiscard_input): Likewise.
2550 (stuff_buffered_input): Likewise.
2551
25521995-02-03 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2553
2554 * xdisp.c (display_text_line): Deduct minibuf prompt from taboffset.
2555 (try_window): Deduct minibuf prompt from tab_offset, after 1st line.
2556
25571995-02-02 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2558
2559 * xselect.c (wait_for_property_change): Avoid unlikely timing error.
2560
2561 * keyboard.c (kbd_buffer_get_event, swallow_events):
2562 Remove selection_request event from input queue before processing it.
2563
25641995-02-01 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
2565
2566 * macros.c (Fexecute_kbd_macro): Clear prefix arg here.
2567 * keyboard.c (cmd_error): And here.
2568 (command_loop_1): Not here.
2569 (command_loop_1): Save original perdisplay in case we're already
2570 locked to a particular display.
2571 Move display-specific cleanup to end of main loop.
2572 Use perdisplay to access prefix arg.
2573 (Fcommand_execute, Fexecute_extended_command): Use perdisplay.
2574
25751995-02-01 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2576
2577 * xterm.c (x_unqueue_events): Arg is now a Display *.
2578 (x_start_queuing_selection_requests): Likewise.
2579 (x_stop_queuing_selection_requests): Likewise.
2580 * xselect.c (x_get_foreign_selection): Pass display to
2581 x_start_queueing_selection_events and x_stop_queueing_selection_events.
2582
2583 * xselect.c (x_reply_selection_request): Call
2584 x_start_queueing_selection_events and x_stop_queueing_selection_events.
2585 Handle X protocol errors.
2586
25871995-01-31 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
2588
2589 * callint.c (Fcall_interactively): Use perdisplay.
2590 (Vprefix_arg, Vcurrent_prefix_arg): Delete vars; now in perdisplay.
2591 (syms_of_callint): Use DEFVAR_DISPLAY for prefix-arg and
2592 current-prefix-arg.
2593 * minibuf.c (read_minibuf, read_minibuf_unwind): Use perdisplay.
2594 * mocklisp.c (Fml_provide_prefix_argument): Use perdisplay.
2595 (Fml_prefix_argument_loop): Likewise.
2596 * lisp.h (current_perdisplay): New var.
2597 (DEFVAR_DISPLAY): Add missing ampersand.
2598 (Vprefix_arg, Vcurrent_prefix_arg): Delete; now in perdisplay.
2599
2600 * lread.c [!MULTI_PERDISPLAY] (defvar_display): Use staticpro.
2601
26021995-01-31 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2603
2604 * emacs.c (main) [REL_ALLOC]: Set __malloc_extra_blocks.
2605
26061995-01-30 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2607
2608 * buffer.c (syms_of_buffer): overwrite-mode doc fix.
2609
26101995-01-30 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
2611
2612 * lisp.h [MULTI_PERDISPLAY]: Declare get_perdisplay as a function.
2613 * xterm.c [MULTI_PERDISPLAY] (get_perdisplay): Define this as an
2614 exported function.
2615 * xterm.h [MULTI_PERDISPLAY] (get_perdisplay): Define this as a
2616 macro, for sources that include this header.
2617 [MULTI_PERDISPLAY] (get_perdisplay_macro): Internal macro version.
2618
2619 * lisp.h (DEFVAR_DISPLAY): New macro.
2620 * lread.c (defvar_display): New function.
2621
2622 * lisp.h: Declare store_symval_forwarding here.
2623 * eval.c (specbind): Not here.
2624 (specbind): Handle display-local vars.
2625 * data.c (do_symval_forwarding): Handle display-local vars.
2626 (store_symval_forwarding, find_symbol_value): Likewise.
2627 (Fmake_variable_buffer_local): Disallow display-local vars here.
2628 (Fmake_local_variable): Likewise.
2629
2630 * keyboard.c (syms_of_keyboard): Fix missing backslashes.
2631
26321995-01-29 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2633
2634 * fns.c (Frassoc): New function.
2635 (syms_of_fns): defsubr it.
2636
26371995-01-28 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2638
2639 * ecrt0.c: Renamed from crt0.c.
2640 * Makefile.in.in (ecrt0.o): Target renamed from crt0.o.
2641 (START_FILES): Use ecrt0.o.
2642
26431995-01-27 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
2644
2645 * lisp.h (PERDISPLAY, the_only_perdisplay, get_perdisplay):
2646 Renamed from PERD, etc. All uses changed.
2647 (ECHOBUFSIZE): New constant, replaces sizeof (echobuf).
2648 (enum Lisp_Misc_Type): New enumeration Lisp_Misc_Display_Local.
2649 (struct Lisp_Display_Objfwd): New structure.
2650 (XDISPLAY_OBJFWD, DISPLAY_OBJFWDP): Access the new structure.
2651 (union Lisp_Misc): Add new member.
2652 * keyboard.c (kbd_buffer_frame_or_window): Delete; now in perdisplay.
2653 (immediate_echo, echobuf, echoptr, echo_after_prompt): Likewise.
2654 (echo_prompt, echo_char, echo_dash): use perdisplay and ECHOBUFSIZE.
2655 (echo, cancel_echoing, echo_length, echo_truncate): Likewise.
2656 (read_char, kbd_buffer_store_event, kbd_buffer_get_event): Likewise.
2657 (Fdiscard_input, stuff_buffered_input): Likewise.
2658 (init_keyboard, syms_of_keyboard): Likewise.
2659 * alloc.c (mark_object): Ignore Lisp_Misc_Display_Objfwd objects.
2660 * print.c (print): Handle internal display-local object.
2661 * .gdbinit (xdispobjfwd): New macro.
2662
2663 * xdisp.c (message_log_need_newline): This var is now static.
2664 (message_dolog): Set message_log_need_newline appropriately.
2665 Don't change it at all if message logging is currently disabled.
2666 (message_log_maybe_newline): New function.
2667 (message2): Use message_log_maybe_newline.
2668 * print.c (printchar, strout): Use message_log_maybe_newline.
2669 Leave all of the newline bookkeeping to message_dolog.
2670 * lisp.h (message_log_maybe_newline): Function declared.
2671
2672 * xdisp.c (message_dolog): Rename " *Messages*" buffer to "*Messages*"
2673
26741995-01-27 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2675
2676 * minibuf.c (Fread_string): Add third arg HISTORY.
2677 * callint.c (Fcall_interactively): Pass new arg to Fread_string.
2678
26791995-01-27 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2680
2681 * insdel.c (modify_region): Clear point_before_scroll field.
2682
26831995-01-25 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2684
2685 * buffer.h (struct buffer): New field point_before_scroll.
2686 * buffer.c (init_buffer_once, syms_of_buffer):
2687 Set up buffer-local var point_before_scroll.
2688 (reset_buffer): Init point_before_scroll.
2689 * intervals.c (set_point): Set point_before_scroll to nil.
2690
26911995-01-24 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
2692
2693 * lisp.h (PERD): New struct containing per-display data.
2694 (the_only_perd): Declare an instance of it.
2695 (get_perd): Macro to retrieve it.
2696 * keyboard.c (the_only_perd): Define this var here.
2697 (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr): Delete; now part of perd.
2698 (find_active_event_queue): New function.
2699 (readable_events, kbd_buffer_get_event, swallow_events): Use it.
2700 (kbd_buffer_store_event): Store in EVENT's frame's queue.
2701 (Fdiscard_input, stuff_buffered_input): Use perd.
2702 (init_keyboard): Initialize the new vars.
2703 kbd_buffer is now a pointer, not an array.
2704 * xterm.h (struct x_display_info): New member display_perd.
2705
2706 * process.c (process_tick, update_tick): Make non-static.
2707
27081995-01-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2709
2710 * keyboard.c (read_key_sequence): New arg dont_downcase_last
2711 inhibits downcasing the last event, when it's uppercase and undefined.
2712 (Fread_key_sequence): Likewise new arg.
2713 * callint.c (Fcall_interactively): Define K mostly like k.
2714 Pass new arg to Fread_key_sequence.
2715 * keymap.c (Flocal_set_key, Fglobal_set_key): Use K, not k, to read key seq arg.
2716
27171995-01-23 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
2718
2719 * indent.c (compute_motion): Don't get hung in selective-display loop.
2720
2721 * syssignal.h: Don't use function prototypes.
2722
2723 * keyboard.c (read_key_sequence): Don't wait for a possible key
2724 translation sequence if we already have a binding.
2725 Add missing break statement.
2726
2727 * sysselect.h: New file, mostly extracted from process.c and xterm.c.
2728 * process.c: #include sysselect.h instead of defining things by hand.
2729 * sysdep.c (sys_select): Renamed from select. Use SELECT_TYPE
2730 instead of int. Defer to native select if that function is usable.
2731 * config.h (HAVE_SYS_SELECT_H): Add #undef for configure.
2732 * s/isc3-0.h (BROKEN_SELECT_NON_X): #define this.
2733
2734 * s/isc3-0.h [__GNUC__] (POSIX_SIGNALS): #define this.
2735 [__GNUC__] (sigsetmask, HAVE_SYSV_SIGPAUSE): #undef these.
2736 (LIBX11_SYSTEM): Don't use -lc; loading this before -lcposix gives
2737 us the wrong signal functions.
2738 (C_SWITCH_SYSTEM): Add _XOPEN_SOURCE.
2739 (EXTRA_INITIALIZE): Make conditional on __GNUC__.
2740
27411995-01-22 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2742
2743 * minibuf.c (read_minibuf): Don't print the prompt in batch mode.
2744
2745 * emacs.c (sort_args): Ordinary args get priority 0.
2746 So do -f, -l, -insert, etc. --kill gets negative priority.
2747 Everything else gets positive priority.
2748
27491995-01-21 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2750
2751 * xterm.c (x_destroy_window): Don't let frame being destroyed
2752 remain in x_focus_event_frame.
2753
27541995-01-21 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
2755
2756 * config.h.in [NO_REMAP]: #undef static.
2757
27581995-01-20 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
2759
2760 * lisp.h (union Lisp_Misc): Make the `type' field just 16 bits,
2761 to match the substructures.
2762
27631995-01-20 Morten Welinder <terra@diku.dk>
2764
2765 * fileio.c (file_name_as_directory, Ffile_name_directory)
2766 (Ffile_name_nondirectory): Delete special MSDOG code now covered by macros.
2767
2768 * s/msdos.h (DEVICE_SEP, IS_DIRECTORY_SEP, IS_ANY_SEP): Defined.
2769
2770 * msdos.c (XMenuCreate, XMenuAddPane, XMenuAddSelection, XMenuLocate)
2771 (XMenuActivate, XMenuDestroy): Add dummy `display *' argument.
2772
2773 * xmenu.c [MSDOS]: #include msdos.h.
2774 * msdos.h (x_mouse_leave): Add neutralizing define.
2775 (XMenuCreate, XMenuAddPane, XMenuAddSelection, XMenuLocate)
2776 (XMenuActivate, XMenuDestroy): Add prototype.
2777 * Makefile.in.in (xmenu.o): Add msdos.h as dependency.
2778
2779 * buffer.c (syms_of_buffer) [DOS_NT]: Add missing ';'.
2780
27811995-01-19 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
2782
2783 * textprop.c (Ftext_property_any): Handle the trivial case specially.
2784
2785 * sysdep.c (seed_random): Renamed from srandom.
2786 (get_random): Renamed from random. Return VALBITS random bits.
2787 * fns.c (Frandom): Call seed_random and get_random.
2788
2789 * print.c (print): Print internal types too, for debugging.
2790 Print appropriate message for invalid pseudovector or misc type.
2791
2792 * .gdbinit (xboolfwd, xbuflocal, xbufobjfwd, xcompiled): New macros.
2793 (xintfwd, xmiscfree, xobjfwd, xoverlay, xwinconfig): New macros.
2794
27951995-01-19 Abramo Bagnara <abramo@sssup2.sssup.it>
2796
2797 * term.c (term_get_fkeys_1): Bug fix for function key above f19.
2798
27991995-01-18 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2800
2801 * editfns.c (subst_char_in_region_unwind): New function.
2802 (Fsubst_char_in_region): Use it to make undo_list t temporarily.
2803
2804 * buffer.c (Fbuffer_local_variables): Unconditionally call
2805 find_symbol_value, but conditionally use its value.
2806
2807 * xrdb.c: Don't include sys/param.h.
2808 (MAXPATHLEN): Definition deleted.
2809
28101995-01-18 Boris Goldowsky <boris@cs.rochester.edu>
2811
2812 * cmds.c (internal_self_insert): Don't test current_column
2813 when deciding to call auto_fill_function.
2814
28151995-01-18 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
2816
2817 * lisp.h (SWITCH_ENUM_CAST): New macro.
2818 * alloc.c, data.c, keyboard.c, syntax.c, xdisp.c: Change all
183080b6 2819 occurrences of SWITCH_ENUM_BUG to use SWITCH_ENUM_CAST instead.
615d0182
DL
2820
28211995-01-18 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2822
2823 * window.c (Qtemp_buffer_show_hook): New hook.
2824 (syms_of_window): Init and staticpro it.
2825 (temp_output_buffer_show): Run the hook.
2826
28271995-01-16 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
2828
2829 * xdisp.c (message_dolog): Ignore narrowing.
2830 Use low-level functions, to bypass modification and motion hooks.
2831
2832 * window.h (struct window): New member column_number_displayed.
2833 * xdisp.c (redisplay): Use that field instead of a global flag.
2834 (redisplay_window, display_mode_line, decode_mode_spec): Likewise.
2835
2836 * cm.c (cmcheckmagic): New function.
2837 * cm.h: Declare it.
2838 * term.c (write_glyphs, insert_glyphs): Call it.
2839
28401995-01-16 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2841
2842 * keyboard.c (kbd_buffer_store_event): Cast arg of bcopy.
2843
28441995-01-15 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
2845
2846 * ralloc.c (r_alloc_init): Remove unused variable END.
2847
28481995-01-13 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
2849
2850 * alloc.c (Fpurecopy): Mask size field when copying pseudovector.
2851
28521994-01-12 Boris Goldowsky <boris@cs.rochester.edu>
2853
2854 * lisp.h: Declare Qrear_nonsticky.
2855
2856 * cmds.c (Vuse_hard_newlines): New variable.
2857 (Fnewline): If use_hard_newlines is on, mark inserted
2858 newline(s) with `hard' property, marked rear-nonsticky.
2859
28601994-01-12 Tom Tromey <tromey@drip.colorado.edu>
2861
2862 * buffer.c (list_buffers_1, Flist_buffers): Functions deleted.
2863
28641995-01-12 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
2865
2866 * xdisp.c (message_log_need_newline): New var.
2867 (message_dolog): New function, extracted from message2.
2868 * print.c (printchar, strout): Call message_dolog.
2869 * lisp.h: Declare message_dolog.
2870
2871 * alloc.c (DONT_COPY_FLAG): Default this to 1.
2872 Check to make sure it's not the same as MARKBIT.
2873 (mark_object): Use the same XOR expression as elsewhere.
2874 (gc_sweep): Don't touch DONT_COPY_FLAG here; this one is a real
2875 size field, not a mangled pointer.
2876
2877 * fns.c (internal_equal): Delete redundant tests.
2878 Mask size field when comparing pseudovectors.
2879
2880 * fns.c (Frandom): Use VALBITS instead of hardcoded constants.
2881
28821995-01-10 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
2883
2884 * alloc.c (DONT_COPY_FLAG): Fix typo.
2885
2886 * lisp.h: Use large constants for Lisp_Misc_Type.
2887
2888 * lisp.h: Add some function declarations.
2889 * insdel.c: Declare all non-returning functions `void'.
2890 (insert_1): Make non-static. New arg PREPARE. All callers changed.
2891 * xdisp.c (Vmessage_log_max): New var.
2892 (syms_of_xdisp): defvar and initialize it.
2893 (message2_nolog): Renamed from message2.
2894 (message2): Log messages, then call message2_nolog.
2895 (message1_nolog): New function.
2896 * keyboard.c (echo): Don't log the key echoes.
2897 * alloc.c (Fgarbage_collect): Don't log the GC message.
2898
28991995-01-10 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2900
2901 * emacs.c (main): Handle SIGABRT, SIGHWE, SIGPRE, SIGORE, SIGDLK,
2902 SIGCPULIM, if they are defined.
2903
2904 * alloc.c (DONT_COPY_FLAG): New bit flag.
2905 (mark_object, gc_sweep, compact_strings): Use it.
2906
29071995-01-10 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
2908
2909 * editfns.c (Finsert_char): Check inherit flag for long strings too.
2910
2911 * editfns.c (Fnarrow_to_region): Swap using temp Lisp_Object, not int.
2912
29131995-01-10 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2914
2915 * keyboard.c (syms_of_keyboard): Doc fix.
2916
2917 * unexsunos4.c (unexec): Cast value of sbrk.
2918 (run_time_remap): Cast arg to brk.
2919 (brk_value): Renamed from Brk.
2920 (is_it): Cast 1st arg of mmap.
2921
29221995-01-09 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2923
2924 * keyboard.c (read_key_sequence): If first event is mouse click,
2925 use the text property keymap from where the click was.
2926 New local var orig_local_map.
2927
29281995-01-09 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
2929
2930 * window.c (Fscroll_other_window): On small windows, scroll by 1 line.
2931
29321995-01-09 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2933
2934 * fns.c (internal_equal): Once again use a switch.
2935
2936 * lisp.h (struct Lisp_Free, struct Lisp_Marker, etc.):
2937 Make the `type' field just 16 bits, and declare as int.
2938 Add explicit spacer field after it.
2939 (struct Lisp_Marker): New field insertion_type.
2940
29411995-01-08 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2942
2943 * keymap.c (store_in_keymap): Copy a cons only if car is a string.
2944
2945 * xterm.c: Don't include param.h.
2946
2947 * buffer.c (syms_of_buffer): Doc fix.
2948
29491995-01-06 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
2950
2951 * m/alliant-2800.h (VALBITS, GCTYPEBITS): Deleted; default is better.
2952 * m/apollo.h, m/aviion.h, m/delta.h, m/hp800.h, m/ibmrt.h: Likewise.
2953 * m/intel386.h, m/nh4000.h, m/tower32v3.h: Likewise.
2954 * m/att3b.h (VALBITS, XTYPE): Adjust for new bit layout.
2955 * m/alpha.h, m/gec63.h, m/pfa50.h: Likewise.
2956
29571995-01-05 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2958
2959 * frame.c [!MULTI_FRAME] (window_frame): New function.
2960 [!MULTI_FRAME] (syms_of_frame): defsubr it.
2961
29621995-01-05 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
2963
2964 * doc.c (store_function_docstring, Fdocumentation): Use &
2965 PSEUDOVECTOR_SIZE_MASK on `size' field of compiled byte-code object.
2966 * callint.c (Fcall_interactively): Likewise.
2967 * eval.c (Fcommandp): Likewise.
2968
29691995-01-04 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
2970
2971 * alloc.c (mark_object, mark_buffer): Don't mark buffer twice.
2972
2973 * .gdbinit (xint, xcar, xcdr): Use correct shift and mask values.
2974
2975 * lisp.h [EXPLICIT_SIGN_EXTEND] (XINT): Use symbolic constants.
2976
29771995-01-04 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2978
2979 * doc.c (store_function_docstring): Arg is now EMACS_INT.
2980
29811995-01-02 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
2982
2983 * lisp.h (enum Lisp_Type): Don't use trailing comma.
2984 (VALBITS, GCTYPEBITS): Define these regardless of NO_UNION_TYPE.
2985 [!NO_UNION_TYPE] (union Lisp_Object): Use symbolic constants.
2986
2987 * alloc.c (mark_object): Make `else' visible outside MULTI_FRAME.
2988
29891995-01-02 Richard Stallman <rms@mole.gnu.ai.mit.edu>
2990
2991 * keymap.c (store_in_keymap): While dumping, copy DEF if it's a cons.
2992
2993 * buffer.c (reset_buffer): Don't alter intervals here.
2994 (Fget_buffer_create): Use BUF_MARKERS. Init BUF_INTERVALS here.
2995 (Fkill_buffer): Use BUF_MARKERS; but don't touch it in indir buf.
2996 Likewise BUF_INTERVALS. Don't free the text in indirect buffer.
2997 When killing a base buffer, kill its indirect buffers first.
2998 (init_buffer_once): Set up .text and BUF_INTERVALS
2999 in buffer_local_symbols and buffer_defaults.
3000
3001 * alloc.c (mark_buffer, gc_sweep): Use BUF_INTERVALS.
3002 * editfns.c (Ftranspose_regions): Use BUF_INTERVALS.
3003 (transpose_markers): Use BUF_MARKERS.
3004
3005 * insdel.c (insert_1, prepare_to_modify_buffer, insert_from_buffer_1):
3006 Use BUF_INTERVALS.
3007 (adjust_markers): Use BUF_MARKERS.
3008
3009 * buffer.h (struct buffer): Fields markers and intervals moved out.
3010 (struct buffer_text): Fields markers and intervals moved here.
3011 (BUF_MARKERS, BUF_INTERVALS): New macros.
3012 * textprop.c (validate_interval_range): Use BUF_INTERVALS.
3013 * intervals.c: Use BUF_INTERVALS throughout.
3014 * marker.c: Use BUF_MARKERS throughout.
3015
3016 * undo.c (Fprimitive_undo): Use base buffer's modtime field.
3017
30181995-01-01 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3019
3020 * .gdbinit: Adapt to new Lisp_Object format.
3021 (xvectype, xmisctype): New commands.
3022 (xtype): Print the misc or vectorlike subtype too.
3023
3024 * xdisp.c (redisplay_window): Call set_buffer_temp.
3025
3026 * buffer.c (set_buffer_temp): New function.
3027
3028 * buffer.h (struct buffer): Make buffer_file_type field unconditional.
3029 * buffer.c (reset_buffer_local_variables): Initialize
3030 buffer_file_type field.
3031
3032 * lisp.h (PVEC_BUFFER, PVEC_PROCESS, PVEC_FRAME, PVEC_COMPILED)
3033 (PVEC_WINDOW, PVEC_WINDOW_CONFIGURATION, PVEC_SUBR):
3034 Now enumeration constants, not macros.
3035 (PVEC_FLAG): Enumeration alias for PSEUDOVECTOR_FLAG.
3036
3037 * buffer.h (struct buffer): save_modiff field deleted.
3038 (struct buffer_text): save_modiff field moved here.
3039 (SAVE_MODIFF, BUF_SAVE_MODIFF): New macros.
3040 Use them instead of direct access to save_modiff field.
3041 * buffer.c, editfns.c, fileio.c, filelock.c, insdel.c, keyboard.c:
3042 * undo.c, xdisp.c: Use SAVE_MODIFF and BUF_SAVE_MODIFF
3043 instead of direct access to the save_modiff field.
3044 * window.c (temp_output_buffer_show): Use BUF_SAVE_MODIFF.
3045
3046 * buffer.h (struct buffer): New field pt_marker.
3047 New fields begv_marker, zv_marker.
3048 * buffer.c (Fget_buffer_create): Initialize pt_marker, begv/zv_marker.
3049 (set_buffer_internal): Use and update this markers.
3050 Copy undo_list in and out of the base buffer.
3051 (Fget_buffer_create): Init save_modiff field here.
3052 (reset_buffer): Not here.
3053 (Fbuffer_modified_p): Use BUF_SAVE_MODIFF.
3054 (Fset_buffer_modified_p): Use SAVE_MODIFF.
3055 (Fkill_buffer, list_buffers_1): Use BUF_SAVE_MODIFF.
3056
3057 * term.c (term_init): Fatal error if screen is too small.
3058
30591994-12-31 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3060
3061 * xdisp.c (redisplay_window): For buffer_shared count,
3062 treat an indirect buffer as equivalent to its base.
3063
3064 * print.c (print): Don't drop thru to error for markers and overlays.
3065
30661994-12-30 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3067
3068 * insdel.c (adjust_point): Use BUF_PT.
3069
3070 * intervals.c (temp_set_point, set_point): Use BUF_PT.
3071 (get_local_map): Get keymap from specified buffer, not current one.
3072
3073 * fileio.c (Finsert_file_contents, Fwrite_region):
3074 Error if buffer is indirect.
3075 (Fdo_auto_save): Do nothing for an indirect buffer.
3076
3077 * alloc.c (mark_buffer): In indirect buffer, mark the base buffer.
3078
3079 * buffer.c (Fmake_indirect_buffer): New function.
3080 (Fbuffer_base_buffer): New function.
3081 (syms_of_buffer): defsubr them.
3082 (Fget_buffer_create): Initialize the size field.
3083
3084 * print.c (print): Make buffer case a branch of
3085 the Lisp_Vectorlike case.
3086
3087 * alloc.c (mark_object): Make buffer case a branch of
3088 the Lisp_Vectorlike case.
3089
3090 * buffer.h (struct buffer): Make text field be a pointer.
3091 The struct buffer_text field renamed to own_text.
3092 Add fields indirect_to_buffer and size.
3093 Move pt, begv and zv fields here.
3094 (struct buffer_text): Moved from here.
3095 (BEGV, PT, ZV, BEGV_ADDR, PT_ADDR, ZV_ADDR): Corresponding changes.
3096 (BUF_BEGV, BUF_PT, BUF_ZV): Corresponding changes.
3097 (SET_BUF_ZV, SET_BUF_PT, point):
3098
3099 * lisp.h (XSETBUFFER, BUFFERP, GC_BUFFERP): Rewrite: use pseudovectors.
3100 (enum Lisp_Type): Delete Lisp_Buffer.
3101 (enum Lisp_Misc_Type): Add Lisp_Misc_Float (not yet used).
3102
31031994-12-29 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3104
3105 * lisp.h (VALBITS): Default now 28.
3106 (GCTYPEBITS): Default now 3.
3107
3108 * lisp.h (enum Lisp_Type): Lisp_Process, Lisp_Window, Lisp_Frame,
3109 Lisp_Subr deleted.
087b38a0 3110 (PSEUDOVECTORP, GC_PSEUDOVECTORP): Add paren for proper nesting.
615d0182
DL
3111 (PROCESSP, GC_PROCESSP, XSETPROCESS): Rewrite to use pseudovectors.
3112 (WINDOWP, GC_WINDOWP, XSETWINDOW): Likewise.
3113 (FRAMEP, GC_FRAMEP): Likewise.
3114 (SUBRP, GC_SUBRP, XSETSUBR): Likewise.
3115 (PVEC_SUBR): New macro.
3116 (struct Lisp_Subr): Add a size field.
3117 (DEFUN (both definitions)): Store that size field.
3118
3119 * frame.h (XSETFRAME): Use pseudovector.
3120
3121 * alloc.c (mark_object): Don't use Lisp_Process, Lisp_Window.
3122 Handle frames, compileds and subrs as branch of Lisp_Vectorlike case.
3123 (Fmake_byte_code): Use XSETCOMPILED.
3124
3125 * data.c (Faref): Handle compiled function as pseudovector.
3126
3127 * fns.c (Flength): Handle compiled function as pseudovector.
3128
3129 * xterm.c (x_scroll_bar_handle_click): Use GC_WINDOWP.
3130 (XTframe_rehighlight, x_window_to_scroll_bar): Use GC_FRAMEP.
3131
3132 * print.c (print): Get size of compiled function as pseudovector.
3133 Use a switch statement again.
3134
3135 * process.h: Make size field an EMACS_INT.
3136
31371994-12-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3138
3139 * unexsunos4.c [! sparc] (REL_INFO_TYPE): Use `struct relocation_info'.
3140
31411994-12-27 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3142
3143 * keyboard.c (make_lispy_event) [USE_X_TOOLKIT]: Turn off
3144 special handling of menu bar mouse events.
3145 (make_lispy_event): Tell pixel_to_glyph_coords not to clip.
3146
3147 * xterm.c (XTupdate_begin): Fix backward test in previous change.
3148 (x_display_box_cursor): Don't redraw old cursor spot in mouse face
3149 if cursor was on a newline.
3150
3151 * s/isc4-1.h: New file.
3152
31531994-12-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3154
3155 * xterm.c (XTread_socket): Handle button events from outside
3156 the frame, received due to grabbing the mouse with a button.
3157
31581994-12-25 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3159
3160 * callint.c (Vmouse_leave_buffer_hook, Qmouse_leave_buffer_hook):
3161 New variables.
3162 (syms_of_callint): Set them up.
3163 (Fcall_interactively): Run the hook, for `@'.
3164
3165 * buffer.c (syms_of_buffer): Doc fix for buffer-file-type.
3166
3167 * search.c (set_search_regs): Really set search_regs.start and .end.
3168 (save_search_regs): Set them to 0 here.
3169
3170 * minibuf.c (read_minibuf): GCPRO things.
3171
3172 * lisp.h (enum Lisp_Type): Add Lisp_Type_Limit.
3173 * data.c (wrong_type_argument): Abort if VALUE is invalid Lisp object.
3174 Use Lisp_Type_Limit.
3175
31761994-12-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3177
3178 * puresize.h (BASE_PURESIZE): Incremented by 20k.
3179
31801994-12-23 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3181
3182 * xfns.c (x_figure_window_size): Treat missing user-position parm
3183 as nil.
3184
31851994-12-23 Steven Suhr <ssuhr@riacs.edu>
3186
3187 * scroll.c (scrolling_1): When scroll_region_ok is set, use a
3188 new scrolling method which scrolls groups of lines directly
3189 to their final vertical positions.
3190 (struct matrix_elt): New field writecount.
3191 (calculate_direct_scrolling): New function.
3192 (do_direct_scrolling): New function.
3193
3194 * term.c (scroll_region_cost): New variable.
3195 (calculate_costs): Put scroll region overhead in scroll_region_cost.
3196
3197 * termchar.h (scroll_region_cost): Declared.
3198
3199 * dispnew.c (scrolling): Fewer restrictions if scroll_region_ok is
3200 set. New vector old_draw_cost for direct scrolling method.
3201
177c0ea7 32021994-12-23 Michal Jankowski (Michal.Jankowski@fuw.edu.pl)
615d0182
DL
3203
3204 * keyboard.c (read_char): Don't echo keys when echo_keystrokes is 0.
3205
32061994-12-22 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3207
3208 * xfns.c (x_set_frame_parameters): Handle icon-left, icon-top parms.
3209
32101994-12-21 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3211
3212 * buffer.c (Fget_buffer_create): Copy the name, and clear text props.
3213
32141994-12-20 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3215
3216 * eval.c (Fdefvar): Fix minor error in previous change.
3217 (funcall_lambda): Fetch bytecode and constants vector from file if nec.
3218
3219 * lread.c (Qload_file_name, Vload_file_name): New variables.
3220 (syms_of_lread): Initialize and staticpro it.
3221 (Fload): Bind it.
3222 (read_list): Before dumping, ignore (#$ . WHATEVER)--return 0.
3223
3224 * lread.c (read1): Implement #@ and #$ constructs.
3225
3226 * frame.c (make_frame): Init buffer_predicate field.
3227
3228 * doc.c (get_doc_string): Now static. Arg now Lisp_Object.
3229 Allow (FILE . POS) as position argument.
3230 (Fdocumentation, Fdocumentation_property): Fix calls to get_doc_string.
3231 (Fdocumentation_property): Handle cons as value via get_doc_string.
3232 (read_doc_string): New function.
3233
3234 * buffer.c (assoc_ignore_text_properties): New function.
3235 (Fget_buffer): Use assoc_ignore_text_properties.
3236
32371994-12-19 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3238
3239 * s/dgux.h (C_DEBUG_SWITCH): Define this only if __GNUC__.
3240
32411994-12-18 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3242
3243 * buffer.c (Fother_buffer): Take account of frame's buffer predicate.
3244
3245 * frame.h (struct frame): New field buffer_predicate.
3246 Move all the Lisp_Object fields to the top.
3247
3248 * frame.c (Fmodify_frame_parameters): For non-X frames,
3249 call store_frame_param for each parameter set.
3250 (store_frame_param): Handle buffer_predicate field.
3251 (frame_buffer_predicate): New function.
3252 (Qbuffer_predicate): New variable.
3253 (syms_of_frame): Set it up.
3254
3255 * alloc.c (mark_object): In a frame, mark the buffer_predicate.
3256 Don't mark the height and width fields.
3257
32581994-12-15 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3259
3260 * minibuf.c (Fall_completions): New arg hide_spaces.
3261 (Fminibuffer_completion_help): Pass new arg.
3262
32631994-12-14 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3264
3265 * emacs.c (main): Fix conversion of --display to -d.
3266
3267 * xmenu.c (push_menu_item): New arg DEF.
3268 (single_keymap_panes, list_of_items): Pass new arg.
3269 (MENU_ITEMS_ITEM_DEFINITION): New macro.
3270 (MENU_ITEMS_ITEM_LENGTH): Now 5.
3271 [USE_X_TOOLKIT] (xmenu_show): Store 0 in call_data if item def is 0.
3272 (single_submenu): Likewise.
3273
3274 * emacs.c (main): Implement --version.
3275
3276 * xterm.c (XTupdate_begin): Discard records of prior mouse highlight
3277 when frame must be redrawn.
3278
3279 * textprop.c (add_properties): Add gcpro's.
3280 (Fadd_text_properties, copy_text_properties): Likewise.
3281
32821994-12-13 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3283
3284 * s/sunos4-1-3.h: Just include sunos4shr--do nothing else.
3285
3286 * eval.c (Fdefconst, Fdefvar): Error if too many arguments.
3287
32881994-12-13 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
3289
3290 * emacs.c (sort_args): Make `options' a vector of ints.
3291
32921994-12-11 Richard Stallman <rms@kepa>
3293
3294 * buffer.c (report_overlay_modification): Renamed from
3295 verify_overlay_modification.
3296 * insdel.c: Calls changed.
3297
3298 * insdel.c (signal_before_change, signal_after_change):
3299 Call verify_overlay_modification here.
3300 (prepare_to_modify_buffer): Don't call verify_overlay_modification.
3301
3302 * buffer.c (call_overlay_mod_hooks): New args AFTER, ARG1, ARG2, ARG3.
3303 Args START, END deleted. Pass each function AFTER, ARG1 and ARG2,
3304 and ARG3 if ARG3 is not nil.
3305 (verify_overlay_modification): New args AFTER, ARG1, ARG2, ARG3.
3306 Pass them to call_overlay_mod_hooks.
3307
3308 * search.c (compile_pattern): Call re_set_registers here.
3309 And no need to BLOCK_INPUT for that.
3310 (compile_pattern_1): Instead of here.
3311
33121994-12-10 Richard Stallman <rms@kepa>
3313
3314 * s/aix4-1.h: New file.
3315
3316 * unexaix.c (unrelocate_symbols): Add AIX4_1 conditionals and code.
3317
3318 * sysdep.c (sys_siglist) [AIX]: Add AIXHFT conditional.
3319
3320 * systty.h: Change AIX conditional around HFNKEYS to AIXHFT.
3321
33221994-12-09 Richard Stallman <rms@green-hill>
3323
3324 * bytecode.c (Fbyte_code): Call Ffollowing_char and Fprevious_char
3325 as functions. Don't mask char-syntax arg to just 8 bits.
3326
33271994-12-08 Richard Stallman <rms@green-hill>
3328
3329 * keyboard.c (read_char): After auto-saving, redisplay.
3330
33311994-12-06 Richard Stallman <rms@gnu.ai.mit.edu>
3332
3333 * xfns.c (Fx_color_values): Doc fix.
3334
3335 * buffer.c (list_buffers_1): Right-align the size values.
3336
3337 * frame.h (struct frame): New field cost_calculation_baud_rate.
3338 (FRAME_COST_BAUD_RATE): New macro.
3339 * term.c (calculate_costs): Set FRAME_COST_BAUD_RATE.
3340 Don't test dont_calculate_costs.
3341 (dont_calculate_costs): Variable deleted.
3342 (term_init): Don't set dont_calculate_costs.
3343 * dispnew.c (update_frame): Call calculate_costs if baud_rate changed.
3344
33451994-12-05 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
3346
3347 * emacs.c (sort_args): Don't overwrite the terminating null pointer.
3348
33491994-12-05 Richard Stallman <rms@gnu.ai.mit.edu>
3350
3351 * keyboard.c (read_key_sequence): Downcase undefined shifted fn keys.
3352
33531994-12-04 Richard Stallman <rms@gnu.ai.mit.edu>
3354
3355 * emacs.c (argmatch): Take argc as arg; don't go past end of argv.
3356 (main): Change calls to argmatch.
3357
3358 * intervals.h (INTERVAL_LAST_POS): Don't subtract 1 here.
3359
3360 * intervals.c (compare_string_intervals): New function.
3361 * fns.c (internal_equal): Call compare_string_intervals.
3362 (Fstring_equal): Doc fix.
3363
3364 * scroll.c (scroll_cost): FRAME_DELETE_COST and FRAME_DELETEN_COSTS
3365 were confused. Fixed.
3366
3367 * xterm.c (x_make_frame_visible, x_make_frame_invisible)
3368 (x_iconify_frame): Give error if frame has explicit_parent.
3369 (x_new_font): Don't set window height if frame has explicit_parent.
3370
3371 * xfns.c (Fx_create_frame): Check for parent-id parameter.
3372 Set explicit_parent and parent fields.
3373 Don't set visibility if explicit_parent.
3374 [! USE_X_TOOLKIT] (x_window): Specify parent window.
3375
3376 * xterm.h (struct x_display): New field explicit_parent.
3377
3378 * s/ultrix4-3.h (SET_LINE_DISCIPLINE): Defined.
3379
3380 * sysdep.c (child_setup_tty): Use CDISABLE for setting VERASE, VKILL.
3381 (init_sys_modes) [SET_LINE_DISCIPLINE]: Set specified line discipline.
3382 (reset_sys_modes) [SET_LINE_DISCIPLINE]: Restore old line discipline.
3383
33841994-12-03 Richard Stallman <rms@gnu.ai.mit.edu>
3385
3386 * lread.c (readevalloop): Ignore ^M here.
3387
3388 * emacs.c (argmatch): Handle lstr == 0.
3389
33901994-11-28 Richard Stallman <rms@gnu.ai.mit.edu>
3391
3392 * regex.c (re_match_2_internal):
3393 Rename label `succeed' to `succed_label'.
3394
3395 * xfns.c (Fx_synchronize): Fix doc string syntax.
3396
3397 * xmenu.c: Don't include ../oldXMenu/XMenu.h if USE_X_TOOLKIT.
3398
3399 * Makefile.in.in: Fix erroneous comment syntax.
3400
3401 * s/ultrix4-3.h: New file.
3402
3403 * systty.h: Have just one conditional to include unistd.h.
3404 Test NEED_UNISTD_H, not AIX and IRIX4.
3405 (UNISTD_H_INCLUDED): Don't define or test this.
3406 * m/ibm370aix.h (NEED_UNISTD_H): Defined.
3407 * s/aix3-1.h (NEED_UNISTD_H): Defined.
f102186f 3408 * s/irix4-0.h (NEED_UNISTD_H): Define.
615d0182
DL
3409
3410 * fileio.c (internal_delete_file, internal_delete_file_1):
3411 New functions.
3412 * buffer.c (Fkill_buffer): Use internal_delete_file.
3413 * callproc.c (delete_temp_file): Use internal_delete_file.
3414
34151994-11-25 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
3416
3417 * search.c (search_regs_saved): Don't initialize; it dumps as pure.
3418
b344d29d 34191994-11-24 Francesco Potortì <pot@cnuce.cnr.it>
615d0182
DL
3420
3421 * m/delta.h (C_SWITCH_MACHINE): -inline-functions removed,
f102186f 3422 because the compiler shipped with R3V7 is not stable.
615d0182
DL
3423
34241994-11-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3425
3426 * keyboard.c (command_loop_1): Use safe_run_hooks to run
3427 deferred-action-function.
3428 (Qdeferred_action_function): New variable.
3429 (syms_of_keyboard): Initialize and staticpro Qdeferred_action_function.
3430
34311994-11-23 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3432
3433 * keyboard.c (syms_of_keyboard): Doc fix.
3434
3435 * fns.c (Fy_or_n_p): Handle exit-prefix in query-replace-map.
3436
34371994-11-22 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3438
3439 * search.c (save_search_regs): Add declaration.
3440
3441 * minibuf.c (Fminibuffer_complete_and_exit):
3442 Catch errors in do_completion.
3443 (complete_and_exit_1, complete_and_exit_2): New subroutines.
3444
3445 * s/aix4.h: New file.
f102186f 3446 * s/aix3-1.h (AIXHFT): Define.
615d0182
DL
3447 * m/ibmrs6000.h (OBJECTS_MACHINE): Define only if AIXHFT.
3448
10d1d0af 3449 * sysdep.c (init_sys_modes): Test AIXHFT, not AIX.
615d0182
DL
3450 (reset_sys_modes): Test AIXHFT.
3451 (hft_init, hft_reset): Test AIXHFT, not AIX.
3452
34531994-11-21 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3454
3455 * window.c (Fdisplay_buffer): Use `b' to read existing buffer name.
3456
34571994-11-21 David J. MacKenzie (djm@mole.gnu.ai.mit.edu)
3458
3459 * config.h.in: Add #undefs for --with-pop, --with-kerberos, and
3460 --with-hesiod.
3461
b344d29d 34621994-11-19 Francesco Potortì <pot@cnuce.cnr.it>
615d0182 3463
087b38a0 3464 * lisp.h (running_asynch_code): New global flag.
615d0182 3465 * emacs.c (running_asynch_code): New global flag.
e1dbe924 3466 (main): Initialize it.
615d0182
DL
3467 * process.c (read_process_output, exec_sentinel): Set and
3468 reset the running_asynch_code global flag and restore match data.
3469
3470 * search.c (Flooking_at, Fstring_match, search_buffer,
3471 Fstore_match_data): Save the match data if a filter or a sentinel
3472 is running.
3473 (search_regs_saved, saved_search_regs): New variables.
3474 (save_search_regs, restore_match_data): New functions.
3475
34761994-11-19 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3477
3478 * emacs.c (sort_args): New function.
3479 (main): Call sort_args.
3480 Check for -d/-display after -nw, -batch, -help.
3481 Accept --display, with arg attached or separate.
3482
34831994-11-18 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3484
3485 * filelock.c (init_filelock): Add missing semicolon.
3486
34871994-11-18 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
3488
3489 * indent.c (recompute_width_table): Do the right thing if no previous
3490 table existed.
3491 Fix Lisp_Object vs. integer problem.
3492 (width_run_cache_on_off): Let recompute_width_table create the vector.
3493
34941994-11-17 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
3495
087b38a0 3496 * lisp.h (enum Lisp_Misc_Type): Rename Lisp_Vector to
615d0182
DL
3497 Lisp_Vectorlike. Mark Lisp_Window_Configuration as obsolete.
3498 (PSEUDOVECTOR_FLAG, PSEUDOVECTOR_SIZE_MASK, PVEC_BUFFER,
3499 PVEC_PROCESS, PVEC_FRAME, PVEC_COMPILED, PVEC_WINDOW,
3500 PVEC_WINDOW_CONFIGURATION): New constants.
3501 (XSETPSEUDOVECTOR, PSEUDOVECTORP, VECTORLIKEP): New macros.
3502 (XSETVECTOR, XSETWINDOW_CONFIGURATION, VECTORP,
3503 WINDOW_CONFIGURATIONP): Use the new convention.
3504 (XSETCOMPILED): New macro.
3505 * print.c (print): Use type test macros.
3506 * keymap.c (Fsingle_key_description): Likewise.
3507 * doc.c (Fdocumentation): Likewise.
3508 * alloc.c (Fpurecopy): Likewise.
3509 (mark_object): Use the new pseudovector convention.
3510 * fns.c (Fvconcat, concat): Use Lisp_Vectorlike.
3511 * ntinevt.c (SET_FRAME): Use accessor macros.
3512 (key_event, do_mouse_event): Likewise.
3513
35141994-11-17 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3515
3516 * filelock.c (init_filelock): Always copy lock_path.
3517 (lock_dir, superlock_file, MAKE_LOCK_NAME):
3518 Renamed from lock_path, superlock_path, MAKE_LOCK_PATH.
3519
35201994-11-16 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3521
3522 * s/domain.h: New file.
3523
35241994-11-16 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
3525
3526 * s/gnu.h [NOT_C_CODE]: Include fcntl.h.
3527
35281994-11-16 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3529
3530 * xdisp.c (try_window, display_text_line): Undo previous change.
3531
3532 * dired.c (Fdirectory_files): Pass new arg to `compile_pattern'.
3533
3534 * search.c (struct regexp_cache): New field `posix'.
3535 (compile_pattern_1): New arg `posix'. Controls the syntax spec
3536 for parsing; also record it in the cache.
3537 (compile_pattern): New arg `posix'.
3538 (looking_at_1, string_match_1, fast_string_match): Pass 0 for new arg.
3539 (search_buffer): New arg `posix'. Now static.
3540 (search_command): New arg `posix'. All callers changed.
3541 (Fposix_search_forward, Fposix_search_backward): New functions.
3542 (string_match_1, looking_at_1): New subroutines broken out.
3543 (Fstring_match, Flooking_at): Use them.
3544 (Fposix_string_match, Fposix_looking_at): New functions.
3545 (syms_of_search): defsubr new functions.
3546
35471994-11-16 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
3548
3549 * xdisp.c (try_window): Don't pass window to Fget_char_property;
3550 pass its buffer.
3551 (display_text_line): Likewise.
3552
b344d29d 35531994-11-16 Francesco Potortì (pot@cnuce.cnr.it)
615d0182
DL
3554
3555 * Makefile.in.in (TAGS): The new etags allows tagging DEFVARs.
3556
35571994-11-15 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3558
3559 * lread.c (Fload): Call Fsubstitute_in_file_name after trying handler.
3560
3561 * fileio.c (Fread_file_name_internal): Protect orig_string.
3562
35631994-11-15 enami tsugutomo <enami@sys.ptg.sony.co.jp>
3564
3565 * keyboard.c (Fopen_dribble_file): Call fclose only when
3566 dribble is non zero.
3567
35681994-11-15 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
3569
3570 * keymap.c (access_keymap): Use type test macros.
3571
3572 * alloc.c (Fmake_vector): Call allocate_vectorlike.
3573 (allocate_vectorlike): New function, extracted from Fmake_vector.
3574 * lisp.h: Declare allocate_vectorlike.
3575 (VECSIZE): New macro.
3576 * process.c (make_process): Use allocate_vectorlike and VECSIZE.
3577 * frame.c (make_frame): Likewise.
3578 * window.c (make_dummy_parent, make_window): Likewise.
3579 (Fcurrent_window_configuration): Likewise.
3580 (SAVE_WINDOW_DATA_SIZE): Macro deleted.
3581
3582 * lisp.h: Delete declaration of Farray_length.
3583 * data.c (Farray_length): Delete this obsolete function.
3584 (Faref, Faset): If object is a string, use XSTRING, not XVECTOR.
3585 * fns.c (Flength): Don't call Farray_length, just use size field.
3586
3587 * xterm.h (XSCROLL_BAR): Extract from Lisp_Vector, not generic pointer.
3588
3589 * xselect.c (wait_for_property_change): Encode location as a cons
3590 of two integers instead of lying about the type.
3591 (wait_for_property_change_unwind): Decode it likewise.
3592
3593 * eval.c (Finteractive_p): Use XSUBR instead of its expansion.
3594
3595 * lisp.h (GC_INTEGERP, etc): New type-test macros for use during GC.
3596 * buffer.h (OVERLAY_POSITION): Use the new type-test macros.
3597 * process.c (NETCONN_P, kill_buffer_processes): Likewise.
3598 * buffer.c (overlays_at): Likewise.
3599 * filelock.c (unlock_all_files): Likewise.
3600 * xfns.c (x_window_to_frame): Likewise.
3601 (x_any_window_to_frame, x_top_window_to_frame): Likewise.
3602 * fileio.c (Fdo_auto_save): Likewise.
3603
3604 * xfaces.c (Fpixmap_spec_p): Avoid function calls and assignments
3605 as arguments to a type-test macro.
3606 * textprop.c (PLIST_ELT_P): Likewise.
3607 * keymap.c (current_minor_maps): Likewise.
3608
3609 * lisp.h (NATNUMP): New macro.
3610 (CHECK_NATNUM): Use that macro instead of its expansion.
3611 * data.c (Fnatnump): Likewise.
3612 * xfns.c (x_set_frame_parameters): Likewise.
3613 * keymap.c (access_keymap, store_in_keymap): Likewise.
3614 * doc.c (Fdocumentation): Likewise.
3615 * alloc.c (Fmake_list): Use CHECK_NATNUM instead of its expansion.
3616 Now signals using `wholenump' instead of `natnump'.
3617 (Fmake_vector, Fmake_string): Likewise.
3618
3619 * data.c (syms_of_data): Set Qwholenump as function, not variable.
3620
3621 * alloc.c (free_float): Don't assume XFASTINT accesses the raw bits.
3622 (make_float, free_cons, Fcons, Fmake_symbol, gc_sweep): Likewise.
3623
36241994-11-15 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3625
3626 * xterm.c (x_mouse_leave): New function broken out of XTread_socket.
3627 When x_focus_event_frame is nonzero, assume that frame gets focus.
3628 (XTread_socket): Use x_mouse_leave for LeaveNotify.
3629 * xmenu.c (xmenu_show): Call x_mouse_leave.
3630
3631 * fileio.c (Fsubstitute_in_file_name): Run a handler.
3632 (Qsubstitute_in_file_name): New variable.
3633 (syms_of_fileio): Set it up.
3634
3635 * lread.c (read_escape): For \S-a, return A.
3636
3637 * buffer.c (Frename_buffer): Rename arg NAME to NEWNAME.
3638
36391994-11-14 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3640
3641 * s/freebsd.h (LD_SWITCH_SYSTEM): Add -dc and -dp.
3642 (HAVE_GETPAGESIZE): Defined.
3643
3644 * sysdep.c (init_sys_modes): Maybe call tcflow.
3645
36461994-11-14 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
3647
087b38a0 3648 * lisp.h (enum Lisp_Misc_Type): Add new enumeration Lisp_Misc_Overlay.
615d0182
DL
3649 (enum Lisp_Type): Delete the corresponding enumeration from here.
3650 (struct Lisp_Overlay): New structure.
3651 (XOVERLAY, OVERLAYP): Access the new structure.
3652 (union Lisp_Misc): Add new member.
3653 * buffer.h (OVERLAY_START, OVERLAY_END): Use the new substructure.
3654 * alloc.c (mark_object, gc_sweep): Likewise.
3655 * print.c (print): Likewise.
3656 * buffer.c (Fmake_overlay): Likewise.
3657 (Foverlay_properties, Foverlay_get, Foverlay_put): Likewise.
3658 * fns.c (internal_equal): Likewise.
3659 Simplify by returning int.
3660 (Fequal): Use new interface to internal_equal.
3661
3662 * buffer.c (list_buffers_1): Use PT, not point.
3663
36641994-11-14 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3665
3666 * fileio.c (Finsert_file_contents): Init not_regular at the beginning.
3667
36681994-11-14 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
3669
3670 * buffer.c (Fkill_all_local_variables): Use XBUFFER_LOCAL_VALUE,
3671 not XCONS.
3672
36731994-11-14 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
3674
3675 * s/gnu.h (A_TEXT_OFFSET): Macro removed.
3676 (A_TEXT_SEEK): Define to just sizeof (struct exec).
3677
36781994-11-14 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
3679
3680 * lread.c (defvar_int): Use accessor macro.
3681 (defvar_bool, defvar_lisp_nopro, defvar_per_buffer): Likewise.
3682
36831994-11-13 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3684
3685 * xfaces.c (load_pixmap): Handle bitmap_id < 0. F is a FRAME_PTR.
3686
3687 * frame.c (syms_of_frame): Fix typo.
3688
3689 * minibuf.c (Fdisplay_completion_list): Update COLUMN unconditionally.
3690 If a name is long, put it on its own line.
3691
36921994-11-13 Brendan Kehoe (brendan@lisa.cygnus.com)
3693
3694 * s/hpux9.h (C_SWITCH_SYSTEM) [__GNUC__]: Set -D_BSD to get the
3695 correct definitions from sys/wait.h.
3696
36971994-11-12 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3698
3699 * frame.c (syms_of_frame): Doc fix for default-frame-alist.
3700
37011994-11-11 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3702
3703 * fileio.c (Finsert_file_contents): If VISIT, set the buffer components
3704 such as the filename even before signaling error for non-regular file.
3705
3706 * s/iris3-5.h, s/iris3-6.h (MAIL_USE_FLOCK): Defined.
3707 * s/irix3-3.h, s/irix5-0.h (MAIL_USE_FLOCK): Defined.
3708 * s/irix5-2.h: New file.
3709
3710 * m/paragon.h: New file.
3711
37121994-11-11 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
3713
087b38a0 3714 * lisp.h (enum Lisp_Misc_Type): Add new enumerations
615d0182
DL
3715 Lisp_Misc_Buffer_Local_Value and Lisp_Misc_Some_Buffer_Local_Value.
3716 (enum Lisp_Type): Delete the corresponding enumerations from here.
3717 (struct Lisp_Buffer_Local_Value): New structure.
3718 (XBUFFER_LOCAL_VALUE): Access the new structure.
3719 (BUFFER_LOCAL_VALUEP, BUFFER_SOME_LOCAL_VALUEP): Likewise.
3720 (union Lisp_Misc): Add new member.
3721 * alloc.c (mark_object): New code to handle buffer-local substructure.
3722 (gc_sweep): Generalize marker code to handle other substructures.
3723 * bytecode.c (Fbyte_code): Special case for buffer-local objects is
3724 now handled by the more general test. Simplify.
3725 * buffer.c (set_buffer_internal): Use XBUFFER_LOCAL_VALUE, not XCONS.
3726 * data.c (store_symval_forwarding): Likewise.
3727 (swap_in_symval_forwarding, Fset, default_value, Fset_default,
3728 Fkill_local_variable): Likewise.
3729 (Fmake_variable_buffer_local): Use the new substructure.
3730 (Fmake_local_variable): Likewise.
3731
37321994-11-10 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3733
3734 * process.c (create_process) [OSF1]: Use setpgid, not setpgrp.
3735
37361994-11-09 Boris Goldowsky <boris@cs.rochester.edu>
3737
3738 * cmds.c (Fnewline): Always use insert_and_inherit.
3739
37401994-11-09 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
3741
3742 * lisp.h (FRAMEP): Use the second definition whenever HAVE_MOUSE.
3743
3744 * keyboard.c (tracking_off): Test old value with NILP.
3745 Restore the old value whatever it may be.
3746 (syms_of_keyboard): Use DEFVAR_LISP for track-mouse.
3747
37481994-11-09 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
3749
3750 * data.c (Fboundp, find_symbol_value): Use type test macros
3751 instead of checking XTYPE directly.
3752
3753 * keyboard.c (print_help): Set help-mode in *Help* buffer.
3754 * keymap.c (describe_buffer_bindings): Likewise.
3755 * syntax.c (describe_syntax_1): Likewise.
3756
37571994-11-08 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
3758
3759 * keyboard.c (EVENT_QUEUES_EMPTY): Only test do_mouse_tracking and
3760 mouse_moved #ifdef HAVE_MOUSE.
3761 (Ftrack_mouse): Protect with #ifdef HAVE_MOUSE.
3762 (syms_of_keyboard): Protect initialization of do_mouse_tracking,
3763 defsubr of Strack_mouse, and DEFVAR of track-mouse with #ifdef
3764 HAVE_MOUSE.
3765
37661994-11-07 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
3767
3768 * frame.c (Fset_frame_height): Compare against height, not width.
3769
37701994-11-07 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
3771
3772 * keyboard.c: Move decl of input_fd outside of #ifdef
3773 HAVE_X_WINDOWS.
3774
37751994-11-03 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
3776
3777 * xterm.c (XTread_socket): Generate iconify and deiconify events.
3778
37791994-11-03 Geoff Voelker <voelker@cs.washington.edu>
3780
3781 * m/intel386.h (VIRT_ADDR_VARIES) [WINDOWSNT]: Defined.
3782 (DATA_END) [WINDOWSNT]: Defined.
3783 (DATA_START) [WINDOWSNT]: Defined.
3784 (HAVE_ALLOCA) [WINDOWSNT]: Defined.
3785
3786 * s/windowsnt.h: Include malloc.h.
3787 (MODE_LINE_BINARY_TEXT): Defined.
3788 (HAVE_MOUSE): Defined.
3789
3790 * ntheap.c (sbrk): Allow request sizes to be different than the
3791 page size.
3792
3793 * makefile.nt: Changed references of m\m-windowsnt.h to
3794 m\intel386.h and of s\s-windowsnt.h to s\windowsnt.h.
3795
37961994-11-01 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
3797
3798 * xfns.c (Fx_list_fonts): Don't bother to retrieve font info when
3799 there's no size_ref to compare it against.
3800
087b38a0 3801 * editfns.c (Fdecode_time): Fix Lisp_Object vs. integer problems.
615d0182
DL
3802 Don't use tm_gmtoff; it's not portable.
3803
3804 * lisp.h: Leave DEVICE_SEP undefined by default.
3805
38061994-11-01 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3807
3808 * buffer.c (init_buffer): Fix error message syntax.
3809
3810 * fileio.c (Fsubstitute_in_file_name): Add missing #endif.
3811
3812 * lread.c: Don't include ctype.h.
3813 (isfloat_string, read1): Don't use isdigit.
3814
3815 * editfns.c (Fdecode_time): Change one XFASTINT to XINT.
3816
3817 * s/windowsnt.h (SYSTEM_PURESIZE_EXTRA): Defined.
3818
38191994-10-31 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
3820
3821 * xfns.c (x_window): Make ibw 0 by default.
3822
38231994-10-31 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
3824
3825 * xterm.c (XTclear_end_of_line): Finish the line dance here too,
3826 just as was done in XTwrite_glyphs.
3827
3828 * xdisp.c (column_number_displayed): New variable.
3829 (redisplay, redisplay_window): If that var is set, do mode line.
3830 (display_mode_line): Unset the var.
3831 (decode_mode_spec): Set the var if %c was seen.
3832
10d1d0af 38331994-10-30 Geoff Voelker <voelker@cs.washington.edu>
615d0182
DL
3834
3835 * makefile.nt: New file.
3836 * nt.c, nt.h: New files.
3837 * ntheap.c, ntheap.h: New files.
3838 * ntinevt.c, ntinevt.h: New files.
3839 * ntproc.c, ntterm.c: New files.
3840
3841 * m/windowsnt.h, s/windowsnt.h: New files.
3842
3843 * nt.c: New file.
3844
3845 * makefile.nt:New file.
3846
3847 * lisp.h (DEVICE_SEP, DIRECTORY_SEP, IS_DEVICE_SEP)
3848 (IS_DIRECTORY_SEP, IS_ANY_SEP): New macros, defined if not already def.
3849
3850 * s/msdos.h (DOS_NT): Defined.
3851
3852 * term.c (term_init) [WINDOWSNT]: Do some Windows-specific
3853 initialization, then skip the rest of the code.
3854 (FRAME_TERMCAP_P) [WINDOWSNT]: Always return 0.
3855
3856 * systty.h: Test DOS_NT, not MSDOS.
3857
3858 * syssignal.h [WINDOWSNT] (EMACS_KILLPG): Use win32_kill_process.
3859
3860 * sysdep.c [WINDOWSNT]: Add includes for NT.
3861 Define _P_WAIT. Declare _spawnlp, _getpid.
3862 [WINDOWSNT] (select, strerror, vfork): Don't use these definitions.
3863
3864 * sysdep.c (init_sys_modes): Test DOS_NT, not MSDOS.
3865 (emacs_get_tty, emacs_set_tty,(child_setup_tty, init_baud_rate): Ditto.
3866
3867 * sysdep.c (sys_subshell) [WINDOWSNT]: Use _spawnlp. not vfork.
3868 (wait_for_termination) [WINDOWSNT]: Use wait.
3869 (discard_tty_input) [WINDOWSNT]: Do nothing at all.
3870
3871 * process.c: Use macros IS_ANY_SEP, IS_DIRECTORY_SEP,
3872 IS_DEVICE_SEP, DIRECTORY_SEP, and DEVICE_SEP.
3873 [WINDOWSNT]: Add includes. Don't define sys_siglist.
3874
3875 * process.c (sigchld_handler): Work around bug in MS C compiler.
3876 (sigchld_handler) [WINDOWSNT]: Do not call signal.
3877 (signal_process) [WINDOWSNT]: Use win32_kill_process instead of kill.
3878 (read_process_output) [WINDOWSNT]: Use read_child_output instead of
3879 read.
3880
3881 * process.c (create_process) [WINDOWSNT]: Use
3882 pipe_with_inherited_out and pipe_with_inherited_in.
3883 Use the pid returned by child_setup. Deal with not having vfork,
3884 Call register_child.
3885 (close_process_descs): Do nothing if WINDOWSNT.
3886
3887 * process.c (proc_buffer_char): No longer static.
3888
3889 * ndir.h (MAXNAMLEN) [WINDOWSNT]: Define as 255.
3890
3891 * mem-limits.h [WINDOWSNT]: Don't include vlimit.h.
3892 (get_lim_data): Alternate definition for WINDOWSNT.
3893
3894 * lread.c: Change explicit uses of the Unix directory separator
3895 '/' to uses of the macros IS_ANY_SEP, IS_DIRECTORY_SEP,
3896 IS_DEVICE_SEP, DIRECTORY_SEP, and DEVICE_SEP.
3897
3898 * lread.c (init_lread) [WINDOWSNT]: Disable warnings about
3899 directories in the load path not existing.
3900
3901 * lread.c (load): Test DOS_NT instead of MSDOS.
3902
3903 * keyboard.c (read_key_sequence): Use flags instead of gotos to
3904 enable the Microsoft C compiler to compile the routine.
3905
3906 * keyboard.c (read_avail_input) [WINDOWSNT]: Just return 0.
3907
3908 * fileio.c: Change explicit uses of the Unix directory separator
3909 '/' to uses of the macros IS_ANY_SEP, IS_DIRECTORY_SEP,
3910 IS_DEVICE_SEP, DIRECTORY_SEP, and DEVICE_SEP.
3911
3912 * fileio.c [WINDOWSNT]: Don't define HAVE_FSYNC; add includes for NT.
3913
3914 * fileio.c (Ffile_name_absolute_p): Test DOS_NT instead of MSDOS.
3915 (Fwrite_region, Fdo_auto_save, Ffile_modes): Likewise.
3916
3917 * fileio.c (Qfind_buffer_file_type): Test DOS_NT instead of MSDOS.
3918 (syms_of_files): Likewise.
3919 (Finsert_file_types): Test DOS_NT instead of MSDOS.
3920 Rename local var try to trytry.
3921
10d1d0af 3922 * fileio.c (Fadd_name_to_file): Always fail.
615d0182
DL
3923 (Frename_file) [WINDOWSNT]: Use MoveFile, not link and unlink,
3924 and check for both ERROR_FILE_EXISTS and ERROR_ALREADY_EXISTS.
3925 (Fmake_directory_internal) [WINDOWSNT]: Invoke mkdir without the mask.
3926
3927 * fileio.c (Fexpand_file_name): Test DOS_NT, not MSDOS.
3928 (Fexpand_file_name) [WINDOWSNT]: Accept // or \\ at start.
3929 Call dostonunix_filename for HOME envvar, for ~USER.
3930 Quote directory separators found in environment variables.
3931 (Fsubstitute_in_file_name): Test DOS_NT instead of MSDOS.
3932 (Fsubstitute_in_file_name) [WINDOWSNT]: Accept // or \\ at start.
3933 Work around alloca bug in MS compiler.
3934 (Ffile_name_directory): Test DOS_NT instead of MSDOS sometimes.
3935 But don't insert a drive letter on windows.
3936
3937 * emacs.c (Fdump_emacs): Don't reset the data start address by
3938 invoking memory_warnings just before unexec-ing.
3939
3940 * editfns.c (init_editfns): Get the username from the environment
3941 variable USERNAME instead of USER.
3942
3943 * dired.c: Use macros IS_ANY_SEP, IS_DIRECTORY_SEP, and DIRECTORY_SEP.
3944 (file-attributes) [WINDOWSNT]: Set st_gid and st_uid to Qnil; use
3945 get_inode_and_device_vals to fake up inode number and device number.
3946
3947 * callproc.c (getenv_internal) [WINDOWSNT]: Use strnicmp, not bcmp.
3948
3949 * callproc.c (child_setup): Use IS_DIRECTORY_SEP.
3950 [WINDOWSNT]: Call prepare_standard_handles. Use spawnve.
3951 Use reset_standard_handles.
3952
3953 * callproc.c (Fcall_process_region): Test DOS_NT, not MSDOS.
3954 (Fcall_process) [WINDOWSNT]: Call pipe_with_inherited_out.
3955 Use the return value of child_setup to get the child's pid;
3956 don't call vfork etc. explicitly.
3957
087b38a0 3958 * callproc.c [WINDOWSNT]: Add includes. Define NOMINMAX, _P_NOWAIT.
615d0182
DL
3959 (Vbinary_process_input, Vbinary_process_output)
3960 (Qbuffer_file_type): Test DOS_NT, not MSDOS.
3961 (syms_of_callproc): Test DOS_NT, not MSDOS.
3962
3963 * callproc.c (init_callproc): Test DOS_NT, not MSDOS.
3964
3965 * buffer.h (struct buffer): Test DOS_NT, not MSDOS.
3966
3967 * buffer.c (init_buffer): Use DIRECTORY_SEP, IS_DIRECTORY_SEP macros,
3968 not character constants.
3969 (init_buffer_once, syms_of_buffer): Test DOS_NT, not MSDOS.
3970
39711994-10-30 Erik Naggum <erik@naggum.no>
3972
3973 * editfns.c (Fdecode_time): New function.
3974 (syms_of_editfns): defsubr it.
3975
39761994-10-30 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
3977
3978 * keyboard.c (make_lispy_event): Record double and triple for drags.
3979 Put in click_modifier for multi-clicks.
3980 (read_key_sequence): Convert double-drag first to plan drag,
3981 and only later try a click.
3982
3983 * unexsunos4.c (unexec): Don't print number of pure bytes used.
3984
39851994-10-29 Richard Stallman <rms@mole.gnu.ai.mit.edu>
3986
3987 * xfns.c (Fx_create_frame):
3988 Don't set xlwmenu_default_font if not USE_X_TOOLKIT.
3989
3990 * puresize.h (BASE_PURESIZE): Increment MULTI_FRAME value.
3991
39921994-10-29 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
3993
3994 * keyboard.c (read_avail_input): Fix Lisp_Object vs. int problem.
3995
39961994-10-29 Richard Stallman <rms@pogo.gnu.ai.mit.edu>
3997
3998 * xterm.c (fast_find_position): Special case if POS is end of buffer.
3999
4000 * xterm.c (x_delete_display): Call XrmDestroyDatabase.
4001
40021994-10-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4003
4004 * s/osf1.h (LD_SWITCH_SYSTEM): Definitions deleted.
4005
4006 * m/alpha.h (LD_SWITCH_MACHINE): New definition.
4007
40081994-10-28 Rainer Schoepf <Schoepf@Uni-Mainz.de>
4009
4010 * s/osf1.h (INTERRUPTIBLE_IO, INTERRUPTIBLE_OPEN, INTERRUPTIBLE_CLOSE)
4011 (read, write, open, close): New definitions.
4012
40131994-10-27 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
4014
4015 * buffer.c (Fset_buffer_major_mode): New function. Set the
4016 default major mode here.
4017 (Fget_buffer_create): Not here.
4018 (Fswitch_to_buffer): Call Fset_buffer_major_mode.
4019 (syms_of_buffer): defsubr the new function.
4020
4021 * termhooks.h (iconify_event, deiconify_event): New enum event_kind's.
4022 * keyboard.c (kbd_buffer_get_event): Translate them to lispy events.
4023 (head_table): Initialize those new symbols appropriately.
4024 * frame.c (keys_of_frame): Bind those events to 'ignore, since the
4025 window manager has already done the work.
4026
4027 * xmenu.c (set_frame_menubar): Don't copy string during GC risk.
4028
40291994-10-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4030
4031 * config.h.in (HAVE_GETPAGESIZE): Add #undef.
4032 * m/sequent-ptx.h (HAVE_GETPAGESIZE): Explicitly #undef.
4033 * s/linux.h, s/msdos.h (HAVE_GETPAGESIZE): Definition deleted.
4034 * m/symmetry.h (HAVE_GETPAGESIZE): Definition deleted.
4035
4036 * xterm.c (x_destroy_window): Rewrite to fetch dpyinfo just once.
4037
4038 * xfns.c (Fx_create_frame): Set xlwmenu_default_font.
4039
4040 * widget.c (set_frame_size): Set app_shell and wmshell the same.
4041
4042 * xterm.c [USE_X_TOOLKIT]: Make application context explicitly
4043 and support multiple top-level shells.
4044 (x_initialize): Call XtToolkitInitialize, XtCreateApplicationContext;
4045 don't open display or make a shell.
4046 (x_term_init): Call XtOpenDisplay.
4047
4048 * xfns.c [USE_X_TOOLKIT] (x_window): Use XtAppCreateShell.
4049 (Xt_app_shell, Xt_app_con): Variables deleted.
4050 (Fx_close_connection) [USE_X_TOOLKIT]: Call XtCloseDisplay.
4051
4052 * xterm.c (x_scroll_bar_create): Use XMapRaised directly.
4053 (x_make_frame_visible, x_iconify_frame): Likewise.
4054 (XMapWindow): Macro definition deleted.
4055 (METABIT): Macro deleted.
4056 (MAXDESC, FD_SETSIZE, FD_SET, FD_CLEAR, FD_ZERO, FD_ISSET): Likewise.
4057 (x_id_name): Variable deleted.
4058
4059 * process.c (status_message): Add a cast.
4060 (sigchld_handler): Add a cast.
4061
4062 * xfns.c (x_window): Pass new arg f to hack_wm_protocols.
4063
4064 * xdisp.c (display_text_line): Truncate the minibuf_prompt if nec.
4065
40661994-10-26 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
4067
4068 * window.c (syms_of_window): Fix missing \n\'s.
4069
40701994-10-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4071
4072 * xselect.c (x_own_selection, x_get_foreign_selection): Change calls
4073 to x_catch_errors and friends.
4074
4075 * xfns.c (x_set_mouse_color, x_real_positions): Change calls
4076 to x_catch_errors and friends.
4077
4078 * xterm.c (x_catch_errors, x_check_errors, x_had_errors_p)
4079 (x_uncatch_errors): Make the argument a display, not a frame.
4080
4081 * xterm.c (XTread_socket_fake_io_error): New variable.
4082 (XTread_socket): Obey XTread_socket_fake_io_error.
4083
40841994-10-25 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
4085
4086 * process.c (list_processes_1): Print tty name.
4087
40881994-10-25 Karl Fogel (kfogel@phylo.life.uiuc.edu)
4089
4090 * window.c (Vtemp_buffer_show_function): Doc fix.
4091
40921994-10-25 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4093
4094 * xterm.h: Delete X10 code.
4095
40b1a3a9 4096 * xfns.c (Fx_create_frame): Don't increment reference_count
615d0182
DL
4097 until the frame is put on the frame list.
4098
4099 * xterm.c (x_initialize): Init x_noop_count, x_focus_frame
4100 and x_highlight_frame here.
4101 (x_term_init): Not here.
4102
4103 * xterm.c (x_term_init): Open the connection first thing;
4104 if that fails, don't allocate dpyinfo.
4105
41061994-10-24 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
4107
4108 * xdisp.c (decode_mode_spec): New spec %c, for current column.
4109
41101994-10-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4111
4112 * xselect.c (Fx_selection_exists_p): Fix backwards if.
4113
4114 * xterm.c (x_delete_display): New function.
4115 (x_connection_closed): New args dpyinfo and error_message.
4116 Delete all frames on the dead display
4117 and all frames using them for minibuffers.
4118 Call x_delete_display.
4119 Maybe signal a Lisp error.
4120 * xfns.c (Fx_close_connection): Call x_delete_display.
4121
4122 * xselect.c (Fx_selection_exists_p):
4123 If selected_frame isn't an x frame, return nil.
4124
4125 * keyboard.c (record_char): New subroutine.
4126 (read_char): Use record_char.
4127 Split up menu-bar mouse click events here.
4128 Call record_char for both halves; likewise echo_char
4129 and add_command_key.
4130
41311994-10-23 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4132
4133 * xfns.c (x_display_info_for_name, Fx_open_connection):
4134 Signal error if x_term_init fails.
4135 (Fx_open_connection): New arg must_succeed.
4136
4137 * xfns.c (x_real_positions): Catch errors and retry if error happens.
4138 No need to block input here.
4139
4140 * xterm.c (x_term_init): Don't report error here--just return 0.
4141
4142 * xfns.c (Fx_create_frame): Don't store the frame name
4143 till after FRAME_X_DISPLAY_INFO is set up.
4144 (Fx_close_connection): Renamed from Fx_close_current_connection
4145
4146 * xfns.c: Many doc fixes and Lisp function arg renamings.
4147
4148 * xterm.c (x_scroll_bar_report_motion): Store proper value in
4149 *bar_window (the Emacs window, not the X window number).
4150
41511994-10-22 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4152
4153 * keyboard.c (kbd_buffer_get_event):
4154 Cope if mouse_position_hook does not store anything.
4155
4156 * xterm.c (x_scroll_bar_report_motion): Don't clear *fp.
4157
4158 * xterm.h (struct x_display_info):
4159 New fields bitmaps, bitmaps_size, bitmaps_last.
4160 (struct x_bitmap_record): Structure moved here.
4161 * xfns.c (x_bitmaps, x_bitmap_size, x_bitmap_last):
4162 Variables deleted. Use fields in x_display_info instead.
4163 (x_bitmaps_free): Variable deleted.
4164 (x_destroy_bitmap, x_allocate_bitmap_record): Don't use or set it.
4165 (x_allocate_bitmap_record): New arg f. Callers changed.
4166 (x_lookup_pixmap): Function deleted.
4167 (x_destroy_all_bitmaps): New function.
4168 (Fx_close_current_connection): Call x_destroy_all_bitmaps.
4169 Free the fonts in the font table. Free various other data
4170 that dpyinfo points to. Avoid using Fdelq.
4171
4172 * xterm.c (x_wm_set_icon_pixmap): Use x_bitmap_pixmap.
4173
4174 * xterm.c:
4175 (show_mouse_face): New arg dpyinfo. All callers changed.
4176 (clear_mouse_face): New arg dpyinfo. All callers changed.
4177
4178 * xterm.h (struct font_info): New type.
4179 (struct x_display_info): New fields font_table, font_table_size
4180 and n_fonts.
4181
4182 * xterm.h (struct x_display_info): New field scratch_cursor_gc.
4183 * xterm.c (scratch_cursor_gc): Variable deleted.
4184 (dumpglyphs): Use scratch_cursor_gc in x_display_info.
4185
4186 * xterm.h (mouse_face_*): New fields.
4187 * xterm.c (mouse_face_*): Variables deleted.
4188 Use fields in x_display_info instead.
4189 * xterm.c (syms_of_xterm): Don't staticpro mouse_face_window.
4190
4191 * xterm.c (expose_all_windows, expose_all_icons): Variables deleted.
4192 (BLOCK_INPUT_mask): Variable deleted.
4193
4194 * xterm.h (struct x_display_info): New field x_id_name.
4195 * xfns.c (x_set_name, Fx_create_frame): Use x_id_name field.
4196 * xterm.c (x_term_init): Set up x_id_name field.
4197 (x_id_name): Variable deleted.
4198
4199 * xterm.c (x_font_table, x_font_table_size, x_n_fonts): Vars deleted.
4200 (x_new_font): Use new fields.
4201 (warp_mouse_on_deiconify): Unused variable deleted.
4202
4203 * xterm.c (x_term_init): Set up dpyinfo->xrdb.
4204 Set up dpyinfo->vertical_scroll_bar_cursor.
4205 (x_scroll_bar_create): Use vertical_scroll_bar_cursor slot.
4206 (x_vertical_scroll_bar_cursor): Variable deleted.
4207
4208 * xterm.c (x_term_init): Really return dpyinfo.
4209
4210 * insdel.c (insert_from_buffer_1): Don't use min.
4211
4212 * xterm.c (x_term_init): Call add_keyboard_wait_descriptor,
4213 not change_keyboard_wait_descriptor.
4214
4215 * xfns.c (Fx_close_current_connection):
4216 Call delete_keyboard_wait_descriptor.
4217
4218 * process.c: Handle multiple keyboard input descriptors.
4219 (non_keyboard_wait_mask): New variable.
c4cc8b9a 4220 (Fset_process_filter): Update non_keyboard_wait_mask.
615d0182
DL
4221 (create_process, Fopen_network_stream, deactivate_process):
4222 (init_process, sigchld_handler): Likewise.
4223 (wait_reading_process_input): Maybe use non_keyboard_wait_mask.
4224 (add_keyboard_wait_descriptor):
4225 Renamed from change_keyboard_wait_descriptor.
4226 Clear the old descriptor's bit only the first call.
4227 (delete_keyboard_wait_descriptor): New function.
4228 (keyboard_bit_set): New function.
4229 (wait_reading_process_input): Use keyboard_bit_set.
4230 Start the loop over process descs from 0, and explicitly
4231 ignore non-process input descs.
4232 (init_process): Don't init keyboard_descriptor.
4233 (keyboard_descriptor): Variable deleted.
4234 (add_keyboard_wait_descriptor): Don't set keyboard_descriptor.
4235 (delete_keyboard_wait_descriptor): New function.
4236
4237 * xterm.c (x_term_init): Pass new arg to init_sigio.
4238 Don't set old_fcntl_owner.
4239 Don't call change_input_fd.
4240 (XTread_socket): Loop over displays and process input from each.
4241
4242 * sysdep.c: Never use input_fd if using X.
4243 (stuff_char): Do nothing if read_socket_hook.
4244 (setpgrp_of_tty): Function deleted.
4245 (init_sigio): Take fd as argument. Callers changed.
4246 Don't call request_sigio; do the work here.
4247 (request_sigio, unrequest_sigio): Do nothing if read_socket_hook.
4248 (init_sys_modes): Don't call EMACS_GET_TTY unless we are going
4249 to change the settings.
4250
4251 * xfns.c (Fx_close_current_connection): Call check_x_display_info.
4252 Delete the display from x_display_list and x_display_name_list.
4253 (Fx_display_list): New function.
4254 (syms_of_xfns): defsubr it.
4255
4256 * xterm.c (x_display_name_list): New variable.
4257 (syms_of_xterm): staticpro it.
4258 Don't staticpro slots in the_x_screen.
4259 (x_term_init): Update x_display_name_list along with x_display_list.
4260 Actually malloc the x_display_info.
4261 (the_x_screen): Variable deleted.
4262
4263 * xfns.c (Fx_list_fonts): Use `name_list_element' field.
4264 (x_display_info_for_name): Scan x_display_name_list
4265 along with x_display_list.
4266
4267 * xterm.h (struct x_display_info): Replace elements `name'
4268 and `face_list_cache' with one cons cell `name_list_element'.
4269 (x_display_name_list): Variable declared.
4270
42711994-10-22 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
4272
4273 * insdel.c (insert_from_buffer, insert_from_buffer_1): New functions.
4274 * editfns.c (Finsert_buffer_substring): Use insert_from_buffer
4275 instead of insert.
4276
42771994-10-21 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4278
4279 * xmenu.c (xmenu_show): Get the screen number for DisplayHeight
4280 and DisplayWidth. Use root_window slot in the x_display_info.
4281
4282 * xfns.c (x_sync): Take frame ptr as arg.
4283 * frame.c (other_visible_frames): Pass a frame ptr to x_sync.
4284 * xterm.c (x_make_frame_visible, x_make_frame_invisible):
4285 Pass a frame ptr to x_sync.
4286
42871994-10-21 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
4288
4289 * insdel.c (insert_before_markers): Don't inherit;
4290 insert_before_markers_and_inherit does that.
4291
42921994-10-21 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4293
4294 * dispnew.c (Fframe_or_buffer_changed_p):
4295 Detect deletion of a buffer at the end of the buffer list.
4296
4297 * xterm.c (x_term_init): Init all the components of dpyinfo.
4298
4299 * sysdep.c (input_fd): No longer static.
4300 * keyboard.c (read_avail_input): Use input_fd.
4301
43021994-10-20 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4303
4304 * xfns.c (check_x_display_info): New function.
4305 (Fx_create_frame): Use it.
4306 (Fx_display_*, Fx_server_*): Use fields in the x_display_info,
4307 not static variables. Call check_x_display_info.
4308
43091994-10-20 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
4310
4311 * window.c (Fdisplay_buffer): Make old_selected_window a Lisp_Object.
4312
43131994-10-20 Tom Tromey <tromey@drip.colorado.edu>
4314
4315 * buffer.c (list_buffers_1): Always mark current_buffer read-only.
4316
f0131492 43171994-10-20 Frederic Pierresteguy <F.Pierresteguy@frcl.bull.fr>
615d0182
DL
4318
4319 * m/dpx2.h (LD_SWITCH_MACHINE): Defined.
4320
43211994-10-20 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4322
4323 * term.c (calculate_costs): Call x_screen_planes.
4324 * xfns.c (x_screen_planes): New function.
4325
4326 * xterm.h (EMACS_CLASS): Macro moved here.
4327 * xfns.c (EMACS_CLASS): Macro moved to xterm.h.
4328
4329 * xfns.c (Qdisplay): New variable.
4330 (syms_of_xfns): Set it up.
4331 (Fx_create_frame): Handle display parameter
4332 which says where to get the FRAME_X_DISPLAY_INFO.
4333 (x_display_info_for_name): New function.
4334
4335 * xterm.c (x_display_info_for_display): New function.
4336
4337 * xselect.c (Xatom_*): Variables deleted.
4338 Use slots in x_display_info structure instead.
4339 (symbol_to_x_atom, x_atom_to_symbol):
4340 New arg dpyinfo. All callers changed.
4341 (xatoms_of_xselect): Function deleted.
4342
4343 * xfns.c (select_visual): New arg dpy.
4344
4345 * xterm.h (struct x_display_info): New fields *_mod_mask.
4346 * xterm.c (x_*_mod_mask): Variables deleted.
4347 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers):
4348 New arg dpyinfo; all callers changed.
4349 Store the masks in that structure.
4350
4351 * xterm.h (struct x_display_info): New field icon_bitmap_id.
4352 * xterm.c (icon_bitmap): Variable deleted.
4353 (x_bitmap_icon): Use icon_bitmap_id in x_display_info.
4354
4355 * xterm.c (icon_font_info): Variable deleted.
4356
4357 * xterm.h (struct x_display_info): New field `connection'.
4358 * xterm.c (x_term_init): Set up `connection' field.
4359
4360 * xterm.h (x_display_list): New variable.
4361 * xterm.c (x_find_modifier_meanings):
4362 Arg is now struct x_display_info *.
4363 (x_term_init): Return an x_display_info *.
4364 Store all the data in it, including X atoms and xrdb.
4365 Put the x_display_info structure on x_display_list.
4366 Pass name as Lisp_Object.
4367 (the_x_screen): Variable moved here.
4368 (syms_of_xterm): Staticpro parts of the_x_screen.
4369 * xfns.c (Fx_open_connection): Get dpyinfo from x_term_init.
087b38a0 4370 Don't set up atoms, xrdb here. Pass name as Lisp_Object.
615d0182
DL
4371 (the_x_screen): Variable moved to xterm.c.
4372 (syms_of_xfns): Don't staticpro it here.
4373
4374 * xterm.h (struct x_display_info): New field xrdb.
4375 * xfns.c (xrdb): Variable deleted.
4376 (Fx_get_resource): Use selected_frame's xrdb.
4377 (x_get_resource_string): Likewise.
4378
4379 * xterm.h (XExposeRegionEvent): Unused macro deleted.
4380 (XGetWindowInfo, XGetFont, XLoseFont): Unused macros deleted.
4381 (MINWIDTH, MINHEIGHT, MAXWIDTH, MAXHEIGHT): Unused macros deleted.
4382 (MAX_FACES_AND_GLYPHS, Bitmap): Unused macros deleted.
4383 (struct event_queue): Structure deleted (was unused).
4384 (EVENT_BUFFER_SIZE): Macro deleted.
4385
4386 * xterm.h (XClear): Macro deleted. Callers use XClearWindow.
4387 (XWarpMousePointer): Macro deleted. Callers use XWarpPointer.
4388 (XStuffPending): Macro deleted. Callers use XPending.
4389 (XHandleError, XHandleIOError): Macros deleted.
4390 Callers use XSet...ErrorHandler.
4391 (XChangeWindowSize): Macro deleted. Callers use XResizeWindow.
4392 (Color): Macro deleted; replaced with XColor.
4393 (FONT_TYPE): Macro deleted; replaced with XFontStruct.
4394 (PIX_TYPE): Macro deleted; replaced with unsigned long.
4395
4396 * xterm.h (FRAME_X_SCREEN): New macro.
4397 (WHITE_PIX_DEFAULT, BLACK_PIX_DEFAULT): Take arg f.
4398 * xfaces.c (unload_color): Pass arg f to WHITE_PIX_DEFAULT
4399 and BLACK_PIX_DEFAULT.
4400
4401 * xterm.c (windowinfo): Variable deleted.
4402
4403 * xterm.h (ROOT_WINDOW): Macro deleted.
4404 (struct x_display_info): New field root_window.
4405 All uses changed.
4406
4407 * xterm.h (XDISPLAY): Macro deleted.
4408 (XFlushQueue): Macro deleted. All callers changed.
10d1d0af 4409 (DISPLAY_SCREEN_ARG): Macro deleted.
615d0182
DL
4410 (DISPLAY_CELLS): Macro deleted.
4411 (WINDOWINFO_TYPE): Macro deleted.
4412
4413 * xterm.h (struct x_display_info): New fields Xatom...
4414 * xterm.c (Xatom_*): Variables deleted.
4415 (x_iconify_frame, XTread_socket): Get atoms from the x_display_info,
4416
4417 * xfns.c (Fx_open_connection): Store the atoms in x_display_info.
4418 (hack_wm_protocols): New arg f. Get atoms from x_display_info.
4419 (x_window): Get atoms from x_display_info.
4420
4421 * xfns.c (Vmouse_depressed, mouse_buffer_offset): Variables deleted.
4422 (syms_of_xfns): Delete Lisp variables too.
4423 (Fx_synchronize): Take frame as arg.
4424 (Fx_close_current_connection): Take frame as arg. Error is not fatal.
4425 * xterm.c (XTread_socket): Don't update Vmouse_depressed.
4426
4427 * xterm.h (struct x_display_info): New field grabbed.
4428 * xterm.c (x_mouse_grabbed): Variable deleted.
4429 (note_mouse_highlight): Use grabbed field instead.
4430 (XTmouse_position, XTread_socket): Likewise.
4431 * xmenu.c (xdialog_show, xmenu_show):
4432 Use grabbed field instead of x_mouse_grabbed.
4433
4434 * xfns.c (mouse_timestamp): Variable deleted.
4435
4436 * xterm.h (struct x_display_info): Struct renamed from x_screen.
4437 (x_display): x_screen field renamed to display_info.
4438 (FRAME_X_DISPLAY): Use new name.
4439 (FRAME_X_DISPLAY_INFO): Likewise; also renamed from FRAME_X_SCREEN.
4440
4441 * xterm.h (struct x_display_info):
4442 New fields height, width, screen, visual, n_planes.
4443 * xfns.c (screen_visual, x_screen_planes): Variables deleted.
4444 (x_screen, x_screen_height, x_screen_width): Variables deleted.
4445 (Fx_open_connection): Don't set them here.
4446 Put that info in the x_display_info structure.
4447 (x_window): Get the visual from x_display_info structure.
4448 (x_decode_color): Use n_planes from x_display_info structure.
4449 * xterm.c (x_calc_absolute_position, x_wm_set_size_hint):
4450 Get screen height, width from the x_display_info structure.
4451 * xmenu.c (xmenu_show): Use the screen in FRAME_X_DISPLAY_INFO,
4452 not the default screen.
4453
4454 * xterm.c: Use FRAME_X_DISPLAY instead of x_current_display
4455 and XDISPLAY.
4456
4457 * xfns.c: Use FRAME_X_DISPLAY instead of x_current_display
4458 and XDISPLAY.
c4cc8b9a 4459 (x_in_use): New variable.
615d0182
DL
4460 (check_x, using_x_p): Test x_in_use.
4461 (Fx_open_connection): Set x_in_use.
4462 (check_x_frame): New function.
4463 (defined_color): New arg f specifies frame. Callers changed.
4464 (x_decode_color): New arg f. All callers changed.
4465 (Fx_color_values, Fx_color_defined_p): New arg FRAME.
4466 Use check_x_frame.
4467 (Fx_list_fonts): Use check_x_frame.
4468
4469 * keyboard.c (do_mouse_tracking): Now a FRAME_PTR.
4470 (EVENT_QUEUES_EMPTY, Ftrack_mouse, tracking_off): Changed accordingly.
4471 (kbd_buffer_get_event): Let do_mouse_tracking specify the display
4472 for mouse tracking.
4473
4474 * minibuf.c (read_minibuf): Undo previous change.
4475
44761994-10-19 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4477
4478 * window.c (Fdisplay_buffer): If the other window is smaller
4479 than its peer, even out their heights.
4480
4481 * xterm.c (x_catch_errors, x_check_errors, d_errors_p)
4482 (x_uncatch_errors): Take frame as arg.
4483 (x_stop_queuing_selection_requests, x_unqueue_events, x_queue_event)
4484 (x_start_queuing_selection_requests): Take frame as arg.
4485 (x_find_modifier_meanings): New arg `display'. All callers changed.
4486 (x_scroll_bar_create, x_scroll_bar_set_handle)
4487 (x_scroll_bar_move): New local var f.
4488 (x_scroll_bar_report_motion): Rename arg f to fp.
4489 New local var f.
4490 (XTmouse_position): Lossage.
4491 (frame_highlight, frame_unhighlight): Arg frame renamed to f.
4492
4493 * callproc.c (child_setup): Always use _exit.
4494
4495 * xselect.c (x_own_selection, x_get_foreign_selection): Pass frame
4496 to x_catch_errors, x_check_errors, x_uncatch_errors.
4497
4498 * xfns.c (x_set_mouse_color): Pass frame to x_catch_errors,
4499 x_check_errors, x_uncatch_errors.
4500
4501 * xselect.c (x_get_foreign_selection): Get display from
4502 selected_frame. Pass frame to x_stop_queuing_selection_requests and
4503 x_start_queuing_selection_requests.
4504 (x_own_selection, Fx_disown_selection_internal, Fx_selection_exists_p)
4505 (Fx_store_cut_buffer_internal, Fx_get_cut_buffer_internal)
4506 (Fx_rotate_cut_buffers_internal): Get display from selected_frame.
4507
4508 * xmenu.c: Use FRAME_X_DISPLAY, not XDISPLAY or x_current_display.
4509 (menu_item_equiv_key): Reject equiv sequences
4510 that start with mouse clicks.
4511
45121994-10-19 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
4513
087b38a0 4514 * search.c (searchbufs): New variable, replaces searchbuf and
615d0182
DL
4515 last_regexp and search_fastmap.
4516 (syms_of_search): Initialize it.
4517 (searchbuf_head): New variable.
4518 (compile_pattern_1): Renamed from compile_pattern and made static.
4519 Copy the regexp string in case the caller modifies it in place later.
4520 (compile_pattern): New code, uses a cached entry if one is available.
4521 The pattern buffer is now a return value instead of an arg.
4522 (set_search_regs): Set num_regs directly, since there's no active
4523 pattern buffer to pass to re_set_registers.
4524 (Fstore_match_data): Likewise.
4525 (Flooking_at): Use the new calling convention for compile_pattern.
4526 (Fstring_match, fast_string_match, search_buffer): Likewise.
4527 * dired.c (Fdirectory_files): Likewise.
4528
45291994-10-18 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4530
4531 * keyboard.c (Voverriding_local_map_menu_flag): New variable.
4532 (syms_of_keyboard): Set up Lisp var.
4533 (menu_bar_items): Obey Voverriding_local_map_menu_flag.
4534
4535 * ralloc.c (struct heap): New fields first_bloc, last_bloc.
4536 (struct bp): New field heap.
4537 (get_bloc, free_bloc, obtain, r_alloc_sbrk): Update new fields.
4538 (reorder_bloc): New function.
4539 (update_heap_bloc_correspondence):
4540 Renamed from update_heap_free_pointers. Update new fields.
4541 (relinquish): Add error check for new fields.
4542
4543 * Makefile.in.in (SOME_MACHINE_OBJECTS): Add msdos.o and x*.o files.
4544
45451994-10-17 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
4546
4547 * minibuf.c (read_minibuf): Store the object, not the string, into
4548 the history variable.
4549
4550 * xfns.c (x_set_unsplittable): New function.
4551 (x_frame_parms): Add that function to the table.
4552
4553 * xterm.c (do_line_dance): Decrement index only once per loop.
4554
4555 * scroll.c (do_line_insertion_deletion_costs): Fix argument order.
4556
45571994-10-17 Morten Welinder <terra@mole.gnu.ai.mit.edu>
4558
4559 * fileio.c (Fexpand_file_name) [MSDOS]: Correct the for absolute
4560 default directory.
4561
4562 * config.h.in [HAVE_X_WINDOWS]: #define HAVE_FACES and HAVE_MOUSE.
4563
4564 * dispextern.h: Guard entire file from being include more than once.
4565 [MSDOS]: Include msdos.h.
4566
4567 * dispnew.c (direct_output_for_insert): Check HAVE_FACES, not
4568 HAVE_X_WINDOWS.
4569 (selected_frame, last_minibuffer_frame): Doc fix.
4570
4571 * dosfns.c (Fset_mouse_position, Fmsdos_mouse_p) [!HAVE_X_WINDOWS]:
4572 New functions.
4573 (syms_of_dosfns) [!HAVE_X_WINDOWS]: Defsubr them. Also define
4574 Qmsdos_color_translate.
4575 (init_dosfns) [SYSTEM_MALLOC]: Don't call non-existing get_lim_data.
4576
4577 * dosfns.h (Qmsdos_color_translate) [!HAVE_X_WINDOWS]: New variable.
4578
4579 * editfns.c (init_editfns) [MSDOS]: Let the user name default to
4580 "root".
4581
4582 * emacs.c (main) [MSDOS && !HAVE_X_WINDOWS]: Call syms_of_xfaces
4583 and syms_of_xmenu.
4584
4585 * frame.c [MSDOS]: Include msdos.h.
4586 (Fframep #1) [MSDOS]: Doc change for the following.
4587 (Fframep #2) [MSDOS]: Return 'pc for when termcap is not used.
4588 (Fmouse_position #2) [HAVE_MOUSE]: Return useful information.
4589 (Fframe_parameters #2): Show "font" as "default".
6772c8e1 4590 (Fframe_parameters #2) [MSDOS]: Show fore- and background colors.
615d0182
DL
4591 (Fmodify_frame_parameters #2) [MSDOS]: Call IT_set_frame_parameters.
4592 (Fframe_list #2): New stub function.
4593 (syms_of_frame #2): defsubr frame_list.
4594 (syms_of_frame #2) [MSDOS]: Initialize the_only_frame.
4595 (Fselected_frame #2): Doc fix.
4596
4597 * frame.h [!MULTI_FRAME]: We give up having selected_frame be
4598 an always-zero integer variable. From now on it will be a
4599 pointer to a `struct frame' just like in the MULTI_FRAME case.
087b38a0 4600 (selected_frame, last_nonminibuf_frame): use FRAME_PTR, not EMACS_INT.
615d0182
DL
4601 (XFRAME): Redefine to use the_only_frame.
4602 (XSETFRAME): Define to set Lisp value.
4603 (WINDOW_FRAME): Redefine to return Lisp value.
4604 (FOR_EACH_FRAME): Set the frame variable to Lisp value.
4605 (output_method): New method: output_msdos_raw.
4606 (FRAME_TERMCAP_P, FRAME_X_P) [MSDOS]: Define non-stub versions.
4607
4608 * keyboard.c (read_char_x_menu_prompt): Include menu code also in
4609 case MSDOS.
4610 (gobble_input): Complete Sep 15 change.
4611
4612 * lisp.h: #define glyph-stuff when HAVE_FACES, not only when
4613 HAVE_X_WINDOWS.
4614 (FRAMEP): Define different versions for MULTI_FRAME and MSDOS.
4615 Otherwise, don't define at all.
4616
88c71720 4617 * Makefile.in.in (MSDOS_SUPPORT): Add faces.elc.
615d0182
DL
4618 (msdos.o, dosfns.o): Add dependencies.
4619 (MSDOS_OBJ): New set of object files.
4620 (obj): Include MSDOS_OBJ.
4621
4622 * msdos.c: #include dispextern.h, termopt.h, and window.h needed
4623 for the following.
4624 (highlight): New variable.
4625 (rien_du_tout, IT_ring_bell, IT_set_face, IT_write_glyphs,
4626 IT_clear_end_of_line, IT_cursor_to, IT_reassert_line_highlight,
4627 IT_change_line_highlight, IT_update_begin, IT_set_menu_bar_lines,
4628 IT_set_frame_parameters): New functions like their XT_* counterparts.
4629 (internal_terminal_init): Initialize Vwindow_system,
4630 Vwindow_system_version, the_only_x_display, and terminal hooks.
4631 (mouse_get_xy): New function.
4632 (mouse_get_pos, mouse_check_moved): Use mouse_get_xy.
4633 (IT_menu_create, IT_menu_make_room, IT_menu_search_pane,
4634 IT_menu_calc_size, IT_menu_display, XMenuCreate, XMenuAddPane,
4635 XMenuAddSelection, XMenuLocate, XMenuActivate, XMenuDestroy,
4636 x_pixel_width, x_pixel_height): New functions.
4637 (init_environment) [HAVE_X_WINDOWS]: Let DISPLAY default to "unix:0.0".
4638 (init_environment): Handle the case of a relative argv[0].
4639 (dos_rawgetc): Use XSETFRAME.
4640 (the_only_x_display, x_current_display) [!HAVE_X_WINDOWS]: New
4641 variables.
4642
087b38a0 4643 * msdos.h (XFontStruct, GC, Pixmap, Display, Window) [MSDOS_NO_X]:
615d0182
DL
4644 Dummy types.
4645 (struct face, FACE_HAS_GC, FACE_GC, FACE_FOREGROUND, FACE_BACKGROUND,
4646 FACE_FONT, FACE_STIPPLE, FACE_UNDERLINE_P) [MSDOS_NO_X]: Define like
4647 corresponding X-versions.
4648 (struct x_display) [MSDOS_NO_X]: Define cut-down version.
4649 (FRAME_PARAM_FACES, FRAME_N_PARAM_FACES, FRAME_DEFAULT_PARAM_FACE,
4650 FRAME_MODE_LINE_PARAM_FACE, FRAME_COMPUTED_FACES,
4651 FRAME_N_COMPUTED_FACES, FRAME_SIZE_COMPUTED_FACES, FRAME_DEFAULT_FACE,
4652 FRAME_MODE_LINE_FACE, x_current_display, XFreeGC, same_size_fonts,
4653 unload_font, unload_color, XGetGeometry, DisplayWidth,
4654 DisplayHeight, XMenuSetAEQ, XMenuSetFreeze, XMenuRecompute,
4655 FONT_WIDTH, check_x, ButtonReleased) [MSDOS_NO_X]: Define suitable
4656 stubs.
4657 (XM_FAILURE, XM_SUCCESS, XM_NO_SELECT, XM_IA_SELECT) [MSDOS_NO_X]:
4658 Define like old-x-menu versions.
4659 Guard the entire file from being included more than once.
4660 (internal_flush): Correct guarding conditional.
4661 Don't include <time.h>.
4662
4663 * puresize.h (SYSTEM_PURESIZE_EXTRA): Default to 0.
4664 (BASE_PRESIZE): Increase by SYSTEM_PURESIZE_EXTRA.
4665
4666 * s/msdos.h: #define HAVE_FACES.
4667 (LIBX11_SYSTEM, HAVE_X11R5) [HAVE_X_WINDOWS]: Define.
4668 (PURESIZE): Don't define.
4669 (SYSTEM_PURESIZE_EXTRA): Define.
4670
4671 * sysdep.c (init_sys_modes): Make sure that internal_terminal_init
4672 is only called once.
4673 (init_sys_modes, reset_sys_modes) [HAVE_X_WINDOWS]: Add conditional.
6772c8e1 4674 (reset_sys_modes) [MSDOS]: Change to MSDOG's default colors.
615d0182
DL
4675 (kbd_input_ast): Use just XSETFRAME.
4676
4677 * window.c (init_window_once) [!MULTI_FRAME]: Set selected_frame and
4678 last_nonminibuf_frame once and for all.
4679
4680 * xdisp.c (redisplay, copy_part_of_rope, fix_glyph,
4681 display_text_line, display_mode_line): Check HAVE_FACES, not
4682 HAVE_X_WINDOWS.
4683
4684 * xfaces.c: Guard the file by HAVE_FACES, not HAVE_X_WINDOWS.
4685 [MSDOS]: Include dosfns.h needed for the following.
4686 [!HAVE_X_WINDOWS]: Don't #include xterm.h or Xos.h.
4687 [!HAVE_X_WINDOWS] (intern_face, clear_face_cache, load_font,
4688 load_color, unload_color, Fpixmap_spec_p, load_pixmap,
4689 same_size_fonts, frame_update_line_height): Don't define.
4690 [!HAVE_X_WINDOWS] (intern_face, clear_face_cache, build_face): Define
4691 stubs.
4692 (load_color) [MSDOS && !HAVE_X_WINDOWS]: Special version.
4693 (Fset_face_attribute_internal) [MSDOS && !HAVE_X_WINDOWS]: Stubify
6772c8e1 4694 font setting, mask away 0x08 (the blink bit) from background color.
615d0182
DL
4695 (syms_of_xfaces) [!HAVE_X_WINDOWS]: Don't defsubr Spixmap_spec_p.
4696 (Fmake_face_internal): Use FOR_EACH_FRAME.
4697 (init_frame_faces): Guard multi-frame stuff with MULTI_FRAME.
4698
4699 * xmenu.c [!HAVE_X_WINDOWS]: Don't #include xterm.h.
4700 [!HAVE_X_MENU]: Don't #include XMenu.h.
4701 (xmenu_show, xdialog_show) [!HAVE_X_WINDOWS]: We don't need the
4702 button hack for msdos.
4703 (xmenu_show) [!HAVE_X_WINDOWS]: Don't adjust coordinates with
4704 respect to the (non-existing) outer window manager.
4705
4706 * xterm.c (x_term_init) [!subprocesses]: Don't set input descriptor.
4707
4708
47091994-10-17 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4710
4711 * xfaces.c (intern_face): Update mask properly to set stipple
4712 and fill_style. Set everything all at once in XCreateGC.
4713
4714 * window.c (Fdisplay_buffer): In desperation case of looking for
4715 something to split, verify that a window's frame is splittable.
4716
47171994-10-16 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4718
4719 * Makefile.in.in (xfns.o): Depend on paths.h.
4720
4721 * xfns.c: Include paths.h.
4722
47231994-10-16 Morten Welinder <terra@mole.gnu.ai.mit.edu>
4724
4725 * editfns.c (Fuser_login_name): Optional argument uid decides
4726 which user's login name to return.
4727
47281994-10-16 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4729
4730 * xterm.c (dumpglyphs): Explicitly draw background stipple.
4731
4732 * xfaces.c (intern_face): Set the fill_style.
4733
4734 * paths.h.in (PATH_BITMAPS): New macro.
4735
4736 * xterm.c (x_bitmap_icon): Arg FILE is now a Lisp_Object.
4737 (x_iconify_frame, x_make_frame_visible): Supply FILE arg to it.
4738 * xfns.c (x_set_icon_type): Pass x_bitmap_icon 2nd arg as Lisp_Object.
4739 (x_icon_type): Return a Lisp_Object.
4740
4741 * xfns.c (x_destroy_bitmap, x_reference_bitmap): Take frame as arg.
4742 Callers changed.
4743 (struct x_bitmap_record): New fields height, width, depth.
4744 (x_create_bitmap_from_data): Fill in those fields.
4745 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap): New functions.
4746 (x_create_bitmap_from_file): Arg FILE is now a Lisp_Object.
4747 Search Vbitmap_file_path for it. Fill in new fields.
4748 (syms_of_xfns): Set up Vbitmap_file_path.
4749
4750 * xterm.c (x_bitmap_icon): Properly discard the previous bitmap.
4751 (x_text_icon): Discard bitmap only if we have one.
4752
4753 * xfaces.c (copy_face, merge_faces): Copy the pixmap_h and pixmap_w.
4754 (intern_face): Store the stipple in the GC.
4755 (unload_color): Really do free the color.
4756 (free_frame_faces): Call unload_pixmap.
4757 (Fset_face_attribute_internal): Handle background pixmap.
4758 Destroy old pixmap when necessary.
4759 (free_frame_faces): Destroy pixmaps.
4760 (load_pixmap): New function.
4761 (Fpixmap_spec_p): New function.
4762 (syms_of_xfaces): Set up Lisp function pixmap-spec-p.
4763 Set up Qpixmap_spec_p.
4764
4765 * dispextern.h (struct face): Delete cached_index field.
4766 * xfaces.c (compute_base_face): Don't set cached_index field.
4767
4768 * ralloc.c (heap_base): Move static var to top level.
4769 (struct heap): New slot `free'.
4770 (obtain): Set `free' for new heap.
4771 (get_bloc): Update `free'.
4772 (find_heap): New function.
4773 (update_heap_free_pointers): New function.
4774 (resize_bloc, r_alloc_sbrk): Call update_heap_free_pointers.
4775
47761994-10-15 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4777
4778 * lread.c (load_unwind): Cast argument of fclose.
4779
4780 * xmenu.c: Delete HAVE_X11 conditionals.
4781
4782 * xfaces.c (compute_base_face): Use FRAME_FOREGROUND_PIXEL,
4783 FRAME_BACKGROUND_PIXEL, FRAME_FONT.
4784
4785 * xterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
4786 (FRAME_FONT): New macros.
4787
47881994-10-15 Tom Tromey <tromey@drip.colorado.edu>
4789
4790 * xterm.c (x_bitmap_icon): Allow bitmap to come from file.
4791 (x_wm_set_icon_pixmap): Second arg is now pixmap_id;
4792 call x_lookup_pixmap.
4793 (x_text_icon): Call x_destroy_bitmap.
4794
4795 * xfns.c (x_set_icon_type): If icon-type is a string, then use
4796 bitmap from that file.
4797 (Fx_create_frame): Set icon_bitmap field to -1.
4798 (struct x_bitmap_record): New structure type.
4799 (x_bitmaps, x_bitmaps_size, x_bitmaps_last, x_bitmaps_free):
4800 New variables.
4801 (x_allocate_bitmap_record): New function.
4802 (x_reference_bitmap, x_create_bitmap, x_create_bitmap_from_file)
4803 (x_destroy_bitmap, x_lookup_pixmap): New functions.
4804
4805 * xterm.h (x_display): Changed icon_bitmap_flag to icon_bitmap.
4806 Changed all users.
4807
48081994-10-15 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4809
4810 * textprop.c (Fset_text_properties): Special case for getting
4811 rid of all properties of a string.
4812
48131994-10-15 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
4814
4815 * xterm.c (stuffline, scraplines): Functions deleted.
4816 (line_dance, line_dance_len, line_dance_in_progress): New vars.
4817 (XTins_del_lines): Don't do any X calls; just update the array.
4818 (do_line_dance): New function. Do the X calls here.
4819 (XTupdate_end, XTwrite_glyphs): Call do_line_dance.
4820
48211994-10-14 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4822
4823 * s/isc4-0.h (LIBS_SYSTEM): Add -lcposix.
4824 (sigblock, SIG_BLOCK): Define if not defined.
4825
4826 * sysdep.c (read_input_waiting): Set e.frame_or_window w/ XSETFRAME.
4827
4828 * xterm.c (x_new_font): Don't keep looping after the FONT property.
4829
48301994-10-13 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
4831
4832 * term.c (term_get_fkeys_1): Workaround for IBM's dialect of terminfo.
4833
48341994-10-13 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4835
4836 * xfns.c (Fx_create_frame): Init the FRAME_X_SCREEN
4837 as soon as can be done.
4838
4839 * xdisp.c (redisplay): Call clear_face_cache instead
4840 of clear_face_vector. Do it at most once per 1000 redisplays.
4841
4842 * xfaces.c: Eliminate the "display faces"; store GCs in the
4843 "computed faces".
4844 (face_vector, nfaces, nfaces_allocated): Vars deleted.
4845 (free_frame_faces): Free GCs in the computed faces.
4846 Free the computed faces themselves.
4847 (clear_face_cache): Renamed from clear_face_vector
4848 and completely rewritten to free GCs in the computed faces.
4849 (get_cached_face): Function deleted.
4850 (build_face): Function deleted; code moved into intern_face.
4851 (intern_face): Don't treat default and modeline faces specially.
4852 (recompute_basic_faces): Call intern_face, not build_face.
4853
4854 * xfaces.c (intern_face, clear_face_vector, load_font, unload_font)
4855 (load_color, free_frame_faces, recompute_basic_faces):
4856 Use FRAME_X_DISPLAY.
4857
4858 * m/mips-siemens.h (C_ALLOCA): Defined.
4859 (HAVE_ALLOCA): Definition deleted.
4860
4861 * editfns.c (Fuser_login_name, Fuser_real_login_name):
4862 Call init_editfns now if it was not done before.
4863
4864 * puresize.h (BASE_PURESIZE): Incremented.
4865
4866 * lisp.h (Funhandled_file_name_directory): Declared.
4867
48681994-10-10 Rainer Schoepf (Schoepf@Uni-Mainz.de)
4869
4870 * unexalpha.c (Brk): Declare as unsigned long.
4871 (unexec): Do CHECH_SCNHDR on _RCONST if that's defined.
4872 Ignore rdata_section if there is none.
4873 (update_dynamic_symbols): New arg new_name. Call changed.
4874 Fix some calls to WRITE.
4875 (fatal_unexec): Declare all arguments.
4876
48771994-10-12 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4878
4879 * unexelf.c: Include config.h.
4880
4881 * s/freebsd.h (LD_SWITCH_SYSTEM): New definition.
4882
48831994-10-11 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
4884
4885 * lisp.h (enum Lisp_Misc_Type): Add new enumerations
4886 Lisp_Misc_Intfwd, Lisp_Misc_Boolfwd, Lisp_Misc_Objfwd,
4887 Lisp_Misc_Buffer_Objfwd.
4888 (enum Lisp_Type): Delete the corresponding enumerations from here.
4889 (struct Lisp_Buffer_Objfwd): New structure.
4890 (struct Lisp_Intfwd, struct Lisp_Boolfwd, struct Lisp_Objfwd): Ditto.
4891 (XINTFWD, XBOOLFWD, XOBJFWD, XBUFFER_OBJFWD): Access the new structure.
4892 (INTFWDP, BOOLFWDP, OBJFWDP, BUFFER_OBJFWDP): Ditto.
4893 (XSETINTFWD, XSETBOOLFWD, XSETOBJFWD, XSETBUFFER_OBJFWD): Deleted.
4894 (union Lisp_Misc): Add new members.
4895 (allocate_misc): Declare this function.
4896 (XINTPTR): Deleted.
4897 * alloc.c (mark_object): Use the new substructure.
4898 * buffer.c (buffer_slot_type_mismatch): Take just the offset as
4899 argument. Only check against types that are actually used.
4900 * bytecode.c (Fbyte_code): Skip optimization for all Lisp_Misc types.
4901 * data.c (do_symval_forwarding, store_symval_forwarding,
4902 find_symbol_value, Fset, default_value, Fset_default,
4903 Fkill_local_variable): Use the new substructure.
4904 (store_symval_forwarding): Change args to buffer_slot_type_mismatch.
4905 * lread.c (defvar_int, defvar_bool, defvar_lisp,
4906 defvar_lisp_nopro, defvar_per_buffer): Use the new substructure.
4907
4908 * minibuf.c (test_completion): Fix reversed condition.
4909
4910 * ralloc.c: Install Hiroshi Nakano's rewrite to allow multiple
4911 heaps, for implementations where the C library makes calls to
4912 sbrk directly.
4913
49141994-10-11 Jim Blandy <jimb@geech.gnu.ai.mit.edu>
4915
4916 * search.c (scan_buffer): After temporarily turning immediate_quit
4917 off, turn it back on by setting it to allow_quit, never 1.
4918
4919 * search.c (find_before_next_newline): Declare the arguments'
4920 types explicitly; don't let them default to int.
4921
4922 * xdisp.c (display_scan_buffer): Pass the correct number of
4923 arguments to scan_buffer.
4924
49251994-10-11 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4926
4927 * keyboard.c (read_key_sequence): The output of function-key-map
4928 goes to key-translation-map, but not vice versa.
4929 Don't exit if either of them is a possibility.
4930
49311994-10-11 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
4932
4933 * lisp.h (Lisp_Misc): new type code, replacing Lisp_Marker (and
4934 soon to replace other type codes as well).
4935 (XMARKER, SETMARKER, MARKERP): Check/set the new type field.
4936 (XMISC, SETMISC, MISCP): New accessor macros for the superset type.
4937 (struct Lisp_Free): New structure.
4938 (Lisp_Misc_Free): Type code for that structure.
4939 * buffer.h (OVERLAY_POSITION): Marker assert now tests substructure.
087b38a0 4940 * alloc.c (MARKER_BLOCK_SIZE, marker_block, marker_free_list):
615d0182
DL
4941 Now refers to the superset type, not just markers.
4942 (allocate_misc): New function, extracted from Fmake_marker.
4943 (Fpurecopy): Check the substructure.
4944 (clear_marks, mark_object, gc_sweep): Likewise.
4945 * buffer.c (buffer_slot_type_mismatch): Test against Lisp_Misc.
4946 * fns.c (internal_equal): Check the substructure.
4947 * print.c (print): Check the substructure.
4948
49491994-10-10 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
4950
4951 * sysdep.c (sys_subshell): Use NILP macro directly, not its
4952 expansion. Previous code was leftover from when NULL was a bad
4953 word.
4954
49551994-10-10 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4956
4957 * fileio.c (Finsert_file_contents): Use original unexpanded
4958 FILENAME arg to set buffer-file-name.
4959
4960 * buffer.c (list_buffers_1): Fix indentation in header lines.
4961
4962 * xdisp.c (redisplay_window): Fix Oct 1 change:
4963 don't call cancel_my_columns unless we will call try_window.
4964
49651994-10-10 Jim Blandy <jimb@geech.gnu.ai.mit.edu>
4966
4967 * buffer.c (syms_of_buffer): Doc fix for cache-long-line-scans.
4968
49691994-10-10 Richard Stallman <rms@mole.gnu.ai.mit.edu>
4970
4971 * syntax.c (scan_sexps_forward): At startincomment,
4972 do notice a 2-char comment ender that straddles FROM.
4973
49741994-10-09 Jim Blandy <jimb@geech.gnu.ai.mit.edu>
4975
4976 Cache the results of some scans, to improve performance in buffers
4977 containing very long lines.
4978 * region-cache.c, region-cache.h: New files.
4979 * Makefile.in.in (obj) Add region-cache.o to the list of files.
4980 (region-cache.o): New target.
4981 (buffer.o, indent.o, search.o): Depend on region-cache.h.
4982 * buffer.h (struct buffer): New members: newline_cache,
4983 width_run_cache, width_table, and cache_long_line_scans.
4984 * buffer.c: #include region-cache.h.
4985 (Fget_buffer_create): Initialize new members of struct buffer.
4986 (Fkill_buffer): Free memory occupied by caches.
4987 (init_buffer_once): Set default value for cache_long_line_scans in
4988 buffer_defaults, and give it a bit in buffer_local_flags.
4989 (syms_of_buffer): Add DEFVAR_PER_BUFFER for cache_long_line_scans.
4990 * insdel.c (prepare_to_modify_buffer): Invalidate width run and
4991 newline caches, if they exist.
4992 * search.c: #include "region-cache.h".
4993 (max, min): Make these functions, not macros; we'd like to pass
4994 them arguments that would be bad to evaluate more than once.
4995 (newline_cache_on_off): New function.
4996 (scan_buffer): New argument END. Call newline_cache_on_off. If
4997 this buffer's newline cache is enabled, consult it to see if we
4998 need to scan a region for newlines, and store information in the
4999 cache after doing so.
5000 (find_next_newline): Pass new arg to scan_buffer.
5001 (find_before_next_newline): New function.
5002 * cmds.c (Fforward_line): Call scan_buffer with new args.
5003 (Fend_of_line): Replace call to Fforward_line and search loop with
5004 call to find_before_next_newline.
5005 * syntax.c (find_defun_start): Call scan_buffer with new args.
5006 * indent.c: #include "region-cache.h".
5007 (character_width, disptab_matches_widthtab, recompute_width_table,
5008 width_run_cache_on_off): New functions.
5009 (compute_motion): Call width_run_cache_on_off. If this buffer's
5010 width run cache is enabled, consult it to see if we need to
5011 traverse a region character-by-character; store information in the
5012 cache after doing so. Call find_before_next_newline instead of
5013 writing out an equivalent loop explicitly, to take advantage of
5014 the newline cache.
5015 Doc fixes.
5016 * xdisp.c (redisplay_window): Invalidate width_run_cache, if the
5017 buffer's display table doesn't match the width table the cache was
5018 built for.
5019 (display_text_line): Use compute_motion to skip forward to the
5020 left edge of the window when the window is hscrolled; this is
5021 faster than rendering all the characters into the bit bucket when
5022 the hscroll is large.
5023 Doc fixes.
5024 (display_count_lines): Call scan_buffer with new args.
5025 * disptab.h (window_display_table): Doc fix.
5026 (buffer_display_table): New declaration.
5027 * indent.h (disptab_matches_widthtab, recompute_width_table): New
5028 declarations.
5029
50301994-10-08 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5031
5032 * keyboard.c (inhibit_local_menu_bar_menus): New variable.
5033 (read_char_x_menu_prompt): Optionally don't use local maps.
5034 (syms_of_keyboard): Set up Lisp variable.
5035
50361994-10-07 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
5037
5038 * lisp.h (enum Lisp_Misc_Type): New type.
5039 (struct Lisp_Marker): Add a member of that type. Delete unused
5040 member `modified'.
5041
50421994-10-07 Morten Welinder <terra@frigg.diku.dk>
5043
5044 * minibuf.c (test_completion): New function, extracted from
5045 do_completion.
5046 (do_completion): Use test_completion.
5047 (Fminibuffer_complete_and_exit): If completion is already
5048 exact, don't try to complete it.
5049
5050 * dired.c (file_name_completion): Ignore files "." and ".."
5051 in first pass.
5052 (Ffile_name_completion): Perform the completion even if the
5053 name part is empty.
5054
50551994-10-07 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5056
5057 * insdel.c (make_gap): Keep input blocked till after we set BEG_ADDR.
5058
5059 * fileio.c (check_writable, check_executable): Test HAVE_EACCESS.
5060
5061 * config.h.in (HAVE_EACCESS): Add #undef.
5062
50631994-10-06 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
5064
5065 * alloc.c (mark_object): Don't check for Lisp_Void; nothing ever
5066 creates that type.
5067 * bytecode.c (Fbyte_code): Likewise.
5068 * data.c (Fboundp, Ffboundp, find_symbol_value, Fset,
5069 Fdefault_boundp, Fdefault_value): Likewise.
5070 * lisp.h (Lisp_Void, VOIDP): Deleted.
5071
5072 * floatfns.c (Fabs): Don't use XFASTINT when negative.
5073 * data.c (Flsh, Fadd1, Fsub1, Flognot): Likewise.
5074
5075 * buffer.c (init_buffer_once): Don't use XSETFASTINT when negative.
5076 (reset_buffer_local_variables, Fbuffer_local_variables): Access
5077 buffer_local_flags as Lisp_Object, not int.
5078 * data.c (Fset, default_value, Fset_default,
5079 Fkill_local_variable): Likewise.
5080 * lread.c (defvar_per_buffer): Likewise.
5081 Give XSETBUFFER_OBJFWD an integer offset, not a pointer.
5082
5083 * lread.c (read1): New argument for returning out-of-band data,
5084 obviating the need for Lisp_Internal datatype.
5085 (read0, read1, read_list): Use that new calling sequence.
5086 * lisp.h (Lisp_Internal, XSETINTERNAL, INTERNALP): Deleted.
5087
5088 * lread.c (Fload, load_unwind): Store stream pointer as a cons of
5089 two integers, obviating the need for Lisp_Internal_Stream datatype.
5090 * lisp.h (Lisp_Internal_Stream, XSETINTERNAL_STREAM,
5091 INTERNAL_STREAMP): Deleted.
5092 * alloc.c (mark_object): Delete case Lisp_Internal_Stream.
5093
50941994-10-05 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5095
5096 * unexec.c (make_hdr): Undo June 16 change.
5097
5098 * fileio.c (Ffile_regular_p): New function.
5099 (syms_of_fileio): defsubr it.
5100
5101 * xterm.c (x_term_init): Call XtSetLanguageProc or XSetLocaleModifiers.
5102
51031994-10-04 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5104
5105 * xfns.c (x_set_icon_type): Remove period from error message.
5106
5107 * xterm.c (x_make_frame_visible, x_iconify_frame):
5108 Call x_bitmap_icon if frame wants a bitmap icon.
5109
5110 * xfns.c (x_icon_type): New function.
5111
5112 * callint.c (Finteractive): Doc fix.
5113
51141994-10-04 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
5115
5116 * buffer.c (validate_region): Swap using temp Lisp_Object, not int.
5117
5118 * lisp.h (XSETINT): Set object type as well as value.
5119 (XSETCONS, XSETBUFFER, XSETVECTOR, XSETSUBR, XSETSTRING,
5120 XSETSYMBOL, XSETMARKER, XSETOBJFWD, XSETWINDOW, XSETPROCESS,
5121 XSETFLOAT): Likewise.
5122 (XSETBOOLFWD, XSETBUFFER_OBJFWD, XSETWINDOW_CONFIGURATION,
5123 XSETINTERNAL_STREAM, XSETINTFWD, XSETINTERNAL): New macros.
5124 (XSETUINT, XSETPNTR, XFUNCTION, XSETFUNCTION, XSETINTPTR): Deleted.
5125
5126 * frame.h (XSETFRAME): Set object type as well as value.
5127 * m/alpha.h, m/gec63.h, m/hp800.h, m/iris4d.h, m/iris5d.h, m/mips.h:
5128 Don't override the (new) definition of XSETINT from lisp.h.
5129 Delete XSETUINT and XSETPNTR, which are no longer used.
5130 * *.c: Use new accessor macros instead of calling XSET directly.
5131 * xterm.h (SCROLL_BAR_UNPACK): Likewise.
5132 * fns.c (Fstring_equal): No longer necessary to set type separately.
5133 (Fstring_lessp): Likewise.
5134 * callint.c (Fprefix_numeric_value): Likewise.
5135 * fileio.c (Finsert_file_contents): Likewise.
5136
5137 * lisp.h (XSETFASTINT): New macro.
5138 (XFASTINT): Changed to non-lvalue syntax, to ensure that callers
5139 will use XSETFASTINT instead.
5140 (CHECK_NUMBER_COERCE_MARKER): Don't use XFASTINT as an lvalue.
5141 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER): Likewise.
5142 * *.c: Likewise.
5143 * frame.h (FOR_EACH_FRAME): Likewise.
5144
51451994-10-04 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5146
5147 * Makefile.in.in (MKTIME_OBJ): New variable.
5148 (obj): Use MKTIME_OBJ.
5149
5150 * config.h.in (HAVE_MKTIME): Add #undef.
5151
5152 * xmenu.c (widget_id_tick): Move definition into conditional.
5153 (syms_of_xmenu): Conditionalize initialization of widget_id_tick.
5154
5155 * xmenu.c (last_menu_bar_item_end): Var deleted.
5156 (this_menu_bar_item_beg, this_menu_bar_item_end): Vars deleted.
5157 (other_menu_bar_item_p, unread_menu_bar_button)
5158 (check_mouse_other_menu_bar): Functions deleted.
5159 (last_event_timestamp, Vdouble_click_time, Vmouse_depressed):
5160 Decls deleted.
5161 (xmenu_show): XMENU_FOO conditional and its contents deleted.
5162
5163 * xterm.c (input_signal_count): New variable.
5164 (XTread_socket): Increment it.
5165 (x_make_frame_visible): Exit final loop when XTread_sockets has run.
5166
51671994-10-02 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
5168
5169 * window.c (Frecenter): Don't trigger point-motion hooks.
5170
5171 * fileio.c (Finsert_file_contents): set type of `end', not just
5172 the value.
5173
5174 * xfns.c (x_figure_window_size): Use new formula for scroll bar width.
5175
5176 * config.h.in (HAVE_UTIME_H): Add #undef.
5177 * systime.h: Don't include <utime.h> here.
5178 * sysdep.c: Include it here instead.
5179 (set_file_times): Move struct declaration to top of file.
5180
51811994-10-02 Paul Reilly <pmr@churchy.gnu.ai.mit.edu>
5182
5183 * xmenu.c (popup_get_selection): Remove BLOCK_INPUT, UNBLOCK_INPUT
5184 since the calls to popup_get_selection provide the protection.
5185
51861994-10-02 Paul Reilly <pmr@geech.gnu.ai.mit.edu>
5187
087b38a0 5188 * xfns.c (HACK_EDITRES): Declare if using X11R5.
615d0182
DL
5189 (widget_id_tick): New variable.
5190 (x_any_window_to_frame): Use lw_window_is_in_menubar for
5191 widget set independence.
5192 (x_window): Renamed screen_widget to frame_widget. Use
5193 lw_create_widget and lw_set_main_areas for widget set
5194 independence. Enable using editres for X11R5.
5195
5196 * widget.c (EmacsFrameSetCharSize): Use lw_refigure_widget for
5197 widget set independence.
5198
5199 * widget.h: Declare resources showGrip, allowResize, and
5200 resizeToPreferred.
5201
5202 * keyboard.c (make_lispy_event): Do not set item. Now handled in
5203 xmenu.c by popup_get_selection.
5204
52051994-10-01 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5206
5207 * frame.c (keys_of_frame): Make binding for delete-frame.
5208
5209 * xdisp.c (redisplay_window): If we set PT, and that alters a region
5210 being highlighted, call try_window again.
5211
5212 * Makefile.in.in (LIBXTR6): If NEED_LIBW, add -lw.
5213 * s/usg5-4-2.h (NEED_LIBW): Defined.
5214
5215 * Makefile.in.in (LDFLAGS): New variable.
5216 (LIBX): Use LDFLAGS.
5217
52181994-09-30 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5219
5220 * data.c (Fmake_local_variable): Doc fix.
5221
52221994-09-29 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5223
5224 * fileio.c (check_writable, check_executable) [__HURD__]:
5225 Use eaccess.
5226
5227 * xfaces.c (compute_char_face): Handle list as overlay face property.
5228
52291994-09-29 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
5230
5231 * minibuf.c (scmp): Use unsigned chars, to avoid confusing DOWNCASE.
5232
5233 * unexaix.c (CHECK_SCNHDR, write_segment): Fix format/arg mismatch.
5234 * xfns.c (x_report_frame_params): Likewise.
5235
52361994-09-29 Boris Goldowsky <boris@cs.rochester.edu>
5237
5238 * xfaces.c (compute_char_face): If face text-property is a list,
5239 merge the attributes of the faces in the list.
5240
52411994-09-29 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5242
5243 * buffer.c (Foverlay_get): Handle `category' property on overlay.
5244
5245 * xfaces.c (Fset_face_attribute_internal): Mark frame garbaged whenever
5246 any face's font or color is changed.
5247
5248 * keyboard.c (head_table): Set up Qdelete_frame.
5249 (kbd_buffer_get_event): Handle delete_window_event by making
5250 a delete-frame event.
5251
52521994-09-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5253
5254 * data.c (Flocal_variable_p): New function.
5255 (syms_of_data): defsubr it.
5256
52571994-09-28 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
5258
5259 * fileio.c (Fdelete_file): Undo Sep 16 change.
5260 * dired.c (syms_of_dired): Likewise.
5261
52621994-09-27 Karl Heuer <kwzh@nutrimat.gnu.ai.mit.edu>
5263
5264 * frame.h (scroll_bar_pixel_width, scroll_bar_cols): Update comment.
5265 * xfns.c (x_set_scroll_bar_width): Nil now means 2 columns' worth.
5266 (Fx_create_frame): Default scroll bar width is now nil.
5267 * xterm.c (x_new_font): New rule for computing column width.
5268 Factored out common code.
5269 (XTset_vertical_scroll_bar): Use new width formula.
5270 [!USE_X_TOOLKIT] (x_set_window_size): Likewise.
5271 * widget.c (set_frame_size, EmacsFrameSetCharSize): Likewise.
5272
5273 * lisp.h (BOOLFWDP, INTERNALP, INTFWDP, OBJFWDP, INTERNAL_STREAMP,
5274 BUFFER_LOCAL_VALUEP, SOME_BUFFER_LOCAL_VALUEP, BUFFER_OBJFWDP,
5275 VOIDP): New type test macros.
5276 * *.h, *.c: Use type test macros instead of checking XTYPE directly.
5277
52781994-09-26 Richard Stallman <rms@churchy.gnu.ai.mit.edu>
5279
5280 * window.c (syms_of_window): Doc fix.
5281
f0131492 52821994-09-26 Frederic Pierresteguy <F.Pierresteguy@frcl.bull.fr>
615d0182
DL
5283
5284 * m/dpx2.h (POSIX_SIGNALS): Define it.
5285 (sigsetmask): Add #undef.
5286
52871994-09-26 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
5288
5289 * m/*.h, s/*.h (WORDS_BIG_ENDIAN): Renamed from BIG_ENDIAN,
5290 and restored where mistakenly deleted by earlier change.
5291
5292 * emacs.c (argmatch): New function.
5293 (main): Recognize --longopt synonyms for all options handled here.
5294 Add --help and --version.
5295
52961994-09-25 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5297
5298 * unexsunos4.c: Delete __FreeBSD__ conditional macro definitions.
5299 (unexec): Major changes in UNDO_RELOCATION code.
5300
5301 * unexsunos4.c (is_it): Rename argument and local variable.
5302
53031994-09-25 Richard Stallman <rms@churchy.gnu.ai.mit.edu>
5304
5305 * Makefile.in.in (${etc}DOC): Run make-docfile twice--two batches.
5306
53071994-09-24 Richard Stallman <rms@churchy.gnu.ai.mit.edu>
5308
5309 * sysdep.c (set_file_times): Don't test HAVE_UTIME.
5310 Assume utime exists if utimes does not.
5311
5312 * config.h.in (HAVE_UTIMES): Add #undef.
5313
5314 * editfns.c (Fformat_time_string): Mostly rewritten, to handle
5315 unlimited size, and report errors properly.
5316
5317 * Makefile.in.in (strftime.o, mktime.o): New target.
5318 (obj): Add strftime.o and mktime.o.
5319
5320 * strftime.c, mktime.c: New files (shared from libc).
5321
53221994-09-24 Erik Naggum (erik@naggum.no)
5323
5324 * editfns.c (Fformat_time_string): New function.
5325 (syms_of_editfns): Defsubr it.
5326
53271994-09-24 Richard Stallman <rms@churchy.gnu.ai.mit.edu>
5328
5329 * sysdep.c [USE_DL_STUBS] (dlopen, dlsym, dlclose): New functions.
5330 * s/sunos4-1.h (USE_DL_STUBS): Defined.
5331 * s/sunos4shr.h (USE_DL_STUBS): Add #undef.
5332
5333 * fileio.c (Ffile_writable_p): Use stat to test for existence.
5334 (check_executable, check_writable): New functions.
5335 (Ffile_executable_p, Ffile_writable_p): Use the new functions.
5336
5337 * intervals.c (set_point):
5338 If Vinhibit_point_motion_hooks, ignore intangible properties.
5339 If move backwards into intangible text, move back over it.
5340
5341 * textprop.c (syms_of_textprop): Doc fix.
5342
5343 * config.h.in (STACK_DIRECTION): Don't redefine if defined already.
5344 Move definition down past #include's.
5345
53461994-09-23 Richard Stallman <rms@churchy.gnu.ai.mit.edu>
5347
5348 * s/linux.h: Don't include signal.h, values.h.
5349 (signal): Definition deleted.
5350
5351 * abbrev.c (Fexpand_abbrev): Instead of Fcapitalize_region,
5352 just upcase the first initial.
5353
5354 * casefiddle.c (Fupcase_initials_region): New function.
5355 (Fupcase_initials): New function.
5356 (syms_of_casefiddle): defsubr them.
5357
5358 * minibuf.c (read_minibuf_unwind): Preserve Vdeactivate_mark.
5359
5360 * s/isc2-2.h (DONT_DEFINE_SIGNAL): Macro deleted.
5361
5362 * m/next.h (DK_HEADER_FILE): Macro deleted.
5363
5364 * m/tahoe.h (DKSTAT_HEADER_FILE): Macro deleted.
5365
5366 * m/hp800.h (CPTIME_SYMBOL, DKXFER_SYMBOL): Macros deleted.
5367
5368 * sysdep.c (start_of_text): Don't test CANNOT_UNEXEC.
5369 * unexec.c: Don't test CANNOT_UNEXEC.
5370 * unexaix.c: Don't test CANNOT_DUMP or CANNOT_UNEXEC.
5371
5372 * sysdep.c: Delete BROKEN_FASYNC conditional.
5373
5374 * data.c (Fset_default, Fset): Delete RTPC_REGISTER_BUG conditionals.
5375
5376 * process.c (Fprocess_send_eof): Delete DID_REMOTE conditional.
5377
5378 * buffer.c (get-file-buffer): Doc fix.
5379
53801994-09-23 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5381
5382 * frame.c (prev_frame): Fix typo.
5383
5384 * unexec.c (copy_text_and_data): Delete some printf's.
5385
5386 * m/acorn.h (PURESIZE): Definition deleted.
5387
5388 * xfns.c (x_figure_window_size): Decode (- N), (+ N) for position.
5389 (x_set_frame_parameters): Handle (+ N) and (- N).
5390 Preserve negative positions properly too.
5391 [USE_X_TOOLKIT] (x_window): Let xneg, yneg specify whether to
5392 negate left and top.
5393 (Fx_parse_geometry): Handle [XY]Negative with positive number
5394 or negative number without [XY]Negative.
5395
5396 * callint.c (Qplus): New variable.
5397 (syms_of_callint): Set it up.
5398 * lisp.h (Qplus): Declared.
5399
5400 * xfns.c (Fx_create_frame): Rename menuBarLines resource to menuBar.
5401
5402 * s/sunos4-1-3.h, s/sunos4shr.h (X_IO_BUG): Definition deleted.
5403
5404 * textprop.c (Fset_text_properties): Don't let validate_interval_range
5405 increment START and END twice.
5406
5407 * xterm.h (FRAME_X_DISPLAY): New macro.
5408
5409 * s/freebsd.h (BSD): Have two definitions according to version number.
5410
54111994-09-22 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5412
5413 * xterm.c (x_destroy_window): Decrement ref count of x_screen struct.
5414
5415 * xfns.c (the_x_screen): New variable.
5416 (syms_of_xfns): Staticpro parts of it.
5417 (Fx_open_connection): Initialize it.
5418 (Fx_create_frame): Make frame point to it.
5419 (Fx_list_fonts): Use a cache stored in FRAME_X_SCREEN.
5420
5421 * xterm.h (struct x_screen): New structure.
5422 (struct x_display): New field x_screen.
5423 (FRAME_X_SCREEN): New macro.
5424
5425 * process.c (exec_sentinel_error_handler): Call update_echo_area.
5426 (read_process_output_error_handler): Likewise.
5427
5428 * xdisp.c (update_echo_area): New function.
5429
54301994-09-22 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
5431
5432 * buffer.c (evaporate_overlays): Overlay is in car, not cdr.
5433
54341994-09-21 Tom Tromey <tromey@creche.colorado.edu>
5435
5436 * doc.c (get_doc_string): Look in ../etc while dumping.
5437 (munge_doc_file_name): New subroutine.
5438
54391994-09-22 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5440
5441 * minibuf.c (Fcompleting_read): Doc fix.
5442
5443 * puresize.h (BASE_PURESIZE): Increment both values.
5444
5445 * window.c (Fdelete_other_windows): Nice error if WINDOW is minibuf.
5446
5447 * lisp.h (Vdebug_on_error): Declared.
5448
5449 * process.c (exec_sentinel_error_handler): New function.
5450 (exec_sentinel): Catch all errors in the sentinel.
5451
5452 * keyboard.c (read_char): Don't return right away when
5453 read_char_minibuf_menu_prompt returns non-nil.
5454 Instead, set key_already_recorded, which inhibits most but not all
5455 of the work at non_reread.
5456
54571994-09-21 Simon Leinen <simon@lia.di.epfl.ch>
5458
5459 * cm.h (cmputc): Return int rather than void.
5460 * cm.c (evalcost, cmputc): They now return their arguments.
5461
54621994-09-21 Per Abrahamsen <abraham@iesd.auc.dk>
5463
5464 * window.c (display-buffer, special-display-buffer-names)
5465 (special-display-regexps, special-display-function): Accept cons
5466 cells in `special-display-buffer-names' and
5467 `special-display-regexps'. If the buffer name matches the car,
5468 call `special-display-function' with the cdr as a second argument.
5469
54701994-09-21 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5471
5472 * s/bsd386.h (HAVE_TERMIOS, NO_TERMIO): Defined.
5473
5474 * editfns.c (Fmessage_or_box): Use Fmessage_box with new name.
5475
5476 * process.c (read_process_output_error_handler): New function.
5477 (read_process_output_call): New function.
5478 (read_process_output): Catch and report errors in filters.
5479
5480 * keyboard.c (cmd_error_internal):
5481 New function, broken out of cmd_error.
5482
5483 * fileio.c (Fread_file_name): If DEFAULT is nil and INITIAL is not,
5484 use INITIAL to set DEFAULT.
5485
5486 * editfns.c (Fmessage_box): Renamed from Fbox_message.
5487
177c0ea7 54881994-09-17 Michael Ben-Gershon (mybg@cs.huji.ac.il)
615d0182
DL
5489
5490 * unexec.c (copy_text_and_data): Add RISCiX changes.
5491
5492 * m/acorn.h, s/riscix1-1.h, s/riscix1-2.h: New files added.
5493
54941994-09-21 Bill Burton (billb@progress.com)
5495
5496 * s/ptx.h: New file for Sequent DYNIX/ptx 1.x/2.x
5497
5498 * m/sequent-ptx.h: New file for Sequent DYNIX/ptx 1.x/2.x
5499
55001994-09-21 Frederic Pierresteguy <F.Pierresteguy@frcl.bull.fr>
5501
5502 * editfns.c (Fbox_message): New function to print a message in
5503 a dialog box.
5504 (Fmessage_or_box): New function that choose whether to print a
5505 message in a dialog or in the echo area.
5506
55071994-09-21 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5508
5509 * search.c (Freplace_match): New 4th arg OBJECT can specify string
5510 to replace in.
5511
5512 * casefiddle.c (upcase_initials): New function.
5513 (casify_object): Handle CASE_CAPITALIZE_UP.
5514
5515 * fns.c (concat3): New function.
5516
5517 * xfns.c (Fx_get_resource): Doc fix.
5518
5519 * buffer.c (overlays_at): New arg PREV_PTR.
5520 Return previous overlay end.
5521 (Foverlays_at): Pass NULL for last 2 args of overlays_at.
5522 (Fnext_overlay_change): Pass new arg to overlays_at.
5523 (Fprevious_overlay_change): New function.
5524 * xterm.c (note_mouse_highlight): Pass new arg to overlays_at.
5525 * xfaces.c (compute_char_face): Pass new arg to overlays_at.
5526 * textprop.c (Fget_char_property): Pass new arg to overlays_at.
5527 (NULL): Define if not defined.
5528
5529 * minibuf.c (get_minibuffer): Make BUF current to kill its local vars.
5530
55311994-09-20 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
5532
5533 * ralloc.c (r_alloc_freeze_level): New variable.
5534 (r_alloc_freeze, r_alloc_thaw): New functions.
5535 (r_alloc_sbrk): Refuse to move blocs, if frozen.
5536
5537 * unexaix.c (report_error): Include reason in error message.
5538
55391994-09-20 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5540
5541 * eval.c (init_eval_once): Init Vrun_hooks here.
5542 (syms_of_eval): Not here.
5543
55441994-09-20 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
5545
5546 * search.c (trivial_regexp_p): New function.
5547 (search_buffer): Don't depend on internal format of re_pattern_buffer.
5548
5549 * frame.h (FRAME_SCROLL_BAR_PIXEL_WIDTH): New macro, supersedes
5550 VERTICAL_SCROLL_BAR_PIXEL_WIDTH; no longer device-dependent.
5551 All callers changed.
5552 (FRAME_SCROLL_BAR_COLS): New macro, supersedes
5553 VERTICAL_SCROLL_BAR_WIDTH; no longer constant. All callers changed.
5554 (scroll_bar_pixel_width, scroll_bar_cols): New members of struct frame.
5555 * xterm.h (VERTICAL_SCROLL_BAR_PIXEL_WIDTH): Deleted.
5556 * xfns.c (x_set_scroll_bar_width): New function.
5557 (x_frame_parms): Add that function to this table.
5558 (Qscroll_bar_width): New symbol.
5559 (syms_of_xfns): Initialize and staticpro it.
5560 (Fx_create_frame): Set default scroll bar width.
5561 * xterm.c (x_new_font): Compute number of scrollbar columns.
5562
5563 * keyboard.c (kbd_store_ptr): Declare storage class before qualifier.
5564 (make_lispy_event): Fix Lisp_Object vs. int problems.
5565 (read_avail_input, menu_bar_items_index, read_key_sequence): Likewise.
5566 * window.c (Fset_window_buffer): Likewise.
5567 * alloc.c (make_float, make_pure_float): Likewise.
5568
5569 * sysdep.c (set_file_times): Move this out of the USG conditional.
5570
55711994-09-19 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5572
5573 * s/sco4.h (POSIX_SIGNALS): Defined.
5574
55751994-09-19 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
5576
5577 * buffer.c (syms_of_buffer): Doc fix.
5578
5579 * keymap.c (Fkey_description): Reverse condition.
5580
55811994-09-19 Jim Blandy <jimb@geech.gnu.ai.mit.edu>
5582
5583 Add a new element to display tables controlling side-by-side
5584 window borders.
5585 * buffer.c (syms_of_buffer): Update doc string for
5586 `buffer-display-table'.
5587 * disptab.h (DISP_TABLE_SIZE): Bump to 262.
5588 (DISP_BORDER_GLYPH): New accessor macro.
5589 * xdisp.c (display_text_line): Consult the display table when
5590 building side-by-side window borders.
5591
55921994-09-19 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5593
5594 * s/netbsd.h (SYSTEM_TYPE): Delete definition.
5595
5596 * lisp.h (RETURN_UNGCPRO): Use if (1) .. else, not do ... while (0).
5597
55981994-09-18 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
5599
5600 * lisp.h (Fmember): Declare this function.
5601 * intervals.c: #include "keyboard.h"
5602 * term.c: Declare Fmake_sparse_keymap.
5603 * minibuf.c (read_minibuf): Fix Lisp_Object vs. int problems.
5604 * frame.h [!MULTI_FRAME] (FOR_EACH_FRAME): Likewise.
5605 * fns.c (Frandom): Likewise.
5606 * eval.c (Fsignal): Likewise.
5607 * frame.c (Fframe_parameters): Likewise.
5608 * indent.c (vmotion, Fvertical_motion): Likewise.
5609 * lread.c (openp): Likewise.
5610 * dispnew.c (direct_output_for_insert, direct_output_forward_char):
5611 Likewise.
5612 * textprop.c (validate_interval_range, property_value,
5613 Fget_char_property, Fnext_property_change,
5614 Fnext_single_property_change, Fprevious_property_change,
5615 Fprevious_single_property_change): Likewise.
5616
56171994-09-18 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5618
5619 * process.c (pty_name): Move it up; make it static.
5620 (create_process): Set the tty_name field.
5621 (Fprocess_tty_name): New function.
5622 (syms_of_process): defsubr it.
5623
5624 * process.h (struct process): New field tty_name.
5625
5626 * s/sol2.h (HAVE_VFORK): Defined.
5627 (C_SWITCH_SYSTEM): Deleted.
5628 (const): Definition deleted.
5629
5630 * fileio.c (Ffile_writable_p): Don't use ro_fsys.
5631 (ro_fsys): Deleted.
5632
56331994-09-18 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
5634
5635 * config.h.in (_ALL_SOURCE): Don't redefine if already defined.
5636
5637 * xdisp.c [!HAVE_X_WINDOWS] (store_frame_title): Dummy macro.
5638
5639 * sysdep.c (set_file_times): New function, replaces EMACS_SET_UTIMES.
5640 * fileio.c (Fcopy_file): Use it, and check for the error return.
5641 * systime.h: Declare it.
5642 [HAVE_UTIME_H]: #include <utime.h>.
5643
5644 * config.h.in (_ALL_SOURCE, HAVE_STRUCT_UTIMBUF, HAVE_SELECT,
5645 HAVE_TIMEVAL): Add #undefs.
5646
5647 * s/*.h, m/*.h: Delete obsolete symbols USE_UTIME, MISSING_UTIMES,
5648 IRIS_UTIME, USG_SYS_TIME, HAVE_SELECT, HAVE_TIMEVAL, BIG_ENDIAN.
5649
56501994-09-18 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5651
5652 * dispnew.c (preserve_other_columns): Fix arg to sizeof in bcopy call.
5653
5654 * minibuf.c (get_minibuffer): Call Fkill_all_local_variables.
5655
5656 * buffer.c (reset_buffer): Don't call reset_buffer_local_variables.
5657 (Fget_buffer_create): Call it here.
5658 (init_buffer_once): And here.
5659
5660 * window.c (struct saved_window_data): New slots min_width, min_height.
5661 (Fcurrent_window_configuration): Set slots from window_min_...
5662 (Fset_window_configuration): Restore them.
5663 Set window_min_height and window_min_width to 1
5664 while restoring windows.
5665
5666 * unexsunos4.c (SUNOS4 or __FreeBSD__): Define UNDO_RELOCATION.
5667 (unexec): Test UNDO_RELOCATION. Distinguish the relocation formats
5668 of __FreeBSD__ and SUNOS4.
5669
5670 * s/sol2.h (REL_ALLOC): #undef deleted.
5671
5672 * keymap.c (Fkey_description): Give error if KEYS not an array.
5673 (get_keyelt, access_keymap, get_keymap_1): Use type test macros.
5674
56751994-09-17 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5676
5677 * unexsunos4.c (unexec): Fix logic for rounding section boundaries.
5678
5679 * config.h.in (EMACS_CONFIG_OPTIONS): Add #undef.
5680
5681 * textprop.c (property_value): Declare args plist, prop.
5682
5683 * s/osf1.h (malloc, realloc): Declared.
5684
5685 * print.c (print): sprintf arg for frame depends on VALBITS.
5686
5687 * callproc.c (Fcall_process) [__osf__ && __alpha]:
5688 Don't stop reading if read returns negative.
5689
5690 * puresize.h (PURESIZE_RATIO, BASE_PURESIZE): Defined.
5691 (PURESIZE): Define it based on those.
5692 * m/alpha.h (PURESIZE): Definitions deleted.
5693
56941994-09-16 Karl Heuer <kwzh@churchy.gnu.ai.mit.edu>
5695
5696 * buffer.h: Declare some functions.
5697 * intervals.h: Declare some functions.
5698 * lisp.h: Declare some functions.
5699 * xterm.c, xfaces.c: Add #include "intervals.h"
5700 * fileio.c (barf_or_query_if_file_exists): Fix declaration.
5701 * xmenu.c (menu_item_enabled_p): Fix declaration.
5702
57031994-09-16 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5704
5705 * xfns.c (hack_wm_protocols): Arrange to handle WM_SAVE_YOURSELF.
5706
5707 * s/hpux9.h (HAVE_TERMIO, HAVE_TERMIOS, NO_TERMIO): Undo Jul 28 change.
5708
57091994-09-16 Karl Heuer <kwzh@churchy.gnu.ai.mit.edu>
5710
5711 * emacs.c (Vsystem_configuration_options): New variable.
5712 (syms_of_emacs): Initialize it.
5713
5714 * buffer.h: Declare evaporate_overlays.
5715 * buffer.c: Declare new symbol Qevaporate.
5716 (syms_of_buffer): Initialize it.
5717 (Fmove_overlay): Check if overlay is empty.
5718 (Foverlay_put): Check if setting evaporate property on empty overlay.
5719 (evaporate_overlays): New function.
5720 * insdel.c (del_range_1): Call evaporate_overlays after deleting text.
5721
57221994-09-16 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5723
5724 * m/intel386.h (HAVE_VFORK): Defined.
5725 [__GNUC__] (C_SWITCH_SYSTEM): Add #undef.
5726
5727 * emacs.c (shut_down_emacs): Don't call Fx_close_current_connection.
5728
5729 * lisp.h (EMACS_INT, EMACS_UINT): Define, if not already defined.
5730
39c87140 5731 * m/alpha.h (EMACS_INT, EMACS_UINT): Defined.
615d0182
DL
5732
57331994-09-16 Rainer Schoepf <schoepf@sc.ZIB-Berlin.DE>
5734
5735 * s/osf1.h [__alpha] (LD_SWITCH_SYSTEM): Alternate definition.
5736
5737 * unexalpha.c, m/alpha.h: New files.
5738
5739 * alloc.c (pure, pure_size): Use EMACS_INT.
5740 (free_float, free_cons, PAD, STRING_FULLSIZE, struct string_block)
5741 (make_pure_string, make_pure_vector, Fgarbage_collect, mark_object)
5742 (gc_sweep, compact_strings, Fmemory_limit): Use EMACS_INT.
5743
5744 * buffer.c (reset_buffer_local_variables, Fbuffer_local_variables)
5745 (init_buffer_once): Use EMACS_INT.
5746
5747 * callint.c (Fcall_interactively): Use EMACS_INT.
5748
5749 * data.c (sign_extend_lisp_int): Use EMACS_INT.
5750
5751 * dispextern.h (struct face): Use EMACS_UINT.
5752
5753 * doc.c (Fdocumentation): Use EMACS_INT.
5754
5755 * editfns.c (Fnarrow_to_region, format1): Use EMACS_INT.
5756
5757 * floatfns.c (FLOAT_TO_INT, FLOAT_TO_INT2): Use EMACS_INT.
5758
5759 * frame.h (struct frame, selected_frame, last_nonminibuf_frame):
5760 Use EMACS_INT.
5761
5762 * lisp.h (Lisp_Object): Use EMACS_INT.
5763 (MARKBIT): Don't define if already defined.
5764 (VALMASK, GCTYPEMASK, XSETTYPE, XSET)
5765 (XSETCONS, XSETBUFFER, XSETVECTOR, XSETSUBR, XSETSTRING)
5766 (XSETSYMBOL, XSETFUNCTION, XSETMARKER, XSETOBJFWD)
5767 (XSETINTPTR, XSETWINDOW, XSETPROCESS, XSETFLOAT)
5768 (struct Lisp_String, struct Lisp_Vector): Use EMACS_INT.
5769
5770 * lread.c (Fload): Use EMACS_INT.
5771
5772 * marker.c (unchain_marker): Use EMACS_INT.
5773
5774 * mem-limits.h: Check for __alpha, in __osf__ conditional.
5775 (EXCEEDS_LISP_PTR): Use EMACS_UINT.
5776
5777 * print.c (print): Use EMACS_UINT.
5778
5779 * puresize.h (CHECK_IMPURE, all versions): Use EMACS_INT.
5780
5781 * window.h (struct window): Use EMACS_INT.
5782
5783 * xdisp.c (message): Use EMACS_INT.
5784
5785 * xterm.h (struct scroll_bar, SCROLL_BAR_VEC_SIZE): Use EMACS_INT.
5786
57871994-09-16 Morten Welinder <terra@diku.dk>
5788
5789 * fileio.c (Finsert_file_contents) [MSDOS]: Don't re-gc-protect
5790 filename; delete unused variables.
5791
57921994-09-16 Karl Heuer <kwzh@churchy.gnu.ai.mit.edu>
5793
5794 * term.c (clear_to_end): Fix reversed condition.
5795
177c0ea7 57961994-09-16 K. Berry <kb@cs.umb.edu>
615d0182
DL
5797
5798 * dired.c (Qcompletion_ignored_extensions): New symbol.
5799 (syms_of_dired): Initialize it.
5800 * fileio.c (Fdelete_file): Bind completion-ignored-extensions to nil.
5801
58021994-09-16 Morten Welinder (terra@diku.dk)
5803
5804 * s/msdos.h (MODE_LINE_BINARY_TEXT): Define this symbol.
5805 * xdisp.c (decode_mode_spec): Use it when defined.
5806
177c0ea7 58071994-09-16 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
615d0182
DL
5808 * minibuf.c (read_minibuf): Don't add to the history list if the
5809 minibuffer string is empty, since it is not very useful.
5810
58111994-09-16 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5812
5813 * m/hp9000s300.h [not BSD4_3] [__GNUC__] (HAVE_ALLOCA): Defined.
5814
58151994-09-16 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
5816
5817 * xdisp.c [!HAVE_X_WINDOWS] (frame_title_ptr): define as always null.
5818
58191994-09-16 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5820
5821 * xterm.c: Delete X11 conditionals.
5822 (XTupdate_end, XTupdate_begin, XTclear_end_of_line)
5823 (XTclear_frame, XRINGBELL, stufflines, scraplines, dumprectangle)
5824 (XTread_socket, x_draw_box, clear_cursor, refreshicon, x_iconify_frame)
5825 (x_bitmap_icon, x_text_icon, x_new_font, x_term_init)
5826 (x_calc_absolute_position, x_set_window_size)
5827 (x_make_frame_visible, x_make_frame_invisible): Delete X10 code.
5828 (dumpqueue, x_do_pending_expose, dumpborder, XEvent, x_read_exposes)
5829 (enqueue_event, dequeue_event, queue_event_count)
5830 (mouse_event_pending_p, x_set_resize_hint): Delete X10 versions.
5831
5832 * xfns.c: Delete X11 conditionals.
5833 (defined_color, x_decode_color, x_set_foreground_color)
5834 (x_set_background_color, x_set_mouse_color, x_set_cursor_color)
5835 (x_set_border_color, x_set_border_pixel, Fx_create_frame)
5836 (Fx_open_connection, Fx_close_current_connection, syms_of_xfns):
5837 Delete X10 code.
5838 (Fx_get_default, Fx_get_resource, Fx_rubber_band)
5839 (Fx_store_cut_buffer, Fx_get_cut_buffer): Delete X10 definitions.
5840
5841 * xfns.c (Fx_display_grayscale_p): New function.
5842 (syms_of_xfns): defsubr it.
5843
5844 * s/bsd386.h (__bsdi__): Define, unless already defined.
5845 (DECLARE_GETPWUID_WITH_UID_T): Define.
5846
5847 * filelock.c (getpwuid): Test just DECLARE_GETPWUID_WITH_UID_T,
5848 not __bsdi__.
5849 * xrdb.c (getpwuid, getpwnam): Test just DECLARE_GETPWUID_WITH_UID_T,
5850 not __bsdi__.
5851
58521994-09-15 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
5853
5854 * editfns.c (syms_of_editfns): Make Vsystem_name and Vuser...name
5855 lisp variables again.
5856 * xdisp.c (multiple_frames, Vframe_title_format,
5857 Vicon_title_format): New variables.
5858 (store_frame_title): New function.
5859 (x_consider_frame_title): Format title according to template.
5860 (display_mode_element): Handle frame title as well as mode line.
5861 (decode_mode_spec): Use w->buffer, not current_buffer.
5862
58631994-09-15 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5864
5865 * s/freebsd.h (DECLARE_GETPWUID_WITH_UID_T): Defined.
5866 [NO_SHARED_LIBS and __FreeBSD__]:
5867 (LD_SWITCH_SYSTEM, A_TEXT_OFFSET, A_TEXT_SEEK): Alternate definitions.
5868
5869 * textprop.c (syms_of_textprop):
5870 Delete Lisp var interval-balance-threshold.
5871
5872 * intervals.c, intervals.h (interval_balance_threshold): Var deleted.
5873
5874 * xfns.c (Fx_create_frame): Make 1 the default for menu-bar-lines.
5875
5876 * keyboard.c (gobble_input): Use sigblockx only if it is defined.
5877
5878 * unexsunos4.c [SUNOS4]: Include link.h.
5879 (unexec) [SUNOS4]: Cancel relocations that ld.so did.
5880
5881 * s/sunos4-0.h (SUNOS4): Defined.
5882
58831994-09-14 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5884
5885 * Makefile.in.in (xmenu.o): Depend on puresize.h.
5886 (cmds.o): Depend on window.h.
5887
5888 * cmds.c: Include window.h.
5889 (Fnewline): Inhibit the insert-at-end-of-line hack
5890 when at the top of the window.
5891
5892 * minibuf.c (Fcompleting_read): Doc fix.
5893
5894 * xmenu.c: Include puresize.h.
5895 (menu_item_equiv_key): Use CHECK_IMPURE.
5896
5897 * syntax.c (Fforward_comment): Do increment from, when reaching
5898 single-char comment end going forward.
5899
5900 * callproc.c (delete_temp_file): Use Fdelete_file.
5901
5902 * fileio.c (Fset_default_file_modes): Doc fix.
5903
5904 * Makefile.in.in (OLDXMENU variable): Refer to the library in the
5905 dir where it is compiled.
5906 (OLDXMENU rule): Delete the commands; keep just a dep.
5907
59081994-09-11 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5909
5910 * Version 19.27 released.
5911
59121994-09-10 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5913
5914 * keymap.c (syms_of_keymap): Doc fix.
5915
5916 * keyboard.c (gobble_input): Block SIGALRM if we are using it.
5917
5918 * gmalloc.c: Bug fix affecting __ptrdiff_t in non-ANSI case.
5919
59201994-09-07 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5921
5922 * Version 19.26 released.
5923
59241994-09-08 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5925
5926 * keyboard.c (record_asynch_buffer_change): Don't test
5927 Fwaiting_for_user_input_p if no subprocesses.
5928
59291994-09-05 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5930
5931 * s/sol2.h [USE_X_TOOLKIT && HAVE_X11XTR6] (REL_ALLOC): Undefine it.
5932
59331994-09-04 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5934
5935 * emacs.c (init_cmdargs): After chasing link, use only the
5936 expanded name.
5937
59381994-09-04 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
5939
5940 * fileio.c (Ffile_accessible_directory_p): Put back the gcpro.
5941
5942 * sysdep.c (srandom): Pass arg to srand48; no return value.
5943
59441994-09-04 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5945
5946 * emacs.c (init_cmdargs): When setting dir, expand the dir name.
5947
5948 * sysdep.c (random, srandom): Check HAVE_LRAND48, not HAVE_RAND48.
5949 Call lrand48, nor rand48.
5950
5951 * config.h.in (HAVE_LRAND48): Replaces HAVE_RAND48.
5952
59531994-09-03 Kaveh R. Ghazi (ghazi@noc.rutgers.edu)
5954
5955 * m/delta88k.h [__GNUC__] (HAVE_ALLOCA): Defined.
c4cc8b9a 5956 [__GNUC__] (C_ALLOCA): Add #undef.
615d0182
DL
5957 (LIB_X11_LIB): Add #undef.
5958 (HAVE_TERMIOS): Defined.
5959 (HAVE_TERMIO): Add #undef.
5960 (NO_TERMIO): Defined.
5961 (sigsetmask): Add #undef.
5962 (USE_GETOBAUD): Defined.
5963
59641994-09-03 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5965
5966 * sysdep.c (init_baud_rate): Test that getobaud is actually defined.
5967
5968 * sysdep.c (init_baud_rate) [USE_GETOBAUD]: Use getobaud.
5969
59701994-09-02 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5971
5972 * insdel.c (prepare_to_modify_buffer): Don't call
5973 verify_overlay_modification if no overlays or
5974 verify_interval_modification no intervals.
5975
5976 * textprop.c (Fset_text_properties):
5977 Return early if buffer has no intervals and PROPS is nil.
5978
59791994-09-02 Lennart Staflin (lenst@rudolf)
5980
5981 * xdisp.c (display_text_line): Don't overrun the charstart area.
5982
59831994-09-02 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5984
5985 * insdel.c (insert_1): Don't call interval fns if buffer has none.
5986
5987 * textprop.c (Fset_text_properties): Don't create or split an interval
5988 if we trivially do not need to change anything.
5989
59901994-08-31 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5991
5992 * xfns.c (defined_color): New arg ALLOC--optionally don't allocate
5993 the color.
5994 (x_decode_color, Fx_color_defined_p): Pass new arg.
5995 (Fx_color_values): New function.
5996
59971994-08-30 Richard Stallman <rms@mole.gnu.ai.mit.edu>
5998
5999 * frame.c (Fdelete_frame): Fix previous change.
6000
60011994-08-30 enami tsugutomo <enami@sys.ptg.sony.co.jp>
6002
6003 * fileio.c (Fwrite_region): unbind_to should take two args.
6004
60051994-08-30 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6006
6007 * fileio.c (Ffile_accessible_directory_p): No need for gcpro.
6008
6009 * keyboard.c (input_polling_used): New function.
6010 * xterm.c (x_make_frame_visible): Call input_polling_used.
6011
60121994-08-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6013
6014 * frame.c (Fdelete_frame): Free the frame's glyphs arrays.
6015 Free the line insert/delete cost vectors.
6016
6017 * dispnew.c (free_frame_glyphs): No longer static.
6018
6019 * m/next.h (HAVE_MACH_MACH_H): Defined.
6020
6021 * editfns.c (Finsert_and_inherit_before_markers):
6022 Use insert_before_markers_and_inherit for character args.
6023 (Finsert_and_inherit): Use insert_and_inherit for character args.
6024
6025 * insdel.c (insert_before_markers_and_inherit): New function.
6026
6027 * cmds.c (internal_self_insert): Use insert_and_inherit.
6028
60291994-08-27 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6030
6031 * indent.c (Findent_to): Pass new arg to Finsert_char.
6032
6033 * editfns.c (Finsert_char): New arg INHERIT.
6034 Use insert_and_inherit if requested.
6035
6036 * insdel.c (insert_1): New arg INHERIT.
6037 (insert_and_inherit): New function.
6038
60391994-08-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6040
6041 * keyboard.c (polling_for_input): Define var unconditionally.
6042 * keyboard.h (polling_for_input): Declared.
6043 * xterm.c: Include keyboard.h.
6044 (x_make_frame_visible): Fix previous change: test polling_for_input
6045 instead of whether SIGIO is defined.
6046 * Makefile.in.in (xterm.o): Depend on keyboard.h.
6047
177c0ea7 60481994-08-26 Kevin Rodgers <kevinr@ihs.com>
615d0182
DL
6049
6050 * xfns.c (Fx_color_defined_p): Return list of RGB values, not just t.
6051
60521994-08-26 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
6053
6054 * xterm.c (x_make_frame_visible): Call signal handler directly.
6055
60561994-08-25 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6057
6058 * s/linux.h: Add LINUX_QMAGIC conditional.
6059
6060 * m/alliant-2800.h (USE_NONANSI_DEFUN): Defined.
6061
6062 * lisp.h (DEFUN): Check USE_NONANSI_DEFUN.
6063
6064 * Makefile.in.in (obj): Put cm.o before term.o.
6065 (Avoids mysterious lossage on Irix.)
6066
6067 * xmenu.c (xmenu_show): Don't queue events that are in the menu bar.
6068
60691994-08-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6070
6071 * xmenu.c (xmenu_show): Do nothing special for ButtonPress in the menu.
6072 Call XtDispatchEvent for all ButtonRelease events.
6073 xlwmenu.c now deals with posting the menu.
6074 Check for events in subwidgets of the menu
6075 when deciding whether to queue them for later handling.
6076
6077 * unexelfsgi.c (unexec): Copy previous change in unexelf.c.
6078
6079 * s/irix5-0.h [__GNUC__] (LD_SWITCH_SYSTEM): Defined.
6080
60811994-08-24 Simon Leinen <simon@lia.di.epfl.ch>
6082
6083 * term.c (term_init): Added missing argument to tgetstr.
6084 (tgetstr): Move declarations to top level.
6085
60861994-08-24 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
6087
6088 * xterm.c (x_make_frame_visible): Raise a signal to cause the
6089 pending X I/O to be read.
6090
60911994-08-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6092
6093 * xdisp.c (display_scan_buffer): New function.
6094 (display_count_lines): Use that.
6095
6096 * intervals.c (textget): Ignore category prop if not a symbol.
6097
60981994-08-23 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
6099
6100 * s/gnu.h: New file.
6101
61021994-08-23 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
6103
6104 * indent.c (pos_tab_offset): Don't trigger point-motion hooks.
6105
6106 * buffer.c (Frename_buffer): Fix gcpro problems.
6107 * fileio.c (Fmake_symbolic_link, Ffile_accessible_directory_p,
6108 Finsert_file_contents, auto_save_error, Fwrite_region): Likewise.
6109 (Fcopy_file, build_annotations, Fdo_auto_save): Delete unused
4e2af782 6110 variables.
615d0182
DL
6111
61121994-08-23 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6113
6114 * fileio.c (O_RDONLY): Defined.
6115 (Finsert_file_contents, Fcopy_file): use it.
6116 (barf_or_query_if_file_exists, Ffile_exists_p): Use stat, not access.
6117 (Ffile_readable_p): Use open, not access.
6118
6119 * lread.c (O_RDONLY): Defined.
6120 (openp): Use it.
6121
6122 * unexelf.c (unexec): Don't alter the info field
6123 of SHT_SYMTAB and SHT_DYNSYM sections.
6124
6125 * xdisp.c (redisplay_window): Don't access text before BEGV.
6126
6127 * keyboard.c (read_char): After read_char_minibuf_menu_prompt,
6128 don't just return; jump to non_reread.
6129
6130 * fileio.c (Fmake_directory_internal): Pass just 2 args to handler.
6131
61321994-08-23 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
6133
6134 * frame.c (Fmake_frame_invisible, Ficonify_frame): Don't switch frames.
6135
61361994-08-22 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
6137
6138 * search.c (Fstring_match): Fix sign error.
6139
6140 * m/ibmrs6000.h (LD_SWITCH_MACHINE): Use full path to ibmrs6000.inp.
6141
61421994-08-21 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6143
6144 * m/ibmrs6000.h (LD_SWITCH_MACHINE): Supply m/ibmrs6000.inp as input.
6145
6146 * m/ibmrs6000.inp: New file.
6147
61481994-08-19 Hiroshi NAKANO <nakano@whale.math.ryukoku.ac.jp>
6149
6150 * unexelf.c: Eliminate local var bss_end.
6151 Update the symbol values of _edata and _end.
6152
61531994-08-19 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6154
6155 * process.c (wait_reading_process_input):
6156 Clear waiting_for_user_input_p before returning.
6157
6158 * xterm.c (x_make_frame_visible): Quit if requested, in loop at end.
6159
61601994-08-17 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6161
6162 * keyboard.c (read_char): Don't show buffer-events to the user.
6163 Handle chars over 255 in dribble files.
6164
61651994-08-17 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
6166
6167 * callproc.c (Fcall_process_region): gcpro filename_string.
6168
61691994-08-17 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6170
6171 * doc.c (store_function_docstring): Do nothing for bytecode object
6172 which has no slot for doc string.
6173
61741994-08-16 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6175
6176 * buffer.c (list_buffers_1): Update header line layout.
6177
61781994-08-13 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6179
6180 * s/sol2-4.h (pid_t): New definition.
6181 (vfork): Definition deleted.
6182
6183 * xmenu.c (xmenu_show): Unconditionally update x_mouse_grabbed
6184 and Vmouse_depressed.
6185
6186 * window.c (window_loop, case UNSHOW_BUFFER):
6187 When we delete a frame, skip all the windows on that frame.
6188
61891994-08-12 Karl Heuer <kwzh@hal.gnu.ai.mit.edu>
6190
6191 * s/isc4-0.h (NEED_SIOCTL): moved to isc-3.0.h.
6192 * s/isc3-0.h (NEED_SIOCTL): moved from isc-4.0.h, and disabled
6193 BROKEN_TIOCGWINSZ since it works fine when you use <sioctl.h>.
6194 (C_SWITCH_SYSTEM): Add -D_SYSV3 to ensure availability of
6195 traditional non-standard functions.
6196 (memmove): Delete this macro; it screws up <string.h> if you
6197 use the native cc. (Emacs already does the right thing anyway.)
6198
61991994-08-12 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6200
6201 * indent.c (compute_motion): Use WIN's frame, not selected one.
6202
6203 * xterm.c (x_new_font): Don't set filename = full_name if that's null.
6204
62051994-08-11 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6206
6207 * Makefile.in.in (FRAME_SUPPORT): Add faces.elc.
6208
6209 * search.c (Freplace_match): Treat caseless initial like a
6210 lowercase initial.
6211
6212 * keymap.c (Fdefine_key): Fix error message.
6213 (Fsingle_key_description): Likewise.
6214
62151994-08-10 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6216
6217 * s/sol2-3.h (POSIX_SIGNALS): Define it.
6218 (PTY_TTY_NAME_SPRINTF): New overriding definition.
6219 (sigsetmask): Add #undefs.
6220
6221 * s/sol2-4.h (POSIX_SIGNALS, PTY_TTY_NAME_SPRINTF, sigsetmask):
6222 Delete those things (moved to sol2-3.h).
6223
6224 * s/sol2-4.h (HAVE_VFORK): Deleted.
6225 (vfork): Define as emacs_vfork.
6226
6227 * window.c (Fwindow_end): Undo previous change.
6228
62291994-08-09 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6230
6231 * keyboard.c (record_asynch_buffer_change): Do nothing
6232 except when waiting_for_user_input_p.
6233
6234 * m/i860.h [USG5_4] (SVR4): Defined.
6235
6236 * xdisp.c (display_text_line):
6237 Make previous change #ifdef HAVE_X_WINDOWS.
6238
62391994-08-08 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6240
6241 * puresize.h [MULTI_FRAME] (PURESIZE): Increased.
6242
6243 * window.c (Fwindow_end): If window_end_valid is nil, return nil.
6244
6245 * window.c (Fpos_visible_in_window_p): Do something reasonable
6246 if w->start is outside the buffer bounds.
6247
62481994-08-07 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6249
6250 * s/sol2-4.h (PTY_TTY_NAME_SPRINTF): New definition.
6251 (sigsetmask): Add #undef.
6252
6253 * keymap.c (Faccessible_keymaps): Fix previous change.
6254
62551994-08-06 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6256
6257 * xdisp.c (display_text_line): Use the face properties
6258 of the overlay arrow, if any.
6259
6260 * xfaces.c (compute_glyph_face_1): New function.
6261
6262 * m/intel386.h (LIBS_MACHINE): If SOLARIS2_4, don't define this.
6263 * s/sol2-4.h (SOLARIS2_4): Defined.
6264
62651994-08-05 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6266
6267 * keymap.c (Fuse_global_map, Fuse_local_map):
6268 Call record_asynch_buffer_change.
6269
6270 * xterm.c (XTread_socket):
6271 Don't test X_IO_BUG; make that code unconditional.
6272 (x_noop_count, x_term_init): Likewise.
6273
62741994-08-04 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6275
6276 * data.c (Fdefine_function, Fdefalias): Handle advice as in Ffset.
6277 (Qad_advice_info): Lisp and C names renamed from Qadvice_info.
6278 (Qad_activate): C name renamed from Qactivate_advice.
6279
6280 * fileio.c (Fread_file_name_internal): Call double_dollars
6281 when `changed' is set.
6282
62831994-08-03 Caveh Jalali (caveh@eng.sun.com)
6284
6285 * m/intel386.h [SOLARIS2] (VALBITS, GCTYPEBITS): New definitions.
6286
6287 * s/sol2-4.h: New file.
6288
62891994-08-03 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6290
6291 * buffer.c (list_buffers_1): Add one column to size column.
6292
6293 * xterm.c (x_make_frame_visible): Start one_in_four at 1.
6294
6295 * window.c (Fwindow_end): Doc fix.
6296
6297 * xterm.c (construct_mouse_click, construct_menu_click):
6298 Don't update x_mouse_grabbed, Vmouse_depressed, last_mouse_frame here.
6299 (XTread_socket): Update them here, so we do it without fail.
6300 (XTmouse_position, XTread_socket case MotionNotify):
6301 Check last_mouse_frame is nonzero before using it.
6302
6303 * Makefile.in.in (alloca.o): Use -f in all rm's.
6304
63051994-08-02 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6306
6307 * keymap.c (Faccessible_keymaps): Use PREFIX to set loop starting
6308 point; don't even consider maps except those reached via prefix.
6309
6310 * keyboard.c (make_lispy_event): If the position is not in a window,
6311 at least pass along the frame it is in.
6312
63131994-08-01 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
6314
6315 * data.c (Ffset): Don't call Fget unless SYM's plist is consp.
6316
63171994-08-01 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6318
6319 * eval.c (Fprog2): Doc fix.
6320
6321 * window.c (Fmove_to_window_line): Doc fix.
6322
63231994-08-01 Frederic Pierresteguy (F.Pierresteguy@frcl.bull.fr)
6324
6325 * xmenu.c (xmenu_show): Ignore any geometry resource from the user.
6326
63271994-07-31 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6328
6329 * xfns.c (Fx_get_resource): Doc fix.
6330
6331 * data.c (syms_of_data): Set up Qadvice_info, Qactivate_advice.
6332 (Ffset): Activate advice if symbol has advice-info property.
6333
6334 * xdisp.c (redisplay_window): Avoid using SET_PT to change point
6335 temporarily.
6336
6337 * dispnew.c (sit_for): Undo previous change.
6338
63391994-07-30 enami tsugutomo <enami@sys.ptg.sony.co.jp>
6340
6341 * dispnew.c (direct_output_for_insert): Pass missing 8th
6342 argument to compute_char_face.
6343
63441994-07-30 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6345
6346 * keyboard.c (follow_key): Don't downcase letters here.
6347 Delete arg `case_converted'.
6348 (read_key_sequence): Do it here; but not if in middle of fcn key.
6349
6350 * fns.c (Frandom): Handle LIMIT >= 40000000.
6351
6352 * xdisp.c (decode_mode_spec): Handle %&.
6353
63541994-07-29 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6355
6356 * process.c (create_process): Set default handling for SIGINT, etc.
6357
63581994-07-28 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6359
6360 * process.c (wait_reading_process_input): Fix previous change.
6361
6362 * s/hpux9.h (HAVE_TERMIOS, NO_TERMIO): Defined.
6363 (HAVE_TERMIO): Add #undef.
6364
6365 * sysdep.c (random): Use rand differently, and distinguish BSD/USG.
6366
6367 * fns.c (Frandom): Fix previous change.
6368
63691994-07-27 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6370
6371 * syssignal.h [POSIX_SIGNALS] (signal): New definition.
6372
6373 * config.h.in (HAVE_RAND48): Add #undef.
6374
63751994-07-26 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6376
6377 * xterm.c (x_queue_event, x_unqueue_events): New functions.
6378 (x_start_queuing_selection_requests): New function.
6379 (x_stop_queuing_selection_requests): New function.
6380 (XTread_socket): Queue up SelectionRequest events sometimes.
6381 * xselect.c (x_get_foreign_selection): Use the new feature
6382 to queue up SelectionRequest events.
6383
6384 * process.c (wait_reading_process_input): If wait_for_cell,
6385 do check for keyboard input and handle it.
6386
6387 * fns.c (Frandom): Use just the low 30 bits of random's value.
6388
6389 * sysdep.c (random, srandom): Obey HAVE_RAND48 flag.
6390 Test that random is not a macro. Don't test USG or BSD4_1.
6391
6392 * m/tek4300.h (tek4300): Don't define if already defined.
6393
63941994-07-25 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6395
6396 * m/tek4300.h (BSD_PGRPS): Defined.
6397
6398 * puresize.h (PURESIZE): Increase non-MULTI_FRAME value.
6399
6400 * editfns.c (get_system_name): Add a cast.
6401
6402 * config.h.in: Add #undef HAVE_H_ERRNO.
6403 * process.c, sysdep.c [!HAVE_H_ERRNO]: Declare h_errno.
6404 * sysdep.c (init_system_name): Set h_errno to 0 initially.
6405 * process.c (Fopen_network_stream): Set h_errno to 0 initially.
6406
6407 * window.c (Fdisplay_buffer): Add MULTI_FRAME cond in last change.
6408
6409 * Makefile.in.in: Add #undef alloca.
6410
64111994-07-23 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6412
6413 * minibuf.c (Fdisplay_completion_list): gcpro `completions'.
6414
6415 * print.c (internal_with_output_to_temp_buffer): gcpro things.
6416
6417 * puresize.h (PURESIZE): Incremented to 252000.
6418
64191994-07-23 Jim Blandy (jimb@totoro.bio.indiana.edu)
6420
6421 * .gdbinit: Set the breakpoint in x_error_quitter instead of
6422 _XPrintDefaultError.
6423
64241994-07-20 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6425
6426 * window.c (Fnext_window, Fprevious_window): Don't get stuck in a loop
6427 in the minibuffer frame.
6428
6429 * dispnew.c (direct_output_for_insert): Dpn't call compute_char_face
6430 for a non-X frame.
6431
6432 * s/usg5-4.h: Move #undef static before the includes.
6433
6434 * xrdb.c [USG5] (SYSV): Don't define if already defined.
6435
6436 * fileio.c (Fwrite_region): Do unwind the new unwind protect.
6437
64381994-07-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6439
6440 * xterm.c (struct font_info): New field full_name.
6441 (x_new_font): Record, and return, the full name of the font.
6442
6443 * widget.c (EmacsFrameSetCharSize): Delete the code to make rows at
6444 least 3.
6445
6446 * fileio.c (Vwrite_region_annotations_so_far): New variable.
6447 (syms_of_fileio): Set up Lisp var.
6448 (build_annotations): Handle annotate functions that switch buffers.
6449 Set Vwrite_region_annotations_so_far.
6450 (Fwrite_region): Handle change of buffer in build_annotations.
6451 Add an unwind protect to restore original buffer and kill the temp.
6452
6453 * sysdep.c (init_system_name): Retry gethostbyname after TRY_AGAIN
f102186f 6454 failure.
615d0182
DL
6455
6456 * process.c (Fopen_network_stream):
6457 Retry gethostbyname after TRY_AGAIN failure.
6458
6459 * s/isc4-0.h [__GNUC__] (LIBX11_SYSTEM): Add -lcposix.
6460
6461 * s/usg5-4.h (PTY_TTY_NAME_SPRINTF): Fail smoothly if cannot get pty.
6462
6463 * sysdep.c (sys_subshell): Expand ~ in dir.
6464 Do the processing of dir before calling fork.
6465 Use vfork.
6466
64671994-07-18 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6468
6469 * xterm.c (note_mouse_movement): Use proper data type for window
6470 args to XQueryPointer.
6471 (x_scroll_bar_note_movement): Likewise.
6472
6473 * keyboard.c (Vdeferred_action_list, Vdeferred_action_function):
6474 New variables.
6475 (command_loop_1): Handle them.
6476 (syms_of_keyboard): Set up Lisp variables.
6477
6478 * s/linux.h [emacs]: Include stdio.h.
6479
f102186f 6480 * commands.h (unread_command_char): Declare.
615d0182
DL
6481 * dispnew.c (sit_for): Return immediately if unread events exist.
6482
64831994-07-17 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6484
6485 * textprop.c (Fget_text_property): Simplify using Ftext_properties_at.
6486
64871994-07-17 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6488
6489 * xfns.c (Fx_create_frame): Use 140 as default font size.
6490
6491 * xmenu.c [USE_X_TOOLKIT] (xmenu_show): Handle UnmapNotify events.
6492
64931994-07-16 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6494
6495 * window.c (Fdisplay_buffer): Cope with unsplittable frames
6496 and dedicated windows.
6497
6498 * frame.c [!MULTI_FRAME] (Fframe_first_window): Defined.
6499 (syms_of_frame): Defvar it.
6500
65011994-07-14 Morten Welinder (terra@diku.dk)
6502
6503 * s/msdos.h (HAVE_VOLATILE): Define.
6504
65051994-07-14 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6506
6507 * keyboard.c (safe_run_hooks): Use local var to restore hook's value.
6508
65091994-07-13 Morten Welinder (terra@diku.dk)
6510
6511 * keyboard.c (kbd_buffer_get_event) [HAVE_MOUSE]: Include code
6512 to check for mouse dragging.
6513 (make_lispy_movement) [HAVE_MOUSE]: Define also in this case,
6514 but only include the non-multiframe stuff.
6515
6516 * msdos.c (mouse_init1): Use alternate mouse detection for old
6517 mouse drivers.
6518 (mouse_get_pos): Downscale coordinates by 8.
6519
65201994-07-13 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6521
6522 * window.c (Fselect_window): Fix bug checking new_point is in range.
6523
6524 * fileio.c (syms_of_fileio): Finish previous change.
6525
6526 * keyboard.c (command_loop_1): Do direct output for cursor motion
6527 over text chars when disp tab exists but says nothing for them.
6528
6529 * frame.h (FRAME_EXTERNAL_MENU_BAR) [!USE_X_TOOLKIT]: Give zero.
6530
6531 * xdisp.c [!HAVE_X_WINDOWS] (compute_char_face, compute_glyph_face):
6532 Add simple alternate definitions for non-X case.
6533
65341994-07-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6535
6536 * process.c (Qlast_nonmenu_event): New variable.
6537 (syms_of_process): Set it up.
6538 (read_process_output, exec_sentinel): Bind it to t around filter.
6539
6540 * fileio.c (Fmake_directory_internal): Use Qmake_directory_internal.
6541 (syms_of_fileio): Set up Qmake_directory_internal, not Qmake_directory.
6542
6543 * frame.c [MULTI_FRAME] (Fframe_parameters): For non-X frames,
6544 fill in menu-bar-lines value.
6545
65461994-07-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6547
6548 * xmenu.c (xmenu_show): Don't call XtUngrabPointer here.
6549
6550 * Makefile.in.in (ctagsfiles): Rewrite to avoid compiler bug.
6551
65521994-07-10 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6553
6554 * window.c (Fdisplay_buffer): Add MULTI_FRAME conditional
6555 in previous change.
6556
65571994-07-10 Morten Welinder (terra@diku.dk)
6558
6559 * m/intel386.h [MSDOS] (NO_REMAP): Defined.
6560 * s/msdos.h (HAVE_MOUSE, PURESIZE): Definitions moved here.
6561 * m/dos386.h: File obsolete and deleted.
6562
6563 * msdos.c (dos_rawgetc): Use bios, not kbhit.
6564
65651994-07-09 Morten Welinder (terra@diku.dk)
6566
6567 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory,
6568 file_name_as_directory, directory_file_name, Fexpand_file_name,
6569 Ffile_name_absolute_p, Fsubstitute_in_file_name) [MSDOS]:
6570 Allow backslashed file names.
6571
65721994-07-09 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6573
6574 * puresize.h (PURESIZE) [MULTI_FRAME]: Increased to 250000.
6575
6576 * lread.c (readevalloop): Correctly unbind the unwind protect.
6577
65781994-07-08 Morten Welinder (terra@diku.dk)
6579
6580 * msdos.c (do_visible_bell): Clean-up using GNU assembly extension.
6581
65821994-07-07 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6583
6584 * m/sparc.h (BIG_ENDIAN): Don't redefine if defined.
6585
6586 * Makefile.in.in (alloca.o): Delete allocatem.c first thing.
6587
6588 * xmenu.c (xmenu_show) {USE_X_TOOLKIT}: ButtonPress no longer pops
6589 down; instead it forces the next ButtonRelease to exit. Don't
6590 dispatch on ButtonPress events.
6591
6592 * xfns.c (syms_of_xfns): Provide x-toolkit in toolkit version.
6593 Undo previous change.
6594 (x_toolkit): Variable deleted.
6595
6596 * xfns.c (x_toolkit): New variable.
6597 (syms_of_xfns): Set up Lisp var x-toolkit.
6598
6599 * window.c (Fnext_window, Fprevious_window): ALL_FRAMES = 0 means
6600 try both visible frames and iconified frames.
6601 (window_loop): Likewise, for FRAMES = 0.
6602 (Fget_buffer_window): Likewise, for FRAME = 0.
6603 (Fdisplay_buffer): Pass 0 to Fget_buffer_window;
6604 if the frame is iconified, make it visible.
6605
6606 * frame.c (next_frame, prev_frame):
6607 MINIBUF = 0 means try visible frames and iconified frames.
6608
66091994-07-06 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6610
6611 * xmenu.c (xmenu_show) [USE_X_TOOLKIT]: Keyboard input exits the menu.
6612 ButtonRelease does so if within Vdouble_click_time.
6613 Ignore mouse motion if button was already released.
6614 (menu_item_selection): Declare volatile, if __STDC__.
6615
6616 * keyboard.c (make_lispy_event): Ignore menu bar up events.
6617
66181994-07-05 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6619
6620 * doprnt.c (doprnt): Handle padding on %c.
6621
6622 * frame.c (next_frame, prev_frame): Change which frames to use
6623 when MINIBUF is a window.
6624 (Fnext_frame, Fprevious_frame): Doc fixes.
6625
6626 * window.c: Doc fixes.
6627
66281994-07-04 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6629
6630 * xterm.c (XTread_socket, construct_menu_click) [USE_X_TOOLKIT]:
6631 Update x_mouse_grabbed and Vmouse_depressed.
6632
66331994-07-02 Richard Stallman (rms@gnu.ai.mit.edu)
6634
6635 * xdisp.c (decode_mode_spec): %+ makes % for unmodified RO buffer.
6636
6637 * buffer.c (syms_of_buffer): Doc fix.
6638
6639 * xfaces.c (get_cached_face): Set the cached_index field.
6640
66411994-07-01 Richard Stallman (rms@gnu.ai.mit.edu)
6642
6643 * sysdep.c (init_sys_modes): Turn off VSTART and VSTOP chars.
6644 On DGUX, turn off INPCK.
6645
66461994-07-01 Paul Reilly (pmr@churchy.gnu.ai.mit.edu)
6647
6648 * xfns.c (Fx_create_frame): Add GC protection for frame being made.
6649
66501994-06-30 Richard Stallman (rms@gnu.ai.mit.edu)
6651
6652 * xterm.c (x_make_frame_visible): In x_sync loop at the end,
6653 every fourth time, sleep for 1/4 second.
6654
6655 * xselect.c (x_own_selection, x_get_foreign_selection):
6656 Get rid of spurious X_TOOLKIT conditional.
6657
6658 * frame.c (Fdelete_frame): Call x_clear_frame_selections.
6659
6660 * xselect.c (x_own_selection): Put the frame in Vselection_alist.
6661 (x_clear_frame_selections): New function.
6662
6663 * xterm.c (x_draw_box): Use curs_x and curs_y, not f->cursor_[xy].
6664
6665 * xfns.c (XLIB_ILLEGAL_ACCESS): Defined.
6666
66671994-06-29 Richard Stallman (rms@gnu.ai.mit.edu)
6668
6669 * s/hpux.h (random, srandom): Defined.
6670
6671 * cmds.c (internal_self_insert): Now can return 2.
6672 * keyboard.c (command_loop_1): Don't clear nonundocount
6673 when internal_self_insert returns 1.
6674
66751994-06-28 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6676
6677 * xfns.c (x_set_frame_parameters): Call x_set_offset directly.
6678 Handle `-' for position parameters.
6679
66801994-06-28 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
6681
6682 * lread.c (readchar): Restart interrupted I/O.
6683
66841994-06-28 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
6685
6686 * fileio.c (a_write): Loop while *ANNOT is listp, not consp.
6687 Previous code omitted all data from output files when *ANNOT was
6688 nil.
6689
66901994-06-28 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6691
6692 * xfns.c (x_set_name): If no change needed, avoid consing.
6693
6694 * xdisp.c (prepare_menu_bars): Call x_consider_frame_title
6695 only if windows_or_buffers_changed.
6696
6697 * keyboard.c (safe_run_hooks): Take symbol as arg.
6698 Use Fsymbol_value and Fset.
6699 (command_loop_1): Pass symbol to safe_run_hooks.
6700 Look in the value cell to check for trivial case (no hooks).
6701
6702 * xdisp.c (redisplay_region): For special treatment, BUF most be
6703 both current and displayed in selected window.
6704
6705 * buffer.c (Foverlay_put): Pass redisplay_region a struct buffer *.
6706
67071994-06-27 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6708
6709 * fileio.c (a_write): Verify that *annot is a cons.
6710
67111994-06-26 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6712
6713 * keyboard.c (echo_dash): Fix backwards conditional.
6714 (read_key_sequence): Don't echo if echo_keystrokes is 0.
6715
6716 * m/news-risc.h (C_DEBUG_SWITCH) [not NEWSOS5]:
6717 Don't define if __GNUC__.
6718 (KERNEL_FILE) [not NEWSOS5]: New override definition.
6719
67201994-06-25 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6721
6722 * process.c (send_process): Major rewrite.
6723 Don't put in a C-d unless a single line is too long.
6724 Read process input whenever output gets stuck.
6725 Relocate BUF if we read input. New arg OBJECT.
6726 (Fprocess_send_region, Fprocess_send_string, process_send_signal)
6727 (Fprocess_send_eof): Pass new arg OBJECT.
6728
6729 * buffer.h (BUF_PTR_CHAR_POS): New macro.
6730
6731 * window.c (Fsave_window_excursion): Doc fix.
6732
6733 * s/hpux9.h (C_SWITCH_SYSTEM): Add -D_BSD.
6734
6735 * frame.c (Fframe_parameters): Don't handle menu-bar-lines explicitly.
6736
6737 * window.c (Fother_window_for_scrolling): New function.
6738 (Fscroll_other_window): Use that.
6739 (syms_of_window): defsubr it.
6740
67411994-06-24 Karl Heuer (kwzh@nutrimat.gnu.ai.mit.edu)
6742
6743 * fileio.c (Finsert_file_contents): Fix check for non-regular files.
6744
67451994-06-24 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6746
6747 * syntax.c (scan_lists, Fforward_comment): When moving backward over
6748 a comment, ignore a comment-starter that overlaps the comment-ender.
6749
6750 * minibuf.c (Fcompleting_read): Doc fix.
6751
67521994-06-23 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
6753
6754 * keyboard.c (syms_of_keyboard): Don't staticpro the same var twice.
6755
67561994-06-23 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6757
6758 * s/convexos.h: File deleted.
6759
6760 * xterm.c: Don't include string.h or strings.h.
6761
6762 * term.c (term_get_fkeys): Don't redeclare term_get_fkeys_1 here.
6763
6764 * m/convex.h (LIBS_MACHINE, GETPGRP_NO_ARG): Defined.
6765 (NLIST_NAME_UNION, DECLARE_GETPWUID_WITH_UID_T): Defined.
6766 (CRT0_DUMMIES): Conditionalize according to __GNUC__.
6767 (convex): Define if necessary.
6768 (C_SWITCH_MACHINE): Definition deleted.
6769
67701994-06-22 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6771
6772 * buffer.c (Fmove_overlay): Fix typo in previous change.
6773
6774 * s/sunos4shr.h (X_IO_BUG): Defined.
6775
67761994-06-21 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6777
6778 * minibuf.c (read_minibuf_unwind): Run Qminibuffer_exit_hook here.
6779 (read_minibuf): Not here.
6780
6781 * buffer.c (Fkill_buffer): Don't delete auto save file
6782 if it didn't come from this Emacs session.
6783 (Fmove_overlay): Add missing XINT calls in previous change.
6784
67851994-06-20 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
6786
6787 * xfns.c (x_window): Delete duplicate computation.
6788 Change type of reference argument from int to Dimension.
6789
67901994-06-20 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6791
6792 * config.h.in: Move #undef HAVE_STRERROR before the #includes.
6793
6794 * m/mips4.h (HAVE_STRERROR, HAVE_XRMSETDATABASE)
6795 (HAVE_XSCREENRESOURCESTRING, HAVE_SETSID): Add #undefs.
6796
6797 * buffer.c (Fmove_overlay): Call redisplay_region even when
6798 changing to a different buffer.
6799
6800 * syntax.c (Fmatching_paren): Fix typo.
6801
6802 * xterm.c (show_mouse_face): Set endcolumn ok in side-by-side windows.
6803
68041994-06-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6805
6806 * s/linux.h (SEGMENT_MASK): Defined.
6807
6808 * xfns.c (x_window): Take account of pane widget internal border width.
6809
6810 * s/linux.h (C_OPTIMIZE_SWITCH): Definition deleted.
6811
6812 * lisp.h (RETURN_UNGCPRO): Swallow semicolon.
6813 (GCPRO5): New macro.
6814
6815 * xmenu.c (single_keymap_panes): Put menu_item_equiv_key in the gcpro.
6816 (menu_item_equiv_key): GCPRO things.
6817
6818 * keymap.c (Flookup_key): Add gcpro.
6819 (Fkey_binding, Fminor_mode_key_binding): Likewise.
6820 (Fwhere_is_internal): Likewise.
6821
6822 * keyboard.c (apply_modifiers): Use assq_no_quit.
6823
68241994-06-19 Erik Naggum (erik@naggum.no)
6825
6826 * syntax.h (SYNTAX_MATCH): Fix typo (syntax -> matcher).
6827
6828 * syntax.c (Fmatching_paren): New function.
6829 (Fchar_syntax): Pass arg directly to SYNTAX, no masking.
6830
68311994-06-18 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6832
6833 * .gdbinit: Doc fixes.
6834 (xsymbol): Cast $ to int.
6835 (xvector, xstring): Don't use a string constant.
6836 Reduce size limit for printing contents.
6837
6838 * s/sol2.h (GETTIMEOFDAY_ONE_ARGUMENT): Undo previous change.
6839
b344d29d 68401994-06-18 Francesco Potortì (pot@fly.cnuce.cnr.it)
615d0182
DL
6841
6842 * m/delta.h (memmove): switch the first two args.
6843
68441994-06-18 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6845
6846 * xterm.c (x_make_frame_visible): At end, wait till Emacs sees
6847 frame is visible.
6848
6849 * keyboard.c (echo_after_prompt): New variable.
6850 (echo_prompt, cancel_echoing): Set it.
6851 (echo_dash): Test it.
6852
6853 * s/linux.h (C_DEBUG_SWITCH): Define, if THIS_IS_CONFIGURE.
6854 (HAVE_GETTIMEOFDAY, HAVE_MKDIR, HAVE_RMDIR):
6855 (HAVE_XSCREENNUMBEROFSCREEN, HAVE_XRMSETDATABASE):
6856 Comment out these definitions.
6857
6858 * Makefile.in.in (doprnt.o): Depend on config_h.
6859
68601994-06-17 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6861
6862 * systime.h (EMACS_GET_TIME): Test GETTIMEOFDAY_ONE_ARGUMENT,
6863 not USG5_4.
6864 * s/usg5-4.h (GETTIMEOFDAY_ONE_ARGUMENT): Define it.
6865 * s/sol2.h (GETTIMEOFDAY_ONE_ARGUMENT): Undef it.
6866
6867 * xfns.c (x_real_positions): Make sure we know the parent window.
6868
68691994-06-17 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
6870
6871 * window.h (minibuf_prompt): Now a Lisp_Object. All uses changed.
6872
6873 * minibuf.c (minibuf_save_list): New variable, replaces
6874 minibuf_save_vector.
6875 (read_minibuf): Cons it up.
6876 (read_minibuf_unwind): Pop back the saved values.
6877 (syms_of_minibuf): staticpro it.
6878
6879 * indent.c (compute_motion): Recenter overlays, for speed.
6880
68811994-06-17 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6882
6883 * xterm.c (scratch_cursor_gc): New variable.
6884 (dumpglyphs): Rework handling of GCs for cursor display
6885 to use scratch_cursor_gc, and reuse the GC more.
6886
68871994-06-16 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6888
6889 * unexec.c (make_hdr): Handle case of no "additional header".
6890
6891 * xdisp.c (redisplay_region): Treat selected window's buffer
6892 specially, not current buffer.
6893
6894 * syssignal.h [USG5_4] (sigblock): Use |, not &.
6895
68961994-06-16 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
6897
6898 * xdisp.c (redisplay_window): Don't use shortcut if window_end_vpos
6899 is out of date.
6900
69011994-06-16 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6902
6903 * process.c (Fprocess_status): Return nil for process name
6904 that has no process.
6905
6906 * dispnew.c (syms_of_display): Make baud-rate a user var.
6907
6908 * syntax.c (scan_lists): Get error if eob within comment with depth!=0.
6909
69101994-06-16 Roland McGrath (roland@geech.gnu.ai.mit.edu)
6911
6912 * unexec.c: Include <sys/file.h> and [USG5] <fcntl.h> to define
6913 O_* macros.
6914 (O_RDONLY, O_RDWR): Define if undefined.
6915 [emacs] (report_error): Use report_file_error so the user can tell
6916 what the errno code was.
6917 (unexec): Use O_RDONLY instead of explicit 0.
6918 (make_hdr): Don't undo A_TEXT_OFFSET adjustment #ifndef NO_REMAP,
6919 since it was never adjusted earlier #ifndef NO_REMAP.
6920 (adjust_lnnoptrs): Use O_RDWR instead of explicit 2.
6921
69221994-06-15 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6923
6924 * xterm.c (x_noop_count): New variable.
6925 (x_term_init) [X_IO_BUG]: Init it.
6926 (XTread_socket) [X_IO_BUG]: Don't do XNoOp every time, just 1 in 100.
6927
69281994-06-15 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6929
6930 * syssignal.h (sigblock) [USG5_4]: Define if not defined.
6931
69321994-06-14 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6933
6934 * lread.c: Put config.h first.
6935
6936 * hftctl.c: Put sys/signal.h and errno.h first, then config.h.
6937
6938 * dired.c: Put stdio.h, sys/types.h and sys/stat.h after config.h.
6939
6940 * callproc.c, dispnew.c, frame.c, term.h: Put stdio.h after config.h.
6941 * widget.c, xmenu.c, xterm.c: Put stdio.h after config.h.
6942
69431994-06-14 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
6944
6945 * sysdep.c (init_system_name): New function, replaces get_system_name.
6946 * lisp.h: declare it.
6947 * editfns.c (init_editfns): Call it.
6948 (get_system_name): New function, now just uses Vsystem_name.
6949 * xterm.c (x_term_init): Use Vsystem_name instead of calling
6950 get_system_name.
6951
6952 * keymap.c (Fsingle_key_description): Allow strings as keys.
6953
6954 * process.c (create_process): Set input_wait_mask before forking.
6955
69561994-06-14 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6957
6958 * indent.c (vmotion): Use find_next_newline_no_quit.
6959 (indented_beyond_p): Likewise.
6960
6961 * search.c (find_next_newline_no_quit): New function.
6962
6963 * sysdep.c (init_sys_modes): Don't set up sigio here if window system.
6964
6965 * keyboard.c (read_key_sequence): Verify event has a POSN_BUFFER_POSN
6966 before trying to extract it.
6967
6968 * eval.c (init_eval_once): Call xmalloc, not malloc.
6969
6970 * process.c (Fprocess_send_eof): Doc fix.
6971
69721994-06-13 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6973
6974 * keyboard.c (interrupt_signal, init_keyboard):
6975 Don't handle SIGINT and SIGQUIT if using window system directly.
6976
6977 * sysdep.c (init_sys_modes): Don't call set_terminal_modes
6978 if using a window system.
6979
6980 * xterm.c (XTread_socket): Use x_top_window_to_frame in prev change.
6981
6982 * s/sol2.h (SOLARIS2): Defined.
6983
6984 * m/intel386.h: Add conditional for SOLARIS2.
6985
69861994-06-13 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
6987
6988 * xmenu.c (single_keymap_panes): gcpro some things.
6989
69901994-06-13 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6991
6992 * xterm.c (XTread_socket): Handle Xatom_wm_save_yourself
6993 by calling XSetCommand.
6994
6995 * emacs.c (init_cmdargs): Set up initial_argv, initial_argc.
6996
6997 * keyboard.c (syms_of_keyboard): Properly init Vsystem_key_alist.
6998
6999 * unexaix.c (adjust_lnnoptrs): Handle multiple aux symbols.
7000
70011994-06-12 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
7002
7003 * editfns.c (transpose_markers): Allow for gap at start of region.
7004 (Ftranspose_regions): Don't precompute pointers into buffer text.
7005
70061994-06-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
7007
7008 * xfns.c (x_window): Request "save yourself" commands.
7009
7010 * callint.c (Fcall_interactively): Ignore `-' in string.
7011 (Fcall_interactively): Don't call minibuffer-window-active-p;
7012 determine directly whether a minibuf window is active.
7013
7014 * keyboard.c (read_char): When we loop and call redisplay,
7015 do prepare_menu_bars first.
7016
70171994-06-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
7018
7019 * search.c (Freplace_match): Be sure not to treat non-digit like digit.
7020
7021 * xmenu.c (xmenu_show): Don't call XMenuDestroy twice
7022 in XM_FAILURE case.
7023
7024 * Makefile.in.in (xterm.o): Depend on dispextern.h.
7025
7026 * s/sunos4-1-3.h (X_IO_BUG): Defined.
7027
70281994-06-10 Richard Stallman (rms@mole.gnu.ai.mit.edu)
7029
7030 * s/linux.h (CLASH_DETECTION): Defined.
7031
7032 * minibuf.c (Fdisplay_completion_list):
7033 Require at least two spaces between items.
7034
70351994-06-07 Richard Stallman (rms@geech.gnu.ai.mit.edu)
7036
7037 * keyboard.c (command_loop_1):
7038 Treat nil in display tab like no display tab.
7039
70401994-06-07 Richard Stallman (rms@mole.gnu.ai.mit.edu)
7041
39c87140 7042 * m/mips-siemens.h: Include pyramid.h, not mips.h.
615d0182
DL
7043 (LOAD_AVE_TYPE, LOAD_AVE_CVT): Definitions deleted.
7044 (NO_ARG_ARRAY, HAVE_ALLOCA): Defined.
7045 (BROKEN_FIONREAD): Add #undef.
7046
70471994-06-07 Morten Welinder (terra@diku.dk)
7048
7049 * msdos.c (init_environment): Clean up code and make the default
7050 EMACSPATH equal to the directory from which Emacs was started.
7051 (emacsroot): New variable.
7052 (rootrelativepath): New function.
7053 * msdos.h: Add template for rootrelativepath.
7054 * lread.c [MSDOS]: #include "msdos.h".
7055 * callproc.c (init_callproc) [MSDOS]: Exclude less code, so ../etc
7056 is still tested for doc file.
7057
70581994-06-06 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
7059
7060 * fns.c (Fy_or_n_p, Fyes_or_no_p) [HAVE_X_MENU]: Redisplay before
7061 popping up a menu.
7062
7063 * dispnew.c (Fframe_or_buffer_changed_p): Reuse the state vector.
7064
70651994-06-06 Richard Stallman (rms@mole.gnu.ai.mit.edu)
7066
7067 * frame.c (Ficonify_frame, Fmake_frame_invisible, Fmake_frame_visible):
7068 Increment windows_or_buffers_changed.
7069
7070 * xdisp.c (redisplay): Don't call x_consider_frame_title.
7071 (display_mode_line): Likewise.
7072 (prepare_menu_bars): Call it here.
7073
70741994-06-06 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
7075
7076 * dispnew.c (Fframe_or_buffer_changed_p): New function.
7077
70781994-06-05 Richard Stallman (rms@mole.gnu.ai.mit.edu)
7079
7080 * xterm.c (x_wm_set_icon_position, x_wm_set_icon_pixmap):
7081 [USE_X_TOOLKIT]: Use top-level widget's window.
7082
7083 * s/bsd386.h (BSD): Redefine.
7084 (WAITTYPE, WRETCODE, WCOREDUMP): New definitions.
7085 Include wait.h.
7086
7087 * m/sun386.h (LIBS_MACHINE) [USG]: New #define.
7088
7089 * xterm.c (x_term_init): New args xrm_option and resource_string.
7090 Pass an -xrm option to XtAppInitialize if appropriate.
7091
7092 * xfns.c (Fx_open_connection): Set up Vx_resource_name and xrm_option
7093 before calling x_term_init. Pass new args.
7094
7095 * keyboard.c (modify_event_symbol): Return nil if out of range.
7096
7097 * keymap.c (Fkey_description): Avoid using Fmapconcat--do it directly.
7098
7099 * keyboard.c, dispnew.c: Include systime.h after xterm.h.
7100
7101 * xfns.c (x_window): Take account of internal border of paned widget.
7102
7103 * m/dos386.h (PURESIZE): Increased to 240000.
7104
7105 * xfns.c (using_x_p): New function.
7106 * fns.c (Fy_or_n_p): Don't use dialog box if not an X frame.
7107 (Fyes_or_no_p): Likewise.
7108
71091994-06-04 Richard Stallman (rms@mole.gnu.ai.mit.edu)
7110
7111 * s/hpux9shr.h (C_DEBUG_SWITCH): Define as empty.
7112
71131994-06-03 Morten Welinder (terra@diku.dk)
7114
7115 * callproc.c [MSDOS]: #include "msdos.h" for rootrelativepath
7116 template.
7117
7118 * msdos.c (run_msdos_command): Make local copy of argv[2] on stack,
7119 not on heap.
7120 (run_msdos_command): When changing argv[2] from using slashes to
7121 using backslashes, only do so on the first white-space delimited
7122 part.
7123
71241994-06-02 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
7125
7126 * textprop.c (Fprevious_single_property_change): Check for null
7127 interval after correcting for edge effects.
7128
7129 * xdisp.c (display_text_line): Make sure pointer is in range.
7130
7131 * xmenu.c (xdialog_show): Fix problem with message in dialog box.
7132
71331994-06-02 Richard Stallman (rms@mole.gnu.ai.mit.edu)
7134
7135 * emacs.c (main): Do the setpgrp after checking for -batch.
7136
7137 * keyboard.c (command_loop_1): Properly handle nil in display table.
7138
7139 * s/hpux9.h (C_SWITCH_SYSTEM): Put inside __GNUC__ conditional.
7140
71411994-06-01 Richard Stallman (rms@mole.gnu.ai.mit.edu)
7142
7143 * process.c (kill_buffer_processes): For net conn, use Fdelete_process.
7144
7145See ChangeLog.4 for earlier changes.
2a34a036 7146
b344d29d
JB
7147;; Local Variables:
7148;; coding: utf-8
7149;; End:
7150
ba318903 7151 Copyright (C) 1994-1995, 2001-2014 Free Software Foundation, Inc.
7f6d64f8
GM
7152
7153 This file is part of GNU Emacs.
7154
5a1dde61 7155 GNU Emacs is free software: you can redistribute it and/or modify
7f6d64f8 7156 it under the terms of the GNU General Public License as published by
5a1dde61
GM
7157 the Free Software Foundation, either version 3 of the License, or
7158 (at your option) any later version.
7f6d64f8
GM
7159
7160 GNU Emacs is distributed in the hope that it will be useful,
7161 but WITHOUT ANY WARRANTY; without even the implied warranty of
7162 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
7163 GNU General Public License for more details.
7164
7165 You should have received a copy of the GNU General Public License
5a1dde61 7166 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.