Fix: Catch errors in preamble evaluation
This commit is contained in:
parent
83cc00a27d
commit
62f4e0b110
1 changed files with 11 additions and 7 deletions
18
org-ql.el
18
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))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue