diff options
-rw-r--r-- | plugins/bbdb/ChangeLog | 6 | ||||
-rw-r--r-- | plugins/bbdb/bbdb.c | 12 |
2 files changed, 18 insertions, 0 deletions
diff --git a/plugins/bbdb/ChangeLog b/plugins/bbdb/ChangeLog index ca872a47d6..922fade265 100644 --- a/plugins/bbdb/ChangeLog +++ b/plugins/bbdb/ChangeLog @@ -1,3 +1,9 @@ +2007-06-25 Milan Crha <mcrha@redhat.com> + + ** Fix for bug #334140 + + * bbdb.c: (bbdb_do_it): Strip '\"' out of name part, if exists. + 2007-06-07 Gilles Dartiguelongue <dartigug@esiee.fr> * gaimbuddies.c: (get_node_text), (parse_contact): more compilation diff --git a/plugins/bbdb/bbdb.c b/plugins/bbdb/bbdb.c index 0145f63a78..8085eaf657 100644 --- a/plugins/bbdb/bbdb.c +++ b/plugins/bbdb/bbdb.c @@ -195,6 +195,18 @@ bbdb_do_it (EBook *book, const char *name, const char *email) return; } + if (g_utf8_strchr (name, -1, '\"')) { + GString *tmp = g_string_new (name); + gchar *p; + + while (p = g_utf8_strchr (tmp->str, tmp->len, '\"'), p) + tmp = g_string_erase (tmp, p - tmp->str, 1); + + g_free (temp_name); + temp_name = g_string_free (tmp, FALSE); + name = temp_name; + } + /* If a contact exists with this name, add the email address to it. */ query_string = g_strdup_printf ("(is \"full_name\" \"%s\")", name); query = e_book_query_from_string (query_string); |