diff --git a/lisp/ob-tangle.el b/lisp/ob-tangle.el index 27443fc2e..980d4a120 100644 --- a/lisp/ob-tangle.el +++ b/lisp/ob-tangle.el @@ -158,9 +158,9 @@ result. The default value is `org-remove-indentation'." :version "24.1" :type 'function) -(defcustom org-babel-tangle-default-file-mode #o544 +(defcustom org-babel-tangle-default-file-mode #o644 "The default mode used for tangled files, as an integer. -The default value 356 correspands to the octal #o544, which is +The default value 420 correspands to the octal #o644, which is read-write permissions for the user, read-only for everyone else." :group 'org-babel-tangle :package-version '(Org . "9.6") @@ -361,9 +361,9 @@ Did you give the decimal value %1$d by mistake?" 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) - (file-modes-symbolic-to-number (concat "u=" (substring mode 0 3) - ",g=" (substring mode 3 6) - ",o=" (substring mode 6 9)) + (file-modes-symbolic-to-number (concat "u=" (delete ?- (substring mode 0 3)) + ",g=" (delete ?- (substring mode 3 6)) + ",o=" (delete ?- (substring mode 6 9))) 0)) (t (error "File mode %S not recognized as a valid format. See `org-babel-interpret-file-mode'." mode))))