2005-06-16 [colin] 1.9.11cvs78
authorColin Leroy <colin@colino.net>
Thu, 16 Jun 2005 19:59:41 +0000 (19:59 +0000)
committerColin Leroy <colin@colino.net>
Thu, 16 Jun 2005 19:59:41 +0000 (19:59 +0000)
* src/imap_gtk.c
Lock summaryview while downloading messages
on user demand
* src/procheader.c
* src/unmime.c
* src/common/utils.c
* src/common/utils.h
Replace \r and \n with spaces in From and
Subject headers

ChangeLog-gtk2.claws
PATCHSETS
configure.ac
src/common/utils.c
src/common/utils.h
src/imap_gtk.c
src/procheader.c
src/unmime.c

index 99b3a310cbc51e11066128664b9c59bba3760e1b..732b17a1be78c154d3c27ce55ce31179eae5ed31 100644 (file)
@@ -1,3 +1,15 @@
+2005-06-16 [colin]     1.9.11cvs78
+
+       * src/imap_gtk.c
+               Lock summaryview while downloading messages
+               on user demand
+       * src/procheader.c
+       * src/unmime.c
+       * src/common/utils.c
+       * src/common/utils.h
+               Replace \r and \n with spaces in From and
+               Subject headers
+
 2005-06-16 [paul]      1.9.11cvs77
 
        * src/procmime.c
index 6678a3f6cc54f88ab7d3c4fc482657a5c0dc240d..d48cf12e959802df13df555f75043d4eed724f6c 100644 (file)
--- a/PATCHSETS
+++ b/PATCHSETS
 ( cvs diff -u -r 1.382.2.131 -r 1.382.2.132 src/compose.c;  cvs diff -u -r 1.395.2.81 -r 1.395.2.82 src/summaryview.c;  cvs diff -u -r 1.8.2.6 -r 1.8.2.7 src/headerview.c;  ) > 1.9.11cvs75.patchset
 ( cvs diff -u -r 1.4.2.10 -r 1.4.2.11 src/gtk/about.c;  ) > 1.9.11cvs76.patchset
 ( cvs diff -u -r 1.49.2.47 -r 1.49.2.48 src/procmime.c;  cvs diff -u -r 1.4.2.11 -r 1.4.2.12 src/gtk/about.c;  ) > 1.9.11cvs77.patchset
+( cvs diff -u -r 1.1.2.9 -r 1.1.2.10 src/imap_gtk.c;  cvs diff -u -r 1.47.2.20 -r 1.47.2.21 src/procheader.c;  cvs diff -u -r 1.8.2.4 -r 1.8.2.5 src/unmime.c;  cvs diff -u -r 1.36.2.32 -r 1.36.2.33 src/common/utils.c;  cvs diff -u -r 1.20.2.15 -r 1.20.2.16 src/common/utils.h;  ) > 1.9.11cvs78.patchset
index b7892d206734454e2d384a754699160073ca7e19..45dd97020ef25cea1a90922f825f41eb93f00095 100644 (file)
@@ -11,7 +11,7 @@ MINOR_VERSION=9
 MICRO_VERSION=11
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=77
+EXTRA_VERSION=78
 EXTRA_RELEASE=
 EXTRA_GTK2_VERSION=
 
index fc1c17177fa0fdc8e67aed030ec402edf7c0f55d..8303d5fbbb98ff2138be7761fdcbe022e5bbfb73 100644 (file)
@@ -3931,3 +3931,15 @@ void g_auto_pointer_free(GAuto *auto_ptr)
        g_free(ptr);            
 }
 
+void replace_returns(gchar *str)
+{
+       if (!str)
+               return;
+
+       while (strstr(str, "\n")) {
+               *strstr(str, "\n") = ' ';
+       }
+       while (strstr(str, "\r")) {
+               *strstr(str, "\r") = ' ';
+       }
+}
index b585cba91799c8ac1f2826256fbf15e3ec35c511..c14ee7cc47fea60f68f51dc3a61e1d6271c12241 100644 (file)
@@ -492,7 +492,7 @@ GAuto *g_auto_pointer_new_with_free (gpointer p,
 gpointer g_auto_pointer_get_ptr                (GAuto *auto_ptr);
 GAuto *g_auto_pointer_copy             (GAuto *auto_ptr);
 void g_auto_pointer_free               (GAuto *auto_ptr);
-
+void replace_returns                   (gchar *str);
 #ifdef __cplusplus
 }
 #endif
index 73cf1838546dd77910299cb647a6799431b5f1cb..02aa4f1c9bdef18d6e3ec65072c43b43417d00f1 100644 (file)
@@ -40,6 +40,7 @@
 #include "imap.h"
 #include "inc.h"
 #include "prefs_common.h"
+#include "summaryview.h"
 
 static void new_folder_cb(FolderView *folderview, guint action, GtkWidget *widget);
 static void rename_folder_cb(FolderView *folderview, guint action, GtkWidget *widget);
@@ -379,6 +380,7 @@ static void download_cb(FolderView *folderview, guint action,
        main_window_lock(mainwin);
        gtk_widget_set_sensitive(folderview->ctree, FALSE);
        main_window_progress_on(mainwin);
+       summaryview_lock(folderview->summaryview, item);
        GTK_EVENTS_FLUSH();
        if (folder_item_fetch_all_msg(item) < 0) {
                gchar *name;
@@ -389,6 +391,7 @@ static void download_cb(FolderView *folderview, guint action,
        }
        folder_set_ui_func(item->folder, NULL, NULL);
        main_window_progress_off(mainwin);
+       summaryview_unlock(folderview->summaryview, item);
        gtk_widget_set_sensitive(folderview->ctree, TRUE);
        main_window_unlock(mainwin);
        inc_unlock();
index de0008cb854cf7e95253596029ddd52c8e9f84e0..132b361a738a76f0094472b3f71ea0809a43b68a 100644 (file)
@@ -618,6 +618,8 @@ static MsgInfo *parse_stream(void *data, gboolean isstring, MsgFlags flags,
                        if (msginfo->from) break;
                         msginfo->from = conv_unmime_header(hp, NULL);
                        msginfo->fromname = procheader_get_fromname(msginfo->from);
+                       replace_returns(msginfo->from);
+                       replace_returns(msginfo->fromname);
                        break;
                case H_TO:
                         tmp = conv_unmime_header(hp, NULL);
@@ -653,6 +655,7 @@ static MsgInfo *parse_stream(void *data, gboolean isstring, MsgFlags flags,
                case H_SUBJECT:
                        if (msginfo->subject) break;
                         msginfo->subject = conv_unmime_header(hp, NULL);
+                       replace_returns(msginfo->subject);
                        break;
                case H_MSG_ID:
                        if (msginfo->msgid) break;
index 1365c3ce45396b3de6f2a818b9337218fed7e8d8..1f2692df02d347907f7ee4477391ee926fd4ce18 100644 (file)
@@ -127,7 +127,7 @@ gchar *unmime_header(const gchar *encoded_str)
 
                p = eword_end_p + 2;
        }
-
+       
        out_str = outbuf->str;
        out_len = outbuf->len;
        g_string_free(outbuf, FALSE);