[evolution-patches] 300881, mail, crash adding signature
- From: Not Zed <notzed ximian com>
- To: evolution-patches lists ximian com
- Subject: [evolution-patches] 300881, mail, crash adding signature
- Date: Thu, 04 Aug 2005 11:56:09 +0800
since the setup callback can be called multiple times, and the signature
data is static, we could connect multiple times. dont.
Index: mail/ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution/mail/ChangeLog,v
retrieving revision 1.3673
diff -u -p -r1.3673 ChangeLog
--- mail/ChangeLog 4 Aug 2005 02:53:34 -0000 1.3673
+++ mail/ChangeLog 4 Aug 2005 03:56:40 -0000
@@ -1,3 +1,10 @@
+2005-08-04 Not Zed <NotZed Ximian com>
+
+ ** See bug #300881.
+
+ * em-account-editor.c (emae_setup_signatures): don't add the
+ signature listener if we've already added it.
+
2005-08-03 Not Zed <NotZed Ximian com>
* em-folder-browser.c (emfb_set_folder): not here.
Index: mail/em-account-editor.c
===================================================================
RCS file: /cvs/gnome/evolution/mail/em-account-editor.c,v
retrieving revision 1.30
diff -u -p -r1.30 em-account-editor.c
--- mail/em-account-editor.c 29 Jul 2005 06:16:15 -0000 1.30
+++ mail/em-account-editor.c 4 Aug 2005 03:56:41 -0000
@@ -684,9 +684,11 @@ emae_setup_signatures(EMAccountEditor *e
signatures = mail_config_get_signatures ();
- p->sig_added_id = g_signal_connect(signatures, "signature-added", G_CALLBACK(emae_signature_added), emae);
- p->sig_removed_id = g_signal_connect(signatures, "signature-removed", G_CALLBACK(emae_signature_removed), emae);
- p->sig_changed_id = g_signal_connect(signatures, "signature-changed", G_CALLBACK(emae_signature_changed), emae);
+ if (p->sig_added_id == 0) {
+ p->sig_added_id = g_signal_connect(signatures, "signature-added", G_CALLBACK(emae_signature_added), emae);
+ p->sig_removed_id = g_signal_connect(signatures, "signature-removed", G_CALLBACK(emae_signature_removed), emae);
+ p->sig_changed_id = g_signal_connect(signatures, "signature-changed", G_CALLBACK(emae_signature_changed), emae);
+ }
/* we need to count the 'none' entry before using the index */
i = 1;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]