interface to the cut buffer now.
(NUM_CUT_BUFFERS, cut_buffer_atom, cut_buffer_value,
cut_buffer_cached, cut_buffer_just_set): New variables.
(Fx_own_selection, Fx_selection_value): Dike out the code to
handle CUT_BUFFER0 requests.
(Fx_get_cut_buffer, Fx_set_cut_buffer, x_watch_cut_buffer_cache,
x_invalidate_cut_buffer_cache): New functions.
(syms_of_xselect): Don't bother to initialize Qcut_buffer0.
Initialize and staticpro cut_buffer_value, and defsubr
Sx_get_cut_buffer and Sx_set_cut_buffer.
* xterm.c (XTread_socket): Pass PropertyNotify events from the
root window to x_invalidate_cut_buffer_cache.
(x_term_init): Call x_watch_cut_buffer_cache here.
pain in the neck to staticpro, into a vector, which is easier.
(read_char, Frecent_keys): Access recent_keys as a lisp vector,
not a C array.
(init_keyboard): Set recent_keys to be a vector, and staticpro
it.
it's annoying to see the command and the new prompt in the
debugger interaction buffer; nuke the command and the old prompt.
(gud-delete-prompt-marker): New variable, with extensive documentation.
(gud-mode): Make gud-delete-prompt-marker buffer-local, and
initialize it.
(gud-filter-insert): If gud-delete-prompt-marker is set, delete
the prompt, and clear gud-delete-prompt-marker.
(gud-call): Arrange for the last prompt printed to get deleted, by
setting gud-delete-prompt-char.
(gud-gdb-marker-filter, gud-sdb-marker-filter,
gud-dbx-marker-filter): Rename the argument `s' or `str' to
`string', and change all uses; these definitions were referring to
`string', which is unbound in the lexical context, but which
happens to end up being bound to the right thing by the caller,
gud-filter.
(sdb): Set comint-prompt-regexp, not comint-prompt-pattern; the
latter doesn't exist.
(gud-dbx-debugger-setup): Use the argument `f', not the variable
`file', which happens to be bound in the caller.
(gud-filter-insert): The variable `start' is never used. The
variable `moving' is unnecessary. The variable `old-buffer' and
the unwind-protect form are unneeded, since save-excursion can do
their work. The binding of output-after-point should be done after
switching to the process's buffer, not in whatever random buffer
happens to be current when the process filter is called. There's
no need to set the process mark if we've just inserted at its
location using insert-before-markers.
(gud-read-address): Don't bother setting the variable `result'; it
is never used.
* gud.el (gud-mode-map): Bind gud-refresh to C-c C-l, not C-c l;
the latter is reserved for the user's purposes.
* gud.el (gdb, sdb, dbx): Use C-c C-r ("resume") for continuing,
instead of C-c C-c. C-c C-c should be comint-interrupt-subjob;
it's important to have that available, and the C-c C-c binding is
consistent with all the other comint-derived modes.
buried only if the BUFFER argument was nil. Instead, undisplay the
buffer whenever it's displayed in the selected window, no matter
how it was specified by BUFFER. This is how it behaves in 18.58,
and I can't find any ChangeLog entry in 18.58 or 19.0 saying why
they differ. Fix the doc string accordingly.
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.
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.
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.
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".
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.
(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.