branch: externals/org commit 73485aa06340109b10cb97be034689a2bce06c03 Author: Ihor Radchenko <yanta...@posteo.net> Commit: Ihor Radchenko <yanta...@posteo.net>
org-element-parse-secondary-string: Fix Emacs 27 compatibility * lisp/org-compat.el (org-get-buffer-create): Add compatibility function. * lisp/org-element.el (org-element-parse-secondary-string): * lisp/org-id.el (org-id-find-id-in-file): Use it. Reported-by: Yasushi SHOJI <yasushi.sh...@gmail.com> Link: https://orgmode.org/list/CAELBRWJUQ=kupubyev_w9dqemyknn3400t+w4_q69ehnp-k...@mail.gmail.com --- lisp/org-compat.el | 8 ++++++++ lisp/org-element.el | 2 +- lisp/org-id.el | 5 +---- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/lisp/org-compat.el b/lisp/org-compat.el index 1158baf7d8..0c10c67224 100644 --- a/lisp/org-compat.el +++ b/lisp/org-compat.el @@ -161,6 +161,14 @@ back to `window-text-pixel-size' otherwise." ;;; Emacs < 28.1 compatibility +(if (= 2 (cdr (subr-arity (symbol-function 'get-buffer-create)))) + ;; Emacs >27. + (defalias 'org-get-buffer-create #'get-buffer-create) + (defun org-get-buffer-create (buffer-or-name &optional _) + "Call `get-buffer-create' with BUFFER-OR-NAME argument. +Ignore optional argument." + (get-buffer-create buffer-or-name))) + (if (fboundp 'file-name-concat) (defalias 'org-file-name-concat #'file-name-concat) (defun org-file-name-concat (directory &rest components) diff --git a/lisp/org-element.el b/lisp/org-element.el index c6f96b89db..5fd5b5d271 100644 --- a/lisp/org-element.el +++ b/lisp/org-element.el @@ -4900,7 +4900,7 @@ If STRING is the empty string or nil, return nil." ((equal string "") nil) (t (let (rtn) (org-element-with-buffer-copy - :to-buffer (get-buffer-create " *Org parse*" t) + :to-buffer (org-get-buffer-create " *Org parse*" t) :drop-contents t :drop-visibility t :drop-narrowing t diff --git a/lisp/org-id.el b/lisp/org-id.el index 463bd831cb..fbe6a0ed0f 100644 --- a/lisp/org-id.el +++ b/lisp/org-id.el @@ -677,10 +677,7 @@ optional argument MARKERP, return the position as a new marker." (let* ((visiting (find-buffer-visiting file)) (buffer (or visiting (if markerp (find-file-noselect file) - (if (<= 2 (cdr (func-arity #'get-buffer-create))) - (with-no-warnings (get-buffer-create " *Org ID temp*" t)) - ;; FIXME: Emacs 27 does not yet have second argument. - (get-buffer-create " *Org ID temp*")))))) + (org-get-buffer-create " *Org ID temp*" t))))) (unwind-protect (with-current-buffer buffer (unless (derived-mode-p 'org-mode) (org-mode))