diff options
-rw-r--r-- | mail/ChangeLog | 6 | ||||
-rw-r--r-- | mail/mail-display.c | 8 |
2 files changed, 13 insertions, 1 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index 7015b4f4ea..b6638c3e51 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,9 @@ +2003-04-01 Not Zed <NotZed@Ximian.com> + + * mail-display.c (mail_display_redisplay): if we're called and the + idle handler is set, remove it, so we dont go and redisplay it + again. Fixes #40522. + 2003-03-31 Jeffrey Stedfast <fejj@ximian.com> * mail-session.c: Properly init message_list. Fixed a type-o that diff --git a/mail/mail-display.c b/mail/mail-display.c index 99ba6895df..657275df98 100644 --- a/mail/mail-display.c +++ b/mail/mail-display.c @@ -1925,6 +1925,12 @@ mail_display_redisplay (MailDisplay *md, gboolean reset_scroll) { if (md->destroyed) return; + + /* we're in effect stealing the queued redisplay */ + if (md->idle_id) { + g_source_remove(md->idle_id); + md->idle_id = 0; + } fetch_cancel(md); @@ -2000,7 +2006,7 @@ mail_display_set_charset (MailDisplay *mail_display, const char *charset) { g_free (mail_display->charset); mail_display->charset = g_strdup (charset); - + mail_display_queue_redisplay (mail_display); } |