This fixes bug #29349.
* src/keyboard.c (raw_keybuf_buffer, raw_keybuf_count_buffer): New variables
pointed to by ...
(raw_keybuf, raw_keybuf_count): Variables converted to pointers.
(GROW_RAW_KEYBUF): enhance with a length argument.
(command_loop_1): Initialize the above two pointers to their canonical values.
(read_key_sequence): In recursive calls (for menus) the function was
overwriting the raw event buffer of the outer call. Correct this by
introducing a local buffer for each level of call, and setting this up to be
used by the call to read_char. Any contents of this local buffer are appended
to the global buffer afterwards.
6e6bf60 Don't let delete_frame select a tooltip frame (Bug#27647)
e9dd580 Filter obtrusive events in help-read-key-sequence.
90075e8 Fix symlink flag in tramp-gvfs-handle-file-attributes
c355529 Fix bug in tramp-handle-file-truename
4c21d04 Fix a typo in doc string of electric-indent-functions-without...
319c2de Avoid assertion violations in echo_area_display
63c7733 ; * lisp/ido.el (ido-find-alternate-file): Doc fix. (Bug#29278)
cbd319a Fix case-folding in Occur
29520b0 Fix quick-calc in C mode with hex values
3e80124 Improve documentation of dired-next/prev-marked-file
90add18 Prevent aborts in line-move-visual
648c128 More fixes in src/.gdbinit
104f3e5 Document how to enter whitespace when using grep-read-files
* lisp/net/tramp.el (tramp-drop-volume-letter): Handle also
backup file names.
(tramp-handle-find-backup-file-name):
Call `tramp-drop-volume-letter' on the results. (Bug#29149)
* src/xterm.c (x_draw_window_divider):
* src/w32term.c (w32_draw_window_divider): Fix misbehavior when
drawing three-pixel high horizontal dividers (Bug#29353).
The misbehavior was noted by Keith David Bershatsky and analyzed by Alan
Third.
* lisp/mh-e/mh-mime.el (mh-mime-display-single): Use
mm-automatic-display-p to verify that a part should be
displayed before doing the inline checks (SF#475).
* lisp/erc/erc-services.el (erc-nickserv-alist-sender,
erc-nickserv-alist-regexp, erc-nickserv-alist-nickserv,
erc-nickserv-alist-ident-keyword, erc-nickserv-alist-use-nick-p,
erc-nickserv-alist-ident-command,
erc-nickserv-alist-identified-regexp): Use `inline-letevals' to make
sure that `network' is evaluated first and independently of `entry'.
Pursuant to 1ef6d2b0e6
* lisp/emacs-lisp/eieio.el (object-write): Only write the name in the
comment when the comment's also present. Newline should only be
printed if the name is.
This fixes most of bug #29272.
* lisp/help.el (help-read-key-sequence): After a mouse event, pause for 0.01s,
discarding any events (such as <help-echo>) received in this time, before
polling for the double-click (etc.) events which may follow. This fixes the
infinite loop which occurred whwn <help-echo> events triggered a sit-for
whilst handling menu events.
* src/indent.c (line_number_display_width): Avoid assertion
violations in init_iterator when the window's buffer was
temporarily switched without updating window-start. (Bug#29326)
* lisp/progmodes/grep.el (lgrep, rgrep, grep-read-files): Explain
how to enter whitespace when using grep-read-files. (Bug#29303)
* lisp/progmodes/project.el (project-find-regexp): Likewise.
* lisp/vc/vc-git.el (vc-git-grep): Likewise.