From 62f4e0b1109963bb86dacb34666c9402547f3d89 Mon Sep 17 00:00:00 2001 From: Caleb Chase Date: Thu, 23 Jun 2022 16:43:45 -0500 Subject: [PATCH] Fix: Catch errors in preamble evaluation --- org-ql.el | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/org-ql.el b/org-ql.el index 8825a86..ef8b6f8 100644 --- a/org-ql.el +++ b/org-ql.el @@ -1066,15 +1066,19 @@ defined in `org-ql-predicates' by calling `org-ql-defpred'." (or (when org-ql-preamble ;; Only one preamble is allowed element) - (pcase element - (`(or _) element) + (condition-case err + (pcase element + (`(or _) element) - ,@preamble-patterns + ,@preamble-patterns - (`(and . ,rest) - (let ((clauses (mapcar #'rec rest))) - `(and ,@(-non-nil clauses)))) - (_ element))))) + (`(and . ,rest) + (let ((clauses (mapcar #'rec rest))) + `(and ,@(-non-nil clauses)))) + (_ element)) + (error + (message "Preamble error: %s" err) + nil))))) (setq query (pcase (mapcar #'rec (list query)) ((or `(nil) `((nil))