diff options
Diffstat (limited to 'mail')
-rw-r--r-- | mail/ChangeLog | 6 | ||||
-rw-r--r-- | mail/em-composer-utils.c | 8 |
2 files changed, 13 insertions, 1 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index de32f33fab..8c8f254118 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,9 @@ +2004-06-14 Not Zed <NotZed@Ximian.com> + + * em-composer-utils.c (get_reply_all): if we removed all of the + addresses because they were 'us', add the first to + address back. otherwise reply-to-all behaves strange. + 2004-06-11 Jeffrey Stedfast <fejj@ximian.com> * em-folder-tree.c (em_folder_tree_set_selected): Free any old diff --git a/mail/em-composer-utils.c b/mail/em-composer-utils.c index abc758915f..42e70400a7 100644 --- a/mail/em-composer-utils.c +++ b/mail/em-composer-utils.c @@ -868,7 +868,6 @@ static void forward_non_attached (GPtrArray *messages, int style, const char *fromuri) { CamelMimeMessage *message; - CamelDataWrapper *wrapper; EMsgComposer *composer; char *subject, *text; int i; @@ -1458,6 +1457,13 @@ get_reply_all (CamelMimeMessage *message, CamelInternetAddress **to, CamelIntern camel_internet_address_add (*to, name, addr); camel_address_remove ((CamelAddress *) *cc, 0); } + + /* if To: is still empty, may we removed duplicates (i.e. ourself), so add the original To if it was set */ + if (camel_address_length((CamelAddress *)*to) == 0 + && (camel_internet_address_get(to_addrs, 0, &name, &addr) + || camel_internet_address_get(cc_addrs, 0, &name, &addr))) { + camel_internet_address_add(*to, name, addr); + } g_hash_table_destroy (rcpt_hash); } |