diff options
-rw-r--r-- | mail/ChangeLog | 6 | ||||
-rw-r--r-- | mail/mail-config-factory.c | 2 | ||||
-rw-r--r-- | mail/mail-format.c | 11 |
3 files changed, 14 insertions, 5 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index c126111fa9..9edc77184d 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,9 @@ +2002-04-16 Jeffrey Stedfast <fejj@ximian.com> + + * mail-config-factory.c (config_control_factory_cb): Ref the prefs + widget here since we unref in the destroy callback. Caught this + thanks to purify. + 2002-04-13 Jeffrey Stedfast <fejj@ximian.com> * mail-accounts.c: Build fixes for --enable-nntp. diff --git a/mail/mail-config-factory.c b/mail/mail-config-factory.c index 17b75ed2e6..2e825b8b5a 100644 --- a/mail/mail-config-factory.c +++ b/mail/mail-config-factory.c @@ -87,6 +87,8 @@ config_control_factory_cb (BonoboGenericFactory *factory, const char *component_ } data->prefs = prefs; + gtk_object_ref (GTK_OBJECT (prefs)); + gtk_widget_show_all (prefs); control = evolution_config_control_new (prefs); diff --git a/mail/mail-format.c b/mail/mail-format.c index 604740793c..79bc90c9fb 100644 --- a/mail/mail-format.c +++ b/mail/mail-format.c @@ -1259,7 +1259,7 @@ handle_text_plain_flowed (char *buf, MailDisplay *md, GtkHTML *html, GtkHTMLStre char *text, *line, *eol, *p; int prevquoting = 0, quoting, len, br_pending = 0; guint32 citation_color = mail_config_get_citation_color (); - + mail_html_write (html, stream, "\n<!-- text/plain, flowed -->\n" "<table cellspacing=0 cellpadding=10 width=\"100%\"><tr><td>\n<tt>\n"); @@ -1269,7 +1269,7 @@ handle_text_plain_flowed (char *buf, MailDisplay *md, GtkHTML *html, GtkHTMLStre eol = strchr (line, '\n'); if (eol) *eol = '\0'; - + quoting = 0; for (p = line; *p == '>'; p++) quoting++; @@ -1319,16 +1319,17 @@ handle_text_plain_flowed (char *buf, MailDisplay *md, GtkHTML *html, GtkHTMLStre mail_html_write (html, stream, text); g_free (text); - if (p[len - 1] != ' ' || !strcmp (p, "-- ")) + if ((len > 0 && p[len - 1]) != ' ' || !strcmp (p, "-- ")) br_pending++; if (!eol) break; } + g_free (buf); - + mail_html_write (html, stream, "</tt>\n</td></tr></table>\n"); - + return TRUE; } |