emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/gnorb f3f3bf2 128/449: Fix Agenda BBDB popup for search


From: Stefan Monnier
Subject: [elpa] externals/gnorb f3f3bf2 128/449: Fix Agenda BBDB popup for searches with no tags
Date: Fri, 27 Nov 2020 23:15:23 -0500 (EST)

branch: externals/gnorb
commit f3f3bf20e24fec8eb3e0958c84d2422f346f84d7
Author: Eric Abrahamsen <eric@ericabrahamsen.net>
Commit: Eric Abrahamsen <eric@ericabrahamsen.net>

    Fix Agenda BBDB popup for searches with no tags
    
    lisp/gnorb-org.el: (gnorb-org-popup-bbdb) Previously, if there were no
                   tags in the agenda search, *all* BBDB records with
                   org-tags fields were popped up. Oops.
---
 lisp/gnorb-org.el | 31 ++++++++++++++++---------------
 1 file changed, 16 insertions(+), 15 deletions(-)

diff --git a/lisp/gnorb-org.el b/lisp/gnorb-org.el
index 82a4ffa..08708fd 100644
--- a/lisp/gnorb-org.el
+++ b/lisp/gnorb-org.el
@@ -779,17 +779,18 @@ search."
               (push (mapconcat 'identity (nreverse acc) "") out-or))
             (setq str (mapconcat 'identity (nreverse out-or) "|"))
             (setq tag-clause (cdr (org-make-tags-matcher str)))
-            (setq recs
-                  (remove-if-not
-                   (lambda (r)
-                     (let ((rec-tags (bbdb-record-xfield
-                                      r gnorb-bbdb-org-tag-field)))
-                       (and rec-tags
-                            (let ((tags-list (org-split-string rec-tags ":"))
-                                  (case-fold-search t)
-                                  (org-trust-scanner-tags t))
-                              (eval tag-clause)))))
-                   (bbdb-records)))))
+            (unless (equal str "")
+              (setq recs
+                    (remove-if-not
+                     (lambda (r)
+                       (let ((rec-tags (bbdb-record-xfield
+                                        r gnorb-bbdb-org-tag-field)))
+                         (and rec-tags
+                              (let ((tags-list (org-split-string rec-tags ":"))
+                                    (case-fold-search t)
+                                    (org-trust-scanner-tags t))
+                                (eval tag-clause)))))
+                     (bbdb-records))))))
          ((eq major-mode 'org-mode)
           (save-excursion
             (org-back-to-heading)
@@ -798,10 +799,10 @@ search."
                   desc rec)
               (while (re-search-forward
                       org-bracket-link-analytic-regexp bound t)
-               (when (string-match-p "bbdb" (match-string 2))
-                 (setq desc (match-string 5)
-                       rec (bbdb-search (bbdb-records) desc desc desc)
-                       recs (append recs rec))))))))
+                (when (string-match-p "bbdb" (match-string 2))
+                  (setq desc (match-string 5)
+                        rec (bbdb-search (bbdb-records) desc desc desc)
+                        recs (append recs rec))))))))
     (if recs
        (bbdb-display-records
         recs gnorb-org-bbdb-popup-layout)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]