2007-09-16 [colin] 3.0.0cvs16
authorColin Leroy <colin@colino.net>
Sun, 16 Sep 2007 10:01:17 +0000 (10:01 +0000)
committerColin Leroy <colin@colino.net>
Sun, 16 Sep 2007 10:01:17 +0000 (10:01 +0000)
* src/account.c
* src/compose.c
* src/prefs_account.c
* src/prefs_account.h
* src/prefs_template.c
* src/common/utils.c
Remove Generate Message-ID option. We need
this on some IMAP servers.

ChangeLog
PATCHSETS
configure.ac
src/account.c
src/common/utils.c
src/compose.c
src/prefs_account.c
src/prefs_account.h
src/prefs_template.c

index 0698a4179aae31c83abf0694d27fd7e39a090238..0efff932d9b0c2d83568bf2f6fec7748db5e5af7 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2007-09-16 [colin]     3.0.0cvs16
+
+       * src/account.c
+       * src/compose.c
+       * src/prefs_account.c
+       * src/prefs_account.h
+       * src/prefs_template.c
+       * src/common/utils.c
+               Remove Generate Message-ID option. We need
+               this on some IMAP servers.
+
 2007-09-16 [colin]     3.0.0cvs15
 
        * src/prefs_filtering.c
index 3930cc796183691c08976c8b077a20343d2967bc..563ef424906ed7e07722411b284fc8094fcde255 100644 (file)
--- a/PATCHSETS
+++ b/PATCHSETS
 ( cvs diff -u -r 1.382.2.407 -r 1.382.2.408 src/compose.c;  ) > 3.0.0cvs13.patchset
 ( cvs diff -u -r 1.207.2.181 -r 1.207.2.182 src/folderview.c;  cvs diff -u -r 1.115.2.166 -r 1.115.2.167 src/main.c;  cvs diff -u -r 1.274.2.210 -r 1.274.2.211 src/mainwindow.c;  ) > 3.0.0cvs14.patchset
 ( cvs diff -u -r 1.59.2.57 -r 1.59.2.58 src/prefs_filtering.c;  cvs diff -u -r 1.6.2.7 -r 1.6.2.8 src/prefs_filtering.h;  cvs diff -u -r 1.1.4.39 -r 1.1.4.40 src/prefs_filtering_action.c;  cvs diff -u -r 1.1.2.3 -r 1.1.2.4 src/common/tags.c;  ) > 3.0.0cvs15.patchset
+( cvs diff -u -r 1.61.2.68 -r 1.61.2.69 src/account.c;  cvs diff -u -r 1.382.2.408 -r 1.382.2.409 src/compose.c;  cvs diff -u -r 1.105.2.109 -r 1.105.2.110 src/prefs_account.c;  cvs diff -u -r 1.49.2.33 -r 1.49.2.34 src/prefs_account.h;  cvs diff -u -r 1.12.2.47 -r 1.12.2.48 src/prefs_template.c;  cvs diff -u -r 1.36.2.110 -r 1.36.2.111 src/common/utils.c;  ) > 3.0.0cvs16.patchset
index 3ec0e2560a9bea1333aae4572e99837fab9e039c..bda8363a9c3fcc20f4ba1982c1d4cefe6c8ec220 100644 (file)
@@ -11,7 +11,7 @@ MINOR_VERSION=0
 MICRO_VERSION=0
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=15
+EXTRA_VERSION=16
 EXTRA_RELEASE=
 EXTRA_GTK2_VERSION=
 
index caad6d8bd8778c4a858edb2a91b4620a9dc73c49..6f3e03b656d64e66fdb085cbe513b017ddbd2372 100644 (file)
@@ -943,7 +943,6 @@ static void account_clone(GtkWidget *widget, gpointer data)
        ACP_FASSIGN(imap_auth_type);
 
        /* send */
-       ACP_FASSIGN(gen_msgid);
        ACP_FASSIGN(add_customhdr);
        ACP_FASSIGN(use_smtp_auth);
        ACP_FASSIGN(smtp_auth_type);
index 4c7367bf08a0101b4ec726a41923e87dc945b64d..1e52031e635c242827a27a98134cded078d2a7ed 100644 (file)
@@ -3923,7 +3923,12 @@ gchar *generate_msgid(gchar *buf, gint len)
        t = time(NULL);
        lt = localtime_r(&t, &buft);
 
-       addr = g_strconcat("@", get_domain_name(), NULL);
+       if (strcmp(buf, "") == 0) {
+               addr = g_strconcat("@", get_domain_name(), NULL);
+       }
+       else {
+               addr = g_strconcat("@", buf, NULL);
+       }
 
        g_snprintf(buf, len, "%04d%02d%02d%02d%02d%02d.%08x%s",
                   lt->tm_year + 1900, lt->tm_mon + 1,
index 1c55908b4ac8248619135e4b3f48ceb019f5bce3..f006de02ded189e7be72c0c690b93c0fdc28f81c 100644 (file)
@@ -4793,11 +4793,19 @@ static gint compose_redirect_write_headers(Compose *compose, FILE *fp)
        }
 
        /* Resent-Message-ID */
