unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: "Roland Winkler" <winkler@gnu.org>
To: Sergio Durigan Junior <sergiodj@riseup.net>
Cc: 11580@debbugs.gnu.org, emacs-devel@gnu.org
Subject: bug#11580: [PATCH] Fix bug #11580
Date: Sun, 30 Sep 2012 10:12:43 -0500	[thread overview]
Message-ID: <20584.24939.541992.925590__45126.3966192075$1349018035$gmane$org@gargle.gargle.HOWL> (raw)
In-Reply-To: <m3pq54hbj1.fsf@riseup.net>

On Sat Sep 29 2012 Sergio Durigan Junior wrote:
> Thank you for the explanations.  I think this patch has more to do with
> EUDC than with BBDB, TBH.  And this is a simple fix to a long-standing
> problem.
> 
> I am afraid I did not understand the last paragraph.  Are you saying
> that it is OK to commit this patch upstream?

I am sorry, I really do not know much of EUDC.

> WDYT of the new patch below?
> 
> +	 ((and (not (listp val)) (string= val ""))
> +	  nil) ; Do nothing

If I understand the patch correctly, its goal is that if a field of
a BBDB record is just an empty string, then do not pass the empty
string to EUDC. BBDB v3 puts nil into such fields instead of an
empty string. I do not know about BBDB v2. 

In any case, I suggest the following simplified / untested patch
(note that the return values of cond are ignored)

--- eudcb-bbdb.el~	2012-04-07 22:03:02.000000000 -0500
+++ eudcb-bbdb.el	2012-09-30 10:06:03.000000000 -0500
@@ -167,17 +167,18 @@
 			 'record))))
        (t
 	(setq val "Unknown BBDB attribute")))
-      (if val
-	(cond
-	 ((memq attr '(phones addresses))
-	  (setq eudc-rec (append val eudc-rec)))
-	 ((and (listp val)
-	  (= 1 (length val)))
-	  (setq eudc-rec (cons (cons attr (car val)) eudc-rec)))
-	 ((> (length val) 0)
-	  (setq eudc-rec (cons (cons attr val) eudc-rec)))
-	 (t
-	  (error "Unexpected attribute value")))))
+      (cond
+       ((or (not val)
+            (and (stringp val) (string= val "")))) ; do nothing
+       ((memq attr '(phones addresses))
+        (setq eudc-rec (append val eudc-rec)))
+       ((and (listp val)
+             (= 1 (length val)))
+        (setq eudc-rec (cons (cons attr (car val)) eudc-rec)))
+       ((> (length val) 0)
+        (setq eudc-rec (cons (cons attr val) eudc-rec)))
+       (t
+        (error "Unexpected attribute value"))))
     (nreverse eudc-rec)))
 
 





  parent reply	other threads:[~2012-09-30 15:12 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <87ipb64w5x.fsf@riseup.net>
2012-09-26 17:54 ` bug#11580: [PATCH] Fix bug #11580 Tassilo Horn
2012-09-29 12:04   ` Roland Winkler
     [not found]   ` <87d3152fxd.fsf@gnu.org>
2012-09-29 19:30     ` Sergio Durigan Junior
     [not found]     ` <m3pq54hbj1.fsf@riseup.net>
     [not found]       ` <20584.24939.541992.925590@gargle.gargle.HOWL>
2012-05-29  5:14         ` bug#11580: 23.3; EUDC can't handle empty last names in BBDB Sergio Durigan Junior
     [not found]           ` <handler.11580.B.133834110724596.ack@debbugs.gnu.org>
2012-07-12  2:00             ` bug#11580: Acknowledgement (23.3; EUDC can't handle empty last names in BBDB) Sergio Durigan Junior
2012-07-12 14:37               ` Stefan Monnier
2012-10-02  1:46           ` bug#11580: [PATCH] Fix bug #11580 Sergio Durigan Junior
     [not found]         ` <87d3113ass.fsf@riseup.net>
2012-10-02  1:58           ` Roland Winkler
2012-10-02  2:50             ` Sergio Durigan Junior
2012-10-02  3:59           ` Stefan Monnier
2012-10-02  5:10           ` Chong Yidong
2012-09-30 15:12       ` Roland Winkler [this message]
     [not found] ` <87mx0c655g.fsf@thinkpad.tsdh.de>
2012-09-26 18:18   ` Sergio Durigan Junior
     [not found]   ` <m3ipb0r6kf.fsf@riseup.net>
2012-09-26 18:56     ` Tassilo Horn

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='20584.24939.541992.925590__45126.3966192075$1349018035$gmane$org@gargle.gargle.HOWL' \
    --to=winkler@gnu.org \
    --cc=11580@debbugs.gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=sergiodj@riseup.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).