1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-07 04:10:27 -08:00
Commit graph

140548 commits

Author SHA1 Message Date
Stefan Kangas
7605060d51 Update Elisp Manual reference to which-function-mode
* doc/lispref/modes.texi (Mode Line Top, Mode Line Variables)
Don't refer to obsolete alias for 'which-function-mode'.
(Bug#13716)
2020-08-31 04:39:09 +02:00
Michael Albinus
29708cbde7 Some precisions to bug handling
* admin/admin.el (reminder-for-release-blocking-bugs): Add date to subject.

* admin/notes/bug-triage:
* admin/notes/bugtracker: Minor precisions.
2020-08-30 15:43:58 +02:00
Alan Mackenzie
dddc971f0e CC Mode: Fix processing for when c-multiline-string-start-char is a character
* lisp/progmodes/cc-mode.el (c-pps-to-string-delim)
(c-multiline-string-check-final-quote): Replace c-clear-char-property by
c-clear-syn-tab.
(c-multiline-string-check-final-quote): Replace c-put-char-property by
c-put-syn-tab.
2020-08-29 19:29:54 +00:00
Eli Zaretskii
4a73fb9668 Fix description of %-constructs in 'mode-line-format'
* doc/lispref/modes.texi (%-Constructs): Document %@ and remove
%M, which is no longer supported.   (Bug#43092)
2020-08-29 09:45:51 +03:00
Michael Albinus
df5c669709 Adapt tramp-tests.el, don't merge with master
* test/lisp/net/tramp-tests.el (tramp-test05-expand-file-name)
(tramp-test05-expand-file-name-relative): Adapt tests.
(tramp--test-emacs28-p): New defun.
2020-08-27 20:15:40 +02:00
Michael Albinus
da4840af12 Adapt reminder-for-release-blocking-bugs
* admin/admin.el (reminder-for-release-blocking-bugs):
Require `debbugs-gnu' also in `interactive' form.

* admin/release-process: Rename RELEASE-CRITICAL to RELEASE-BLOCKING.
Adapt Emacs version.  Describe `reminder-for-release-blocking-bugs'.
2020-08-27 11:46:20 +02:00
Paul Eggert
eb77572257 Fix replace-region-contents performance bug
Backport from master.
* src/editfns.c (rbc_quitcounter): Remove; the quitcounter
is now part of the context.
(EXTRA_CONTEXT_FIELDS): Remove unused member early_abort_tests.
Add jmp, quitcounter.
(Freplace_buffer_contents): Use setjmp/longjmp to recover from
a compareseq that runs too long.  Omit unnecessary rarely_quit
call.
(buffer_chars_equal): Occasionally check for early abort and
longjmp out if so (Bug#43016).
2020-08-25 11:25:21 -07:00
Michael Albinus
a142bbd288 * admin/admin.el (reminder-for-release-blocking-bugs): New command. 2020-08-25 15:19:11 +02:00
Michael Albinus
4657f08b7e Sync with Tramp 2.4.5-pre
* doc/misc/tramp.texi: Adapt Tramp and Emacs version numbers.
(Remote processes): Describe `process-file-return-signal-string'
and $INSIDE_EMACS.
(Frequently Asked Questions): Mention Emacs 28.
Describe `tramp-smb-options'.

* doc/misc/trampver.texi: Change version to "2.4.5-pre".

* lisp/net/tramp-adb.el (process-file-return-signal-string): Declare.
(tramp-adb-handle-write-region): Flush the cache after the file
has been written.
(tramp-adb-handle-set-file-modes, tramp-adb-handle-set-file-times):
Add optional _FLAG.
(tramp-adb-handle-copy-file, tramp-adb-handle-rename-file)
(tramp-adb-handle-process-file): Use `tramp-file-local-name'.
(tramp-adb-get-signal-strings): New defun.
(tramp-adb-handle-process-file): Use it.
(tramp-adb-handle-make-process): Implement `stderr'.  Use
`insert-file-contents-literally'.
(tramp-adb-send-command-and-check): Add optional argument
EXIT-STATUS.
(tramp-adb-handle-process-file): Use it.

* lisp/net/tramp-archive.el (tramp-archive-file-name-handler):
Increase `max-specpdl-size' temporarily.

* lisp/net/tramp-cache.el (top):
Use `insert-file-contents-literally'.

* lisp/net/tramp-cmds.el (tramp-rename-files):
Use `tramp-file-local-name'.

* lisp/net/tramp-gvfs.el (tramp-gvfs-enabled): Prevent crash for
older Emacsen.
(top): Adapt `tramp-gvfs-unload-hook'.
(tramp-gvfs-handle-file-system-info): Fix error.
(tramp-gvfs-handle-set-file-modes, tramp-gvfs-handle-set-file-times):
Add optional _FLAG.

* lisp/net/tramp-rclone.el (tramp-rclone-flush-directory-cache):
Fix a problem with older Emacsen.

* lisp/net/tramp-sh.el (process-file-return-signal-string): Declare.
(tramp-sh-extra-args): Add "-noediting" as bash arg.
(tramp-hexdump-encode, tramp-hexdump-awk-encode)
(tramp-od-encode, tramp-od-awk-encode): New defconst.
(tramp-awk-encode, tramp-awk-decode): Adapt.
(tramp-awk-coding-test): Remove.
(tramp-remote-coding-commands): Add hexdump/awk encoding.  (Bug#35639)
(tramp-find-inline-encoding): Adapt handling of awk, hexdump and od.
(tramp-get-remote-busybox, tramp-get-remote-awk)
(tramp-get-remote-hexdump, tramp-get-remote-od): New defuns.
(tramp-sh-handle-make-symbolic-link):
(tramp-do-copy-or-rename-file-directly)
(tramp-sh-handle-process-file, tramp-set-remote-path)
(tramp-find-inline-encoding, tramp-get-remote-touch):
Use `tramp-file-local-name'.
(tramp-do-file-attributes-with-stat): Simplify shell command.
Suppress errors (interpret as nil).
(tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times):
Add optional _FLAG.
(tramp-sh-handle-make-process): Do not visit with
`insert-file-contents'.  Delete tmp file only if exists.  Support
`stderr' as file name.  Delete temporary stderr file.  Flush
connection properties in time.
(tramp-sh-get-signal-strings): New defun.
(tramp-sh-handle-process-file): Use it.
(tramp-sh-handle-write-region): Copy to temp file only if FILENAME
exists.  (Bug#40156)
(tramp-set-remote-path): Send the command in several chunks if it
is too large.  (Bug#42538)
(tramp-open-connection-setup-interactive-shell): Move up "set +o
vi +o emacs" command.   (Bug#39399)
(tramp-send-command-and-read): Suppress `signal-hook-function'
when reading expression.
(tramp-send-command-and-check): Add optional argument EXIT-STATUS.
(tramp-sh-handle-process-file): Use it.  (Bug#41099)

* lisp/net/tramp-smb.el (tramp-smb-conf): Fix docstring.
(tramp-smb-options): New defcustom.
(tramp-smb-handle-copy-directory, tramp-smb-handle-file-acl)
(tramp-smb-handle-set-file-acl, tramp-smb-maybe-open-connection):
Use it.
(tramp-smb-errors): Add "NT_STATUS_INVALID_PARAMETER".
(tramp-smb-handle-make-symbolic-link)
(tramp-smb-handle-process-file): Use `tramp-file-local-name'.

* lisp/net/tramp-sudoedit.el (tramp-sudoedit-do-copy-or-rename-file):
(tramp-sudoedit-handle-set-file-uid-gid):
Use `tramp-unquote-file-local-name'.
(tramp-sudoedit-handle-make-symbolic-link):
Use `tramp-file-local-name'.
(tramp-sudoedit-handle-file-system-info): Fix a scoping error.
(tramp-sudoedit-handle-set-file-modes):
(tramp-sudoedit-handle-set-file-times): Add optional _FLAG.

* lisp/net/tramp.el: Bump version to 2.4.5-pre.
(tramp-file-local-name, tramp-unquote-file-local-name): New defuns.
(tramp-set-connection-local-variables-for-buffer)
(tramp-equal-remote, tramp-handle-make-auto-save-file-name):
Use `tramp-tramp-file-p'.
(tramp-parse-file): Use `insert-file-contents-literally'.
(tramp-handle-file-modes, tramp-handle-file-times):
Add optional _FLAG.
(tramp-handle-shell-command): Fix `window-start' in output buffer.
(Bug#39171)
Handle `shell-command-dont-erase-buffer'.  (Bug#39067)
Reorganize error-buffer handling.  Set `default-directory'.
(Bug#39253)
(tramp-handle-shell-command, tramp-handle-start-file-process):
Implement asynchronous `error-buffer'.
(tramp-action-process-alive): Read pending output.
(tramp-read-passwd): Use `tramp-compat-temporary-file-directory'.
(Bug#39389, Bug#39489)
(tramp-interrupt-process): Improve command.

* lisp/net/trampver.el: Change version to "2.4.5-pre".
(tramp-repository-branch, tramp-repository-version):
Bind `debug-on-error' to nil.

* test/lisp/net/tramp-tests.el (tramp-get-remote-gid)
(process-file-return-signal-string)
(shell-command-dont-erase-buffer): Declare.
(tramp-test10-write-region, tramp-test28-process-file)
(tramp-test29-start-file-process, tramp-test30-make-process)
(tramp-test31-interrupt-process, tramp-test32-shell-command):
Extend test.
(tramp-test10-write-region, tramp-test21-file-links): Use function
symbols.
(tramp-test18-file-attributes): Check `file-ownership-preserved-p'
only if possible.
(tramp--test-async-shell-command): New defun.
(tramp--test-shell-command-to-string-asynchronously): Use it.
(tramp-test32-shell-command-dont-erase-buffer): New test.
2020-08-25 15:18:57 +02:00
Phillip Lord
44104a607a Fix error in GMP test
* etc/w32-feature.el: Update to use system-configuration-features for
  GMP test.
2020-08-24 22:44:21 +01:00
Phillip Lord
e26e63444d Add Feature testing for Windows binaries
* etc/w32-feature.el: New file
2020-08-24 22:14:01 +01:00
Eli Zaretskii
4e2caef384 ; * src/character.c (str_as_multibyte): Fix the commentary. 2020-08-21 18:15:05 +03:00
Stefan Kangas
d3a4ce8420 Revert "; * etc/NEWS: Remove temporary note on documentation. (Bug#42917)"
This reverts commit 121be3e118.
2020-08-20 11:49:19 +02:00
Glenn Morris
16f00e36dc * admin/admin.el (set-version): Trap yet another NEWS error. 2020-08-19 20:52:08 +01:00
Stefan Kangas
121be3e118 ; * etc/NEWS: Remove temporary note on documentation. (Bug#42917) 2020-08-19 19:58:36 +02:00
Mattias Engdegård
5fcb97dabd Fix cond jump table compilation (bug#42919)
This bug affected compilation of

 (cond ((member '(some list) variable) ...) ...)

While equal is symmetric, member is not; in the latter case the
arguments must be a variable and a constant list, in that order.

Reported by Ikumi Keita.

* lisp/emacs-lisp/bytecomp.el (byte-compile--cond-switch-prefix):
Don't treat equality and member predicates in the same way; only
the former are symmetric in their arguments.
* test/lisp/emacs-lisp/bytecomp-tests.el
(byte-opt-testsuite-arith-data): Add test cases.
2020-08-19 15:26:34 +02:00
Paul Eggert
362ca83a3b Let Emacs start even if curdir is inaccessible
* lisp/startup.el (normal-top-level): Also delete PWD if
file-attributes fails for either $PWD or default-directory,
instead of failing out of the top level.
This fixes a regression from Emacs 26 (Bug#42903).
2020-08-17 16:22:10 -07:00
Paul Eggert
dd989c0ea0 * etc/NEWS: Mention GnuPG 2.0 through 2.1.5 issue (Bug#42845). 2020-08-17 08:29:28 -07:00
Robert Pluim
4542b750cc Fix bug with ~/Emacs file not being read at init
* src/xrdb.c (get_user_app): Put "/" between homedir
and %L or %N (Bug#42827).
2020-08-16 21:41:03 -07:00
Eli Zaretskii
9b403d624e ; Fix last change 2020-08-15 18:19:01 +03:00
Eli Zaretskii
6bff65a626 ; * doc/lispref/sequences.texi (Sequence Functions): Typo Fix. (Bug#42871) 2020-08-15 18:16:39 +03:00
Tino Calancha
3c4edfd85e Prevent from frozen frame after `C-z' in Lucid builds
Some WMs (e.g. mutter in Gnome Shell) don't unmap iconized windows,
thus we won't get a MapNotify when deconifying them.
Check if we are deconifying a window elsewhere (Bug#42655).

- src/xterm.c (handle_one_xevent):
Check for window deconify when receiving a FocusIn signal.
2020-08-15 16:18:03 +02:00
Eli Zaretskii
98e8241992 Document the 'flex' completion style
* doc/emacs/mini.texi (Completion Styles): Document the 'flex'
completion style.  (Bug#42763)
2020-08-15 12:32:32 +03:00
Lars Ingebrigtsen
19fa8b7ca3 Note that Emacs needs systemd support if systemd is used to stop/start
* etc/NEWS: Note that Emacs needs to be built with systemd support
systemd is used to stop/start Emacs (bug#42242).  Change suggested by
Bhavin Gandhi <bhavin7392@gmail.com>
2020-08-14 18:56:36 +02:00
Mattias Engdegård
8ff5e346fe Regexps cannot infloop; fix manual
* doc/lispref/searching.texi (Regexp Special): Edit erroneous
statements about infinite looping in regexps.

(cherry picked from commit 63268253d2)
2020-08-14 14:52:13 +02:00
Paul Eggert
cf0ee6f49b ; spelling fixes 2020-08-13 16:48:16 -07:00
Paul Eggert
16f4f26632 Fix startup working dir bug on NeXTSTEP
* src/emacs.c (main) [NS_IMPL_COCOA]: Update emacs_wd
after a NS GUI chdirs successfully (Bug#42836).
2020-08-13 15:44:00 -07:00
Eli Zaretskii
69568674b3 Improve documentation of function argument lists
* doc/lispref/functions.texi (Lambda Components)
(Defining Functions): Add a cross-reference to "Argument List".
(Argument List): Improve the section name.  (Bug#42750)
2020-08-13 17:08:37 +03:00
Eli Zaretskii
1c0bc1ccd8 Improve documentation of special events
* doc/lispref/commands.texi (Misc Events): Explain how to bind
special events to commands.
2020-08-13 16:53:14 +03:00
Eli Zaretskii
c9a739408d Fix face merging at EOL when inherited face specifies :extend
* src/xfaces.c (merge_face_ref): Handle correctly faces that
inherit from another, and in addition specify :extend.
(Bug#42552)

(cherry picked from commit 39c90f8dfa)
2020-08-13 16:39:12 +03:00
Eli Zaretskii
f946e48bf5 Fix face extension past EOL in overlay strings
* src/xdisp.c (face_at_pos): Pass ATTR_FILTER to
face_for_overlay_string.
* src/xfaces.c (face_for_overlay_string): Accept an additional
argument ATTR_INDEX and pass it to merge_face_ref for merging the
face at POS.  This ensures a face from buffer text will not be
merged unless it specifies the :extend attribute.  (Bug#42552)
* src/dispextern.h (face_for_overlay_string): Adjust prototype.

(cherry picked from commit 35564bea4d)
2020-08-13 16:38:44 +03:00
Phil Sainty
63f614d76c Fix comint-redirect-results-list regexp usage (Bug#42662)
* lisp/comint.el (comint-redirect-results-list-from-process):
Don't treat the literal string argument COMMAND as a regexp.
2020-08-13 01:30:54 +12:00
Eli Zaretskii
6dada01015 ; Bump Emacs version to 27.1.50
* configure.ac:
* README:
* nt/README.W32:
* msdos/sed2v2.inp:
* etc/NEWS: Bump Emacs version to 27.1.50.
2020-08-11 21:24:16 +03:00
Nicolas Petton
86d8d76aa3
; lisp/ldefs-boot.el: Update. 2020-08-04 22:05:24 +02:00
Nicolas Petton
a6634197da
* etc/HISTORY: Update the Emacs 27.1 release date. 2020-08-04 21:41:07 +02:00
Nicolas Petton
a68b3f761a
; Update ChangeLog.3 2020-08-04 21:32:27 +02:00
Nicolas Petton
7cc85e7b51
; Update etc/AUTHORS 2020-08-04 21:32:04 +02:00
Robert Pluim
1ca4da054b ; * etc/NEWS: fix some quoting 2020-08-04 16:34:59 +02:00
Phil Sainty
5578febcd4 ; * lisp/so-long.el: Documentation 2020-08-04 05:00:23 +12:00
Phil Sainty
fa20e443c8 lisp/so-long.el: Improve support for major mode hooks
* lisp/so-long.el (so-long-remember-all, so-long-disable-minor-modes)
(so-long-override-variables): Store and use the `so-long-minor-modes'
and `so-long-variable-overrides' values seen by the original major
mode, so that buffer-local changes made in the major mode hook will be
respected.

Add documentation of this and other major mode hook usage.
2020-08-04 05:00:20 +12:00
Phil Sainty
8576297b2a ; lisp/so-long.el: Prevent potential error if comment-use-syntax is nil
* lisp/so-long.el (so-long-detected-long-line-p): Ensure that
`comment-start-skip' and `comment-end-skip' are both set if
`comment-use-syntax' is nil, as `comment-forward' requires them
to be bound in this scenario.
2020-08-04 01:44:53 +12:00
Phil Sainty
986c12b20f ; * lisp/so-long.el: Byte-compilation bug fix
As this `require' is not at the top-level (it is only conditionally
evaluated, when loading the library over the top of an earlier
version), we need `eval-and-compile' to ensure that both macros and
functions from advice.el are accounted for.
2020-08-04 01:44:53 +12:00
Phil Sainty
19f8f36f11 ; * lisp/so-long.el (so-long-variable-overrides): Improve doc 2020-08-04 01:44:52 +12:00
Phil Sainty
83bc4ad369 ; * so-long.el: Documentation and spelling
Reverting certain changes from commits b0f20651e3 and d1a791f8ed.

Please refer to the comments on spelling at the end of the library.
M-x ispell-buffer should find no misspellings in the documentation.
See also test/lisp/so-long-tests/spelling-tests.el

(The current spelling will persist while so-long.el is maintained in
its own Savannah repository, to avoid unnecessary conflicts between
the two versions.  If in the future it is maintained solely in the
Emacs repository, changing the spelling would become an option.)

Note that "mitigations" (plural) is intentional -- this library
identifies a collection of different performance mitigations,
multiple of which will typically be in effect together.
2020-08-04 01:35:26 +12:00
Grégory Mounié
72c5f71cd4 Avoid segfaults if XIM is set but not xim_styles
Emacs segfaults at the X11 initialization if XIM is set
and xim_styles is NULL.  This patch avoids the crash.
* src/xfns.c: Check also if FRAME_X_XIM_STYLES(f) is NULL.
(Bug#42676)  (Bug#42673)  (Bug#42677)

Copyright-paperwork-exempt: yes
2020-08-02 20:19:16 +03:00
Philipp Stephani
f54ddb0198 ; * test/lisp/emacs-lisp/generator-tests.el: Style fixes. 2020-07-31 23:50:04 +02:00
Philipp Stephani
d767418b76 Backport: Make checking for liveness of global values more precise.
We can't just use a hash lookup because a global and a local reference
might refer to the same Lisp object.

* src/emacs-module.c (module_free_global_ref): More precise check for
global liveness.

(cherry picked from commit 9f01ce6327)
2020-07-31 18:18:43 +02:00
Philipp Stephani
8c94ca94dc Backport: Fix subtle bug when checking liveness of module values.
We can't simply look up the Lisp object in the global reference table
because an invalid local and a valid global reference might refer to
the same object.  Instead, we have to test the address of the global
reference against the stored references.

* src/emacs-module.c (module_global_reference_p): New helper function.
(value_to_lisp): Use it.

(cherry picked from commit 6355a3ec62)
2020-07-31 18:18:27 +02:00
Philipp Stephani
8ecca2f09f Backport: Fix memory leak for global module objects (Bug#42482).
Instead of storing the global values in a global 'emacs_value_storage'
object, store them as hash values alongside the reference counts.
That way the garbage collector takes care of cleaning them up.

* src/emacs-module.c (global_storage): Remove.
(struct module_global_reference): New pseudovector type.
(XMODULE_GLOBAL_REFERENCE): New helper function.
(module_make_global_ref, module_free_global_ref): Use
'module_global_reference' struct for global reference values.
(value_to_lisp, module_handle_nonlocal_exit): Adapt to deletion of
'global_storage'.

(cherry picked from commit 5c5eb97908)
2020-07-31 18:05:18 +02:00
Nicolas Petton
e12d1fbc15 ; ChangeLog.3 and etc/AUTHORS fixes 2020-07-30 09:35:42 -07:00