-       if (compose->account->gen_msgid) {
-               generate_msgid(buf, sizeof(buf));
-               fprintf(fp, "Resent-Message-ID: <%s>\n", buf);
-               compose->msgid = g_strdup(buf);
+       if (compose->account->set_domain && compose->account->domain) {
+               g_snprintf(buf, sizeof(buf), "%s", compose->account->domain); 
+       } else if (!strncmp(get_domain_name(), "localhost", strlen("localhost"))) {
+               g_snprintf(buf, sizeof(buf), "%s", 
+                       strchr(compose->account->address, '@') ?
+                               strchr(compose->account->address, '@')+1 :
+                               compose->account->address);
+       } else {
+               g_snprintf(buf, sizeof(buf), "%s", "");
        }
+       generate_msgid(buf, sizeof(buf));
+       fprintf(fp, "Resent-Message-ID: <%s>\n", buf);
+       compose->msgid = g_strdup(buf);
 
        compose_redirect_write_headers_from_headerlist(compose, fp);
 
@@ -5693,11 +5701,19 @@ static gchar *compose_get_header(Compose *compose)
        g_free(str);
 
        /* Message-ID */
-       if (compose->account->gen_msgid) {
-               generate_msgid(buf, sizeof(buf));
-               g_string_append_printf(header, "Message-ID: <%s>\n", buf);
-               compose->msgid = g_strdup(buf);
+       if (compose->account->set_domain && compose->account->domain) {
+               g_snprintf(buf, sizeof(buf), "%s", compose->account->domain); 
+       } else if (!strncmp(get_domain_name(), "localhost", strlen("localhost"))) {
+               g_snprintf(buf, sizeof(buf), "%s", 
+                       strchr(compose->account->address, '@') ?
+                               strchr(compose->account->address, '@')+1 :
+                               compose->account->address);
+       } else {
+               g_snprintf(buf, sizeof(buf), "%s", "");
        }
+       generate_msgid(buf, sizeof(buf));
+       g_string_append_printf(header, "Message-ID: <%s>\n", buf);
+       compose->msgid = g_strdup(buf);
 
        if (compose->remove_references == FALSE) {
                /* In-Reply-To */
index 9d8f268ffdb1b16121773882db18629e23728d13..a21f7181e196bcc5310b7ea7a988b4e3bb4ff5ba 100644 (file)
@@ -151,7 +151,6 @@ typedef struct SendPage
 
     GtkWidget *vbox;
 
-       GtkWidget *msgid_checkbtn;
        GtkWidget *customhdr_checkbtn;
        GtkWidget *smtp_auth_checkbtn;
        GtkWidget *smtp_auth_type_optmenu;
@@ -473,10 +472,6 @@ static PrefParam receive_param[] = {
 };
 
 static PrefParam send_param[] = {
-       {"generate_msgid", "TRUE", &tmp_ac_prefs.gen_msgid, P_BOOL,
-        &send_page.msgid_checkbtn,
-        prefs_set_data_from_toggle, prefs_set_toggle},
-
        {"add_custom_header", "FALSE", &tmp_ac_prefs.add_customhdr, P_BOOL,
         &send_page.customhdr_checkbtn,
         prefs_set_data_from_toggle, prefs_set_toggle},
@@ -1585,7 +1580,6 @@ static void send_create_widget_func(PrefsPage * _page,
        GtkWidget *vbox1;
        GtkWidget *vbox2;
        GtkWidget *frame;
-       GtkWidget *msgid_checkbtn;
        GtkWidget *hbox;
        GtkWidget *customhdr_checkbtn;
        GtkWidget *customhdr_edit_btn;
@@ -1611,8 +1605,6 @@ static void send_create_widget_func(PrefsPage * _page,
 
        vbox2 = gtkut_get_options_frame(vbox1, &frame, _("Header"));
 
-       PACK_CHECK_BUTTON (vbox2, msgid_checkbtn, _("Generate Message-ID"));
-
        hbox = gtk_hbox_new (FALSE, 12);
        gtk_widget_show (hbox);
        gtk_box_pack_start (GTK_BOX (vbox2), hbox, FALSE, FALSE, 0);
@@ -1756,7 +1748,6 @@ static void send_create_widget_func(PrefsPage * _page,
        gtk_widget_show (pop_auth_minutes_lbl);
        gtk_box_pack_start (GTK_BOX (hbox), pop_auth_minutes_lbl, FALSE, FALSE, 0);
        
-       page->msgid_checkbtn     = msgid_checkbtn;
        page->customhdr_checkbtn = customhdr_checkbtn;
 
        page->smtp_auth_checkbtn       = smtp_auth_checkbtn;
index 1dd3c034947797cc472e14d4439854404bb24235..3057494943a2c9b8a0e028931162a48843b84cea 100644 (file)
@@ -100,7 +100,6 @@ struct _PrefsAccount
        gint imap_auth_type;
 
        /* Send */
-       gboolean gen_msgid;
        gboolean add_customhdr;
        gboolean use_smtp_auth;
        SMTPAuthType smtp_auth_type;
index 21812e44f5c54d619adad1a5ab9f617a8c5a833d..bb78b5d76e7322fa58f3fe26f816394e8c420785 100644 (file)
@@ -676,7 +676,7 @@ static gboolean prefs_template_list_view_set_row(GtkTreeIter *row)
 
        prefs_template_list_view_insert_template(templates.list_view,
                                                 row, tmpl->name, tmpl);
-       g_free(value);
+
        return TRUE;
 }