From da31714c10f67a0c7250b98eb41a395398e45ddd Mon Sep 17 00:00:00 2001 From: Kyle Meyer Date: Sun, 26 Aug 2018 15:36:49 -0400 Subject: [PATCH] org-compat: Define proper-list-p * lisp/org-compat.el (proper-list-p): New function for compatibility with Emacsen before 27.1. This is a follow-up to the backport of Emacs's 2fde6275b. --- lisp/org-compat.el | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/lisp/org-compat.el b/lisp/org-compat.el index b47b4cc29..3c9321cc6 100644 --- a/lisp/org-compat.el +++ b/lisp/org-compat.el @@ -598,6 +598,15 @@ attention to case differences." (eq t (compare-strings suffix nil nil string start-pos nil ignore-case)))))) +(unless (fboundp 'proper-list-p) + ;; `proper-list-p' was added in Emacs 27.1. The function below is + ;; taken from Emacs subr.el 200195e824b^. + (defun proper-list-p (object) + "Return OBJECT's length if it is a proper list, nil otherwise. +A proper list is neither circular nor dotted (i.e., its last cdr +is nil)." + (and (listp object) (ignore-errors (length object))))) + ;;; Integration with and fixes for other packages