Hi,
when configuring EUDC to query BBDB for recipient completion in Gnus, it
failed with the following error :
Debugger entered--Lisp error: (invalid-function (macro lambda (vector) (list
(quote aref) vector 4)))
bbdb-record-phones(["Alain" "Kirche" nil nil nil nil ("[EMAIL PROTECTED]")
((creation-date . "2004-08-31") (timestamp . "2004-08-31")) ["Alain Kirche" nil
#<marker at 4815 in .bbdb> nil]])
eudc-bbdb-extract-phones(["Alain" "Kirche" nil nil nil nil ("[EMAIL
PROTECTED]") ((creation-date . "2004-08-31") (timestamp . "2004-08-31"))
["Alain Kirche" nil #<marker at 4815 in .bbdb> nil]])
eudc-bbdb-format-record-as-result(["Alain" "Kirche" nil nil nil nil ("[EMAIL
PROTECTED]") ((creation-date . "2004-08-31") (timestamp . "2004-08-31"))
["Alain Kirche" nil #<marker at 4815 in .bbdb> nil]])
mapcar(eudc-bbdb-format-record-as-result (["Alain" "Kirche" nil nil nil nil
("[EMAIL PROTECTED]") (... ...) ["Alain Kirche" nil #<marker at 4815 in .bbdb>
nil]] ["S\x8e9\ bastien" "Kirche" ("S\x8e9ki" "Sebastien Kirche" "Seki") nil
nil nil ("[EMAIL PROTECTED]" "[EMAIL PROTECTED]" "[EMAIL PROTECTED]" "[EMAIL
PROTECTED]" "[EMAIL PROTECTED]") (... ...) ["S\x8e9\ bastien Kirche" nil
#<marker at 4938 in .bbdb> nil]]))
eudc-bbdb-query-internal(((lastname . "kir")) nil)
eudc-query(((name . "kir")))
eval((eudc-query (quote (...))))
eval-last-sexp-1(t)
eval-last-sexp(t)
eval-print-last-sexp()
call-interactively(eval-print-last-sexp)
You can see that BBDB found 2 records in my database, but there is a
problem while formatting the result.
You can reproduce the problem with BBDB installed and for example these
commands in the scratch buffer :
(require 'bbdb)
(require 'eudc)
(eudc-set-server "localhost" 'bbdb t)
(eudc-query '((name . "foobar")))
If your query does not find any record, the problem does not occur, else
you should see a backtrace similar to mine.
On gnu.emacs.help, Kevin Rodgers and Stefan Monnier gave me the
explanation : it is due to the fact that eudc (more precisely
lisp/net/eudcb-bbdb.el) was byte compiled at bootstrap time long before
bbdb was installed.
As a workaround, one can add a (eval-when-compile (require 'bbdb)) or
simpler (require 'bbdb) at the beginning of eudcb-bbdb.el and
byte-recompile.
But at the bootstrap time there is still a problem as eudc is part of
Emacs and not BBDB.
Regards.
--
S�bastien Kirche
_______________________________________________
Emacs-pretest-bug mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug