emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 1d50050 3/3: Merge from origin/emacs-27


From: Glenn Morris
Subject: master 1d50050 3/3: Merge from origin/emacs-27
Date: Fri, 19 Feb 2021 11:37:24 -0500 (EST)

branch: master
commit 1d50050af7f6cde7283d29cd79526bf1cd4a73ae
Merge: 51d056b 8e8b46e
Author: Glenn Morris <rgm@gnu.org>
Commit: Glenn Morris <rgm@gnu.org>

    Merge from origin/emacs-27
    
    8e8b46ef81 (origin/emacs-27) More accurate documentation of the "r" i...
    dcb2015a5b Mention the GNU Kind Communications Guidelines in the FAQ
    9882e63eea ; * CONTRIBUTE: Another wording change regarding tiny chan...
    850f18ef23 Allow newlines in password prompts again in comint
    c977370dd7 Avoid point movement when visiting image files
    da64a257a4 ; * CONTRIBUTE: Yet another clarification of significant c...
    d03f2a6ee9 Avoid assertion violation in callproc.c
    dcc00bbb19 ; * CONTRIBUTE: Clarify the "15-lines" rule a bit more.
---
 CONTRIBUTE                | 14 +++++++++-----
 doc/lispref/commands.texi |  5 ++++-
 doc/misc/efaq.texi        |  5 +++++
 lisp/comint.el            |  4 +++-
 lisp/image-mode.el        |  4 +++-
 src/callproc.c            |  6 +++++-
 6 files changed, 29 insertions(+), 9 deletions(-)

diff --git a/CONTRIBUTE b/CONTRIBUTE
index 9b2af9c..bbf5262 100644
--- a/CONTRIBUTE
+++ b/CONTRIBUTE
@@ -66,11 +66,15 @@ more reliably, and makes the job of applying the patches 
easier and less
 error-prone.  It also allows sending patches whose author is someone
 other than the email sender.
 
-Once the cumulative amount of your submissions exceeds about 15 lines
-of non-trivial code, we will need you to assign to the FSF the
-copyright for your contributions.  Ask on emacs-devel@gnu.org, and we
-will send you the necessary form together with the instructions to
-fill and email it, in order to start this legal paperwork.
+Once the cumulative amount of your submissions exceeds a dozen or so
+lines of non-trivial changes, we will need you to assign to the FSF
+the copyright for your contributions.  (To see how many lines were
+non-trivially changed, count only added and modified lines in the
+patched code.  Consider an added or changed line non-trivial if it
+includes at least one identifier, string, or substantial comment.)
+Ask on emacs-devel@gnu.org, and we will send you the necessary form
+together with the instructions to fill and email it, in order to start
+this legal paperwork.
 
 ** Issue tracker (a.k.a. "bug tracker")
 
diff --git a/doc/lispref/commands.texi b/doc/lispref/commands.texi
index 1ad2df9..1c762c2 100644
--- a/doc/lispref/commands.texi
+++ b/doc/lispref/commands.texi
@@ -493,7 +493,10 @@ I/O.
 Point and the mark, as two numeric arguments, smallest first.  This is
 the only code letter that specifies two successive arguments rather than
 one.  This will signal an error if the mark is not set in the buffer
-which is current when the command is invoked.  No I/O.
+which is current when the command is invoked.  If Transient Mark mode
+is turned on (@pxref{The Mark}) --- as it is by default --- and user
+option @code{mark-even-if-inactive} is @code{nil}, Emacs will signal
+an error even if the mark @emph{is} set, but is inactive.  No I/O.
 
 @item s
 Arbitrary text, read in the minibuffer and returned as a string
diff --git a/doc/misc/efaq.texi b/doc/misc/efaq.texi
index f26ae63..6f0a81b 100644
--- a/doc/misc/efaq.texi
+++ b/doc/misc/efaq.texi
@@ -388,6 +388,11 @@ posting a followup that recommends such software.
 @uref{news:gnu.emacs.bug} is a place where bug reports appear, but avoid
 posting bug reports to this newsgroup directly (@pxref{Reporting bugs}).
 
+Finally, we recommend reading the
+@url{https://www.gnu.org/philosophy/kind-communication.html, GNU Kind
+Communications Guidelines} before posting to any GNU lists or
+newsgroups.
+
 @node Newsgroup archives
 @section Where can I get old postings to @uref{news:gnu.emacs.help} and other 
GNU groups?
 @cindex Archived postings from @code{gnu.emacs.help}
diff --git a/lisp/comint.el b/lisp/comint.el
index 57df6bf..ea69c3b 100644
--- a/lisp/comint.el
+++ b/lisp/comint.el
@@ -378,7 +378,7 @@ This variable is buffer-local."
    "\\(?:" (regexp-opt password-word-equivalents) "\\|Response\\)"
    "\\(?:\\(?:, try\\)? *again\\| (empty for no passphrase)\\| (again)\\)?"
    ;; "[[:alpha:]]" used to be "for", which fails to match non-English.
-   "\\(?: [[:alpha:]]+ .+\\)?[[:blank:]]*[::៖][[:blank:]]*\\'")
+   "\\(?: [[:alpha:]]+ .+\\)?[[:blank:]]*[::៖][[:space:]]*\\'")
   "Regexp matching prompts for passwords in the inferior process.
 This is used by `comint-watch-for-password-prompt'."
   :version "27.1"
@@ -2432,6 +2432,8 @@ This function could be in the list 
`comint-output-filter-functions'."
                         (replace-regexp-in-string "\r" "" string)))
     (when (string-match "^[ \n\r\t\v\f\b\a]+" string)
       (setq string (replace-match "" t t string)))
+    (when (string-match "\n+\\'" string)
+      (setq string (replace-match "" t t string)))
     (let ((comint--prompt-recursion-depth (1+ comint--prompt-recursion-depth)))
       (if (> comint--prompt-recursion-depth 10)
           (message "Password prompt recursion too deep")
diff --git a/lisp/image-mode.el b/lisp/image-mode.el
index ec0a559..7384abf 100644
--- a/lisp/image-mode.el
+++ b/lisp/image-mode.el
@@ -858,7 +858,9 @@ was inserted."
       (setq image-transform-rotation
             (or (exif-orientation
                  (ignore-error exif-error
-                   (exif-parse-buffer)))
+                   ;; exif-parse-buffer can move point, so preserve it.
+                   (save-excursion
+                     (exif-parse-buffer))))
                 0.0)))
     ;; Swap width and height when changing orientation
     ;; between portrait and landscape.
diff --git a/src/callproc.c b/src/callproc.c
index cb72b07..cd0f67f 100644
--- a/src/callproc.c
+++ b/src/callproc.c
@@ -411,7 +411,11 @@ call_process (ptrdiff_t nargs, Lisp_Object *args, int 
filefd,
       /* If the buffer is (still) a list, it might be a (:file "file") spec. */
       if (CONSP (buffer) && EQ (XCAR (buffer), QCfile))
        {
-         output_file = Fexpand_file_name (XCAR (XCDR (buffer)),
+         Lisp_Object ofile = XCDR (buffer);
+         if (CONSP (ofile))
+           ofile = XCAR (ofile);
+         CHECK_STRING (ofile);
+         output_file = Fexpand_file_name (ofile,
                                           BVAR (current_buffer, directory));
          CHECK_STRING (output_file);
          buffer = Qnil;



reply via email to

[Prev in Thread] Current Thread [Next in Thread]