]> git.eshelyaron.com Git - emacs.git/commitdiff
ob-tangle.el: fix unintended range in regexp
authorMattias Engdegård <mattiase@acm.org>
Wed, 16 Aug 2023 12:57:48 +0000 (14:57 +0200)
committerMattias Engdegård <mattiase@acm.org>
Wed, 16 Aug 2023 14:55:38 +0000 (16:55 +0200)
* lisp/org/ob-tangle.el (org-babel-interpret-file-mode):
Repair parts of regexp that should only match +, - and =.
* lisp/files.el (file-modes-symbolic-to-number):
Fix the same error in a doc string; this seems to be where
the mistake originated.

lisp/files.el
lisp/org/ob-tangle.el

index 03675a34f3afe44accd9d4fa0ec0789f463699ef..68c0a10792d28ac72f986aed51e08680342fd979 100644 (file)
@@ -8553,7 +8553,7 @@ the leading `-' character."
 (defun file-modes-symbolic-to-number (modes &optional from)
   "Convert symbolic file modes to numeric file modes.
 MODES is the string to convert, it should match
-\"[ugoa]*([+-=][rwxXstugo]*)+,...\".
+\"[ugoa]*([+=-][rwxXstugo]*)+,...\".
 See Info node `(coreutils)File permissions' for more information on this
 notation.
 FROM (or 0 if nil) gives the mode bits on which to base permissions if
index 0b816a7c13c2e3466ac1a742c87c78226ded1dac..a833037ca2ba98ed7855cd28a6a0431c97a55f89 100644 (file)
@@ -357,7 +357,7 @@ Did you give the decimal value %1$d by mistake?" mode)))
     (error "File mode %S not recognized as a valid format." mode))
    ((string-match-p "^o0?[0-7][0-7][0-7]$" mode)
     (string-to-number (replace-regexp-in-string "^o" "" mode) 8))
-   ((string-match-p "^[ugoa]*\\(?:[+-=][rwxXstugo]*\\)+\\(,[ugoa]*\\(?:[+-=][rwxXstugo]*\\)+\\)*$" mode)
+   ((string-match-p "^[ugoa]*\\(?:[+=-][rwxXstugo]*\\)+\\(,[ugoa]*\\(?:[+=-][rwxXstugo]*\\)+\\)*$" mode)
     ;; Match regexp taken from `file-modes-symbolic-to-number'.
     (file-modes-symbolic-to-number mode org-babel-tangle-default-file-mode))
    ((string-match-p "^[r-][w-][xs-][r-][w-][xs-][r-][w-][x-]$" mode)