Jim Blandy [Tue, 29 Sep 1992 01:08:33 +0000 (01:08 +0000)]
* ralloc.c: Since the users of the relocating allocation code
handle memory exhaustion, it's better to return an error code to
them than to call abort.
(obtain): If we cannot allocate more memory, don't call
abort. Instead, return non-zero iff the allocation is successful.
(get_more_space): If obtain fails, return zero.
(get_bloc): Return zero if we can't allocate the new bloc.
(r_alloc_sbrk): Return zero if we can't allocate more memory.
(r_alloc): If we can't allocate more memory, set *PTR to zero and
return zero.
(r_re_alloc): If we can't allocate more memory, leave *PTR
unchanged, and return zero.
* ralloc.c (warnfunction): Renamed to warn_function; users changed.
Richard M. Stallman [Mon, 28 Sep 1992 13:02:21 +0000 (13:02 +0000)]
(ws-mark-word): Use forward-word, with an arg, instead of backward-word.
(wordstar-mode): Move after definition of keymap.
(ws-move-block): Just two args for kill-region.
Jim Blandy [Mon, 28 Sep 1992 06:55:54 +0000 (06:55 +0000)]
* keyboard.c (read_char): If we're returning an event from a
macro, set Vlast_event_frame to Qmacro, instead of leaving it set
to the frame of the previous real event.
(read_key_sequence): If Vlast_event_frame isn't a frame, don't
bother switching buffers.
(syms_of_keyboard): Doc fix for Vlast_event_frame.
(Vlast_event_frame): Doc fix.
* keyboard.c (format_modifiers, reorder_modifiers): Handle the new
modifier bits.
Jim Blandy [Mon, 28 Sep 1992 06:53:29 +0000 (06:53 +0000)]
* termhooks.h (alt_modifier, hyper_modifier, super_modifier,
down_modifier, drag_modifier): New modifiers, to support the new
input system. Re-arranged modifiers so that their bits are in
canonical order; this makes reorder_modifiers slightly simpler.
Jim Blandy [Mon, 28 Sep 1992 06:10:03 +0000 (06:10 +0000)]
* window.c (delete_all_subwindows): Save the window's buffer in
its `height' field; we may need to know the window's old buffer
once we have restored it from a window configuration.
Fset_window_configuration): When we restore a window, if its
`height' field is a buffer, restore its `buffer' field from that.
This allows us to leave the window's buffer unchanged if the
buffer recorded in the configuration is dead.
* window.c (delete_all_subwindows): Removed unused variable named
"count".
Jim Blandy [Mon, 28 Sep 1992 02:20:23 +0000 (02:20 +0000)]
* keymap.c (access_keymap): Remove code to notice bindings for
Qt.
* keymap.c (Fwhere_is_internal): Don't forget to advance map to
the next element when we find something that is neither a vector
nor a cons. Don't forget to QUIT in the appropriate places,
either.
Roland McGrath [Sun, 27 Sep 1992 01:51:04 +0000 (01:51 +0000)]
(vc-checkin-hook): New user hook variable.
(vc-log-after-operation-hook): New internal defvar.
(vc-checkin): Set vc-log-after-operation-hook to 'vc-checkin-hook.
(vc-finish-logentry): (run-hooks vc-log-after-operation-hook) at end.
(vc-update-change-log): When doing all visited files, remove directory
names from file names that are in default-directory.
Roland McGrath [Sun, 27 Sep 1992 01:31:15 +0000 (01:31 +0000)]
(vc-update-change-log): Use shell-command, not shell-command-on-region.
Take optional args to pass to script.
Add fancy interactive spec: C-u for current file only; M-0 for all visited.
Richard M. Stallman [Sat, 26 Sep 1992 08:15:35 +0000 (08:15 +0000)]
(mouse-split-window-vertically): Use @.
(mouse-split-window-horizontally): New command.
Use S-mouse-2 for them.
(mouse-delete-window): Put on mode-line mouse-3.
(mouse-save-then-kill): New command, on mouse-3.
(mouse-delete-other-windows): Use @. Now on mode-line mouse-1.
(mouse-scroll-down, mouse-scroll-up): Use e, get line from event.
(mouse-scroll-move-cursor): Likewise.
(mouse-scroll-left, mouse-scroll-right): Likewise for column.
(mouse-scroll-move-cursor-horizontally): Likewise.
Jim Blandy [Wed, 23 Sep 1992 12:48:12 +0000 (12:48 +0000)]
* xmenu.c (single_keymap_panes): Comment out the code which
tries to handle a dense keymap's table; it uses keymap_table, and
the rest of the code never uses the table contents anyway.
Jim Blandy [Wed, 23 Sep 1992 12:46:52 +0000 (12:46 +0000)]
* keymap.c (DENSE_TABLE_SIZE): Doc fix.
(keymap_table): Function removed; this function exists only to
support an incorrect understanding of the format of keymaps.
(access_keymap, store_in_keymap, Fcopy_keymap,
Faccessible_keymaps): Correctly handle vectors at any point in the
keymap; don't assume it must be at the front.
(describe_map): Instead of calling describe_vector on the vector
in the cadr of the keymap (if present) and then calling
describe_alist to do the rest, just call describe_map_2.
(describe_alist): Renamed to describe_map_2; call describe_vector
when we encounter a vector in the list.
* keymap.c (access_keymap, store_in_keymap): Clarify error message
for non-ASCII characters.
* keymap.c (access_keymap): Return the binding of Qt as the
binding for all unbound characters.
Jim Blandy [Wed, 23 Sep 1992 11:51:59 +0000 (11:51 +0000)]
* process.c [SIGCHLD && !BSD && !UNIPLUS && !HPUX]
(create_process): #if 0 out the code which sets the child's
handler for SIGCHLD to sigchld; the code which gives sigchld its
value has been diked out under these CPP symbols, so this should
be diked out too.
Jim Blandy [Wed, 23 Sep 1992 03:51:13 +0000 (03:51 +0000)]
* sysdep.c (sys_suspend): Don't try to use "nice (- nice (0))" to
set the subshell's priority to normal; nice doesn't return a
defined value on all systems. Instead, since emacs_priority gives
the priority that Emacs was nastied to, we can use it to reset the
priority in a straightforward way.
[BSD4_1], [USG], [VMS] (setpriority): Remove dummy and
compatibility definitions of setpriority.
Jim Blandy [Tue, 22 Sep 1992 06:23:30 +0000 (06:23 +0000)]
* eval.c (unbind_catch): Do the long-jump here. Take a VALUE
argument, which specifies the value to return to the catch, or the
data to give to the condition handler. Renamed to
unwind_to_catch, to reflect new role.
(Fsignal, Fthrow): Removed code to set catch tag value and do the
long-jump; this is taken care of by unwind_to_catch.
Jim Blandy [Tue, 22 Sep 1992 05:18:34 +0000 (05:18 +0000)]
* lisp.h (struct handler): Remove the poll_suppress_count member
of this structure; it is always equal to the poll_suppress_count
of its catchtag structure. The non-local exit code in eval.c is
difficult enough to understand as it is; needless duplication
doesn't help.
* lisp.h (struct specbinding, struct handler): More documentation.
Jim Blandy [Tue, 22 Sep 1992 05:17:48 +0000 (05:17 +0000)]
* eval.c (Fcondition_case): Rearranged for clarity. Don't worry
about setting h.poll_suppress_count; it's guaranteed to be the
same as c.poll_suppress_count.
(internal_condition_case): Don't worry about
h.poll_suppress_count.
(Fsignal): Use h->tag->poll_suppress_count instead of
h->poll_suppress_count.
* eval.c (Fsignal): It's okay for the debugger to return to the
caller if the caller was signalling a quit.
* eval.c (unbind_catch): Restore the polling suppression count
here, instead of in Fsignal and Fthrow.
(Fthrow, Fsignal): Don't restore the polling suppression count here.
* eval.c (struct catchtag): More documentation.
* eval.c (entering_debugger): Variable renamed
when_entered_debugger, and is now a timestamp based on
num_nonmacro_input_chars.
(init_eval): Initialize when_entered_debugger, not
entering_debugger.
(call_debugger): Set when_entered_debugger to the current value of
num_nonmacro_input_chars.
(find_handler_clause): Don't call debugger unless
num_nonmacro_input_chars is greater than when_entered_debugger;
that way, we won't call the debugger unless the user has had a
chance to take control.
(Fbacktrace): Don't clear entering_debugger here.
Jim Blandy [Tue, 22 Sep 1992 04:29:25 +0000 (04:29 +0000)]
* fns.c (Fy_or_n_p): After testing for a QUIT, clear Vquit_flag.
Otherwise, if Fy_or_n_p is called while Vinhibit_quit is true and
the user presses C-g, this function goes into an infinite loop.
Jim Blandy [Tue, 22 Sep 1992 04:29:12 +0000 (04:29 +0000)]
* dispnew.c (get_display_line): Don't abort if the frame is
invisible; since unmap events are handled at the interrupt level,
a screen may become invisible at any time.
Richard M. Stallman [Sun, 20 Sep 1992 20:17:16 +0000 (20:17 +0000)]
Don't include sys/dir.h.
(Fverify_visited_file_modtime):
Pass buffer itself to handler, if have handler.
(Fwrite_region): GCPRO around Fexpand_file_name, Ffie_name_directory.
(Fread_file_name_internal): GCPRO around file name manip.
(Ffile_writable_p, Ffile_readable_p): Use abspath, not filename,
(Ffile_executable_p, Ffile_exists_p): to run the handler.
(Fset_file_modes, Ffile_directory_p, Ffile_modes): Likewise.
(Ffile_newer_than_file_p): GCPRO around expand_and_dir_to_file.
Richard M. Stallman [Sat, 19 Sep 1992 17:52:07 +0000 (17:52 +0000)]
(scan_lists): When searching back for comment:
if comment-end is 2 chars, assume it does end a comment.
Otherwise, scan back to previous comment-end to see if there's
a comment starter between. Also record whether the string quotes
between the start and the end are paired and uniform.
If so, skip to comment starter. If not, scan from start of
defun to find comment starter if any.
(find_defun_start): New function.