* spam.el (spam-check-BBDB): Simplify and support BBDB 3.x when searching. Drop...
authorTed Zlatanov <tzz@lifelogs.com>
Tue, 11 Oct 2011 09:36:50 +0000 (05:36 -0400)
committerTed Zlatanov <tzz@lifelogs.com>
Tue, 11 Oct 2011 09:36:50 +0000 (05:36 -0400)
lisp/ChangeLog
lisp/spam.el

index 83243e7..2a109ca 100644 (file)
@@ -1,3 +1,8 @@
+2011-10-11  Teodor Zlatanov  <tzz@lifelogs.com>
+
+       * spam.el (spam-check-BBDB): Simplify and support BBDB 3.x when
+       searching.  Drop `bbdb-cache'.
+
 2011-10-11  Katsumi Yamaoka  <yamaoka@jpl.org>
 
        * message.el (message-signed-or-encrypted-p): Exclude header when
index c7f993d..fa152f6 100644 (file)
@@ -2150,29 +2150,13 @@ See the Info node `(gnus)Fancy Mail Splitting' for more details."
 
     (defun spam-check-BBDB ()
       "Mail from people in the BBDB is classified as ham or non-spam"
-      (let ((who (message-fetch-field "from"))
-            bbdb-cache bbdb-hashtable)
-        (when spam-cache-lookups
-          (setq bbdb-cache (gethash 'spam-use-BBDB spam-caches))
-          (unless bbdb-cache
-            (setq bbdb-cache (make-vector 17 0)) ; a good starting hash value
-            ;; this is based on the expanded (bbdb-hashtable) macro
-            ;; without the debugging support
-            (with-current-buffer (bbdb-buffer)
-              (save-excursion
-                (save-window-excursion
-                  (bbdb-records nil t)
-                  (mapatoms
-                   (lambda (symbol)
-                     (intern (downcase (symbol-name symbol)) bbdb-cache))
-                   bbdb-hashtable))))
-            (puthash 'spam-use-BBDB bbdb-cache spam-caches)))
+      (let ((who (message-fetch-field "from")))
         (when who
           (setq who (nth 1 (gnus-extract-address-components who)))
           (if
-              (if spam-cache-lookups
-                  (intern-soft (downcase who) bbdb-cache)
-                (bbdb-search-simple nil who))
+              (if (fboundp 'bbdb-search)
+                  (bbdb-search (bbdb-records) who) ;; v3
+                (bbdb-search-simple nil who)) ;; v2
               t
             (if spam-use-BBDB-exclusive
                 spam-split-group