aboutsummaryrefslogtreecommitdiffstats
path: root/mail
diff options
context:
space:
mode:
authorNot Zed <NotZed@Ximian.com>2003-04-01 14:02:21 +0800
committerMichael Zucci <zucchi@src.gnome.org>2003-04-01 14:02:21 +0800
commit5f2900575a02a587203c98617583537708adee8f (patch)
treee406054d69dbae083fcb7f733bfa69462c86a83b /mail
parent35561cc3d67de5a8fd9c4a2c005dcaefe84a9153 (diff)
downloadgsoc2013-evolution-5f2900575a02a587203c98617583537708adee8f.tar
gsoc2013-evolution-5f2900575a02a587203c98617583537708adee8f.tar.gz
gsoc2013-evolution-5f2900575a02a587203c98617583537708adee8f.tar.bz2
gsoc2013-evolution-5f2900575a02a587203c98617583537708adee8f.tar.lz
gsoc2013-evolution-5f2900575a02a587203c98617583537708adee8f.tar.xz
gsoc2013-evolution-5f2900575a02a587203c98617583537708adee8f.tar.zst
gsoc2013-evolution-5f2900575a02a587203c98617583537708adee8f.zip
if we're called and the idle handler is set, remove it, so we dont go and
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. svn path=/trunk/; revision=20609
Diffstat (limited to 'mail')
-rw-r--r--mail/ChangeLog6
-rw-r--r--mail/mail-display.c8
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);
}