diff options
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/mail-notification/ChangeLog | 7 | ||||
-rw-r--r-- | plugins/mail-notification/mail-notification.c | 14 |
2 files changed, 15 insertions, 6 deletions
diff --git a/plugins/mail-notification/ChangeLog b/plugins/mail-notification/ChangeLog index 81039caa5c..9854328ee7 100644 --- a/plugins/mail-notification/ChangeLog +++ b/plugins/mail-notification/ChangeLog @@ -1,3 +1,10 @@ +2008-09-15 Milan Crha <mcrha@redhat.com> + + ** Fix for bug #514299 + + * mail-notification.c: (new_notify_status): + Connect to signals only once, when creating new status icon. + 2008-08-12 Bharath Acharya <abharath@novell.com> * Makefile.am: Have a check for OS_WIN32 and handle the schema data diff --git a/plugins/mail-notification/mail-notification.c b/plugins/mail-notification/mail-notification.c index 9826f5a06d..b568b0061d 100644 --- a/plugins/mail-notification/mail-notification.c +++ b/plugins/mail-notification/mail-notification.c @@ -493,13 +493,15 @@ new_notify_status (EMEventTargetFolder *t) g_free (msg); - #ifdef HAVE_LIBNOTIFY - g_signal_connect (G_OBJECT (status_icon), "activate", G_CALLBACK (icon_activated), notify); - #else - g_signal_connect (G_OBJECT (status_icon), "activate", G_CALLBACK (icon_activated), NULL); - #endif + if (new_icon) { + #ifdef HAVE_LIBNOTIFY + g_signal_connect (G_OBJECT (status_icon), "activate", G_CALLBACK (icon_activated), notify); + #else + g_signal_connect (G_OBJECT (status_icon), "activate", G_CALLBACK (icon_activated), NULL); + #endif - g_signal_connect (G_OBJECT (status_icon), "popup-menu", G_CALLBACK (popup_menu_status), NULL); + g_signal_connect (G_OBJECT (status_icon), "popup-menu", G_CALLBACK (popup_menu_status), NULL); + } } static void |