commit aabde6375127a203126459acb0c5f64009b81987
parent 5e193ff0498fa2c26c2e548b12fcab8b953a1660
Author: Paweł Pękala <c0rn@gazeta.pl>
Date: Tue, 8 Dec 2009 19:05:29 +0000
2009-12-08 [pawel] 3.7.3cvs34
* src/compose.c
When 'Reply All' remove current compose address from
Cc/Bcc list - fix for regression introduced in cvs28
Diffstat:
4 files changed, 18 insertions(+), 3 deletions(-)
diff --git a/ChangeLog b/ChangeLog
@@ -1,3 +1,9 @@
+2009-12-08 [pawel] 3.7.3cvs34
+
+ * src/compose.c
+ When 'Reply All' remove current compose address from
+ Cc/Bcc list - fix for regression introduced in cvs28
+
2009-12-05 [pawel] 3.7.3cvs33
* src/messageview.c
diff --git a/PATCHSETS b/PATCHSETS
@@ -3907,3 +3907,4 @@
( cvs diff -u -r 1.382.2.530 -r 1.382.2.531 src/compose.c; ) > 3.7.3cvs31.patchset
( cvs diff -u -r 1.94.2.205 -r 1.94.2.206 src/messageview.c; cvs diff -u -r 1.1.2.12 -r 1.1.2.13 src/uri_opener.c; ) > 3.7.3cvs32.patchset
( cvs diff -u -r 1.94.2.206 -r 1.94.2.207 src/messageview.c; ) > 3.7.3cvs33.patchset
+( cvs diff -u -r 1.382.2.531 -r 1.382.2.532 src/compose.c; ) > 3.7.3cvs34.patchset
diff --git a/configure.ac b/configure.ac
@@ -12,7 +12,7 @@ MINOR_VERSION=7
MICRO_VERSION=3
INTERFACE_AGE=0
BINARY_AGE=0
-EXTRA_VERSION=33
+EXTRA_VERSION=34
EXTRA_RELEASE=
EXTRA_GTK2_VERSION=
diff --git a/src/compose.c b/src/compose.c
@@ -4603,12 +4603,19 @@ compose_current_mail_account(void)
static void compose_select_account(Compose *compose, PrefsAccount *account,
gboolean init)
{
- gchar *from = NULL, *header;
+ gchar *from = NULL, *email, *header;
ComposeHeaderEntry *header_entry;
cm_return_if_fail(account != NULL);
+ email = g_utf8_strdown(compose->account->address, -1);
+ g_hash_table_remove(compose->email_hashtable, email);
+ g_free(email);
+
compose->account = account;
+ g_hash_table_insert(compose->email_hashtable,
+ g_utf8_strdown(account->address, -1),
+ GUINT_TO_POINTER(1));
if (account->name && *account->name) {
gchar *buf;
@@ -6522,7 +6529,8 @@ static void compose_add_header_entry(Compose *compose, const gchar *header,
extract_address(tmp);
email = g_utf8_strdown(tmp, -1);
- if (g_hash_table_lookup(compose->email_hashtable, email) != NULL) {
+ if (!(!strcmp(header, "To:") && !strcasecmp(compose->account->address, email))
+ && g_hash_table_lookup(compose->email_hashtable, email) != NULL) {
debug_print("Ignoring duplicate address - %s %s, pref_type: %d\n",
header, text, (gint) pref_type);
g_free(email);