[telepathy-mission-control/master] Don't ref context (released by mcd_dispatcher_context_handler_done) unless we're actually going to call HandleChannels
Simon McVittie
simon.mcvittie at collabora.co.uk
Thu May 28 07:11:17 PDT 2009
---
src/mcd-dispatcher.c | 9 ++++++---
1 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/src/mcd-dispatcher.c b/src/mcd-dispatcher.c
index 8340116..6eb1642 100644
--- a/src/mcd-dispatcher.c
+++ b/src/mcd-dispatcher.c
@@ -948,9 +948,6 @@ mcd_dispatcher_run_handlers (McdDispatcherContext *context)
GList *channels, *list;
gchar **iter;
- /* released by mcd_dispatcher_context_handler_done */
- mcd_dispatcher_context_ref (context, "CTXREF09");
-
sp_timestamp ("run handlers");
mcd_dispatcher_context_ref (context, "CTXREF04");
@@ -980,6 +977,9 @@ mcd_dispatcher_run_handlers (McdDispatcherContext *context)
* the right choice. */
if (handler != NULL)
{
+ /* released by mcd_dispatcher_context_handler_done */
+ mcd_dispatcher_context_ref (context, "CTXREF09");
+
mcd_dispatcher_handle_channels (context, channels, handler);
goto finally;
}
@@ -1003,6 +1003,9 @@ mcd_dispatcher_run_handlers (McdDispatcherContext *context)
if (handler != NULL)
{
+ /* released by mcd_dispatcher_context_handler_done */
+ mcd_dispatcher_context_ref (context, "CTXREF09");
+
mcd_dispatcher_handle_channels (context, channels, handler);
goto finally;
}
--
1.5.6.5
More information about the telepathy-commits
mailing list