[telepathy-mission-control/master] McdDispatcher: delay ChannelLost and Finished until all approvers have returned
Simon McVittie
simon.mcvittie at collabora.co.uk
Mon Apr 20 07:14:06 PDT 2009
---
src/mcd-dispatcher.c | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/src/mcd-dispatcher.c b/src/mcd-dispatcher.c
index 6a05cb1..34fe49f 100644
--- a/src/mcd-dispatcher.c
+++ b/src/mcd-dispatcher.c
@@ -1391,6 +1391,11 @@ add_dispatch_operation_cb (TpProxy *proxy, const GError *error,
if (context->approvers_invoked == 0)
mcd_dispatcher_context_release_client_lock (context);
}
+
+ if (context->operation)
+ {
+ _mcd_dispatch_operation_unblock_finished (context->operation);
+ }
}
static void
@@ -1440,6 +1445,8 @@ mcd_dispatcher_run_approvers (McdDispatcherContext *context)
mcd_dispatch_operation_get_properties (context->operation);
context->approvers_invoked++;
+ _mcd_dispatch_operation_block_finished (context->operation);
+
mcd_dispatcher_context_ref (context);
mc_cli_client_approver_call_add_dispatch_operation (client->proxy, -1,
dispatch_operation, properties,
--
1.5.6.5
More information about the telepathy-commits
mailing list