aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2009-07-18 04:51:53 +0800
committerMatthew Barnes <mbarnes@redhat.com>2009-07-18 04:51:53 +0800
commitbecd78e26ed61ff386d0b229f85bdcf590c28e94 (patch)
tree2b3866b3d170b8fe82bc53ba8bfc2ca22bfa2989
parent787e1f93d51f647457d874b3be1b1681d884a401 (diff)
downloadgsoc2013-evolution-becd78e26ed61ff386d0b229f85bdcf590c28e94.tar.gz
gsoc2013-evolution-becd78e26ed61ff386d0b229f85bdcf590c28e94.tar.zst
gsoc2013-evolution-becd78e26ed61ff386d0b229f85bdcf590c28e94.zip
Fix an activity cancellation crasher.
-rw-r--r--mail/mail-mt.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/mail/mail-mt.c b/mail/mail-mt.c
index 490f54f8e5..eb14674117 100644
--- a/mail/mail-mt.c
+++ b/mail/mail-mt.c
@@ -938,6 +938,13 @@ struct _op_status_msg {
};
static void
+op_cancelled_cb (EActivity *activity,
+ gpointer user_data)
+{
+ mail_msg_cancel (GPOINTER_TO_UINT (user_data));
+}
+
+static void
op_status_exec (struct _op_status_msg *m)
{
EShell *shell;
@@ -1000,10 +1007,10 @@ op_status_exec (struct _op_status_msg *m)
e_activity_set_percent (data->activity, 0.0);
e_shell_backend_add_activity (shell_backend, data->activity);
- g_signal_connect_swapped (
+ g_signal_connect (
data->activity, "cancelled",
- G_CALLBACK (camel_operation_cancel),
- msg->cancel);
+ G_CALLBACK (op_cancelled_cb),
+ GUINT_TO_POINTER (msg->seq));
g_free (what);
MAIL_MT_LOCK (mail_msg_lock);