0.8.10claws91
authorChristoph Hohmann <reboot@gmx.ch>
Thu, 6 Mar 2003 10:36:37 +0000 (10:36 +0000)
committerChristoph Hohmann <reboot@gmx.ch>
Thu, 6 Mar 2003 10:36:37 +0000 (10:36 +0000)
* src/compose.c
        ignore address comment in dupe check for Cc-list

(closes reopened bug 47 Replying to message strips name part of
 e-mail addresses of Cc: lines)

ChangeLog.claws
configure.ac
src/compose.c

index 140439cc97af7de85e7084b4a069914bf21fa28c..920130492ee26d7116a7757bb714321e07406310 100644 (file)
@@ -1,3 +1,11 @@
+2003-03-06 [christoph] 0.8.10claws91
+
+       * src/compose.c
+               ignore address comment in dupe check for Cc-list
+
+       (closes reopened bug 47 Replying to message strips name part of
+        e-mail addresses of Cc: lines)
+
 2003-03-06 [paul]      0.8.10claws90
 
        * src/Makefile.am
index c3725046260434245a942a8724e3dfa1a5818729..de3f38103ccd6c340e1a9784c0b24f84f3188647 100644 (file)
@@ -11,7 +11,7 @@ MINOR_VERSION=8
 MICRO_VERSION=10
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=claws90
+EXTRA_VERSION=claws91
 VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION$EXTRA_VERSION
 
 dnl set $target
index 7cbafa54a926d19a255417d2f0b3335ea90b5b20..de724c8d20dc1a8b7d8360a94fbe85883cc507aa 100644 (file)
@@ -1812,22 +1812,27 @@ static void compose_reply_set_entry(Compose *compose, MsgInfo *msginfo,
 
        to_table = g_hash_table_new(g_str_hash, g_str_equal);
        if (replyto)
-               g_hash_table_insert(to_table, replyto, GINT_TO_POINTER(1));
+               g_hash_table_insert(to_table, g_strdup(replyto), GINT_TO_POINTER(1));
        if (compose->account)
-               g_hash_table_insert(to_table, compose->account->address,
+               g_hash_table_insert(to_table, g_strdup(compose->account->address),
                                    GINT_TO_POINTER(1));
 
        /* remove address on To: and that of current account */
        for (cur = cc_list; cur != NULL; ) {
                GSList *next = cur->next;
+               gchar *addr;
 
-               if (g_hash_table_lookup(to_table, cur->data) != NULL)
+               addr = g_strdup(cur->data);
+               extract_address(addr);
+
+               if (GPOINTER_TO_INT(g_hash_table_lookup(to_table, addr)) == 1)
                        cc_list = g_slist_remove(cc_list, cur->data);
                else
-                       g_hash_table_insert(to_table, cur->data, cur);
+                       g_hash_table_insert(to_table, addr, GINT_TO_POINTER(1));
 
                cur = next;
        }
+       hash_free_strings(to_table);
        g_hash_table_destroy(to_table);
 
        if (cc_list) {