aboutsummaryrefslogtreecommitdiffstats
path: root/src/empathy.c
diff options
context:
space:
mode:
authorXavier Claessens <xclaesse@gmail.com>2009-03-08 23:36:04 +0800
committerXavier Claessens <xclaesse@src.gnome.org>2009-03-08 23:36:04 +0800
commita2560e267c33c3dc26b22250afb2405c59e77aab (patch)
tree19489de99125ef9baa020e57c584141ff203e325 /src/empathy.c
parent62e4d2c8ed23a533b22b7102efc84a78c7d5250f (diff)
downloadgsoc2013-empathy-a2560e267c33c3dc26b22250afb2405c59e77aab.tar.gz
gsoc2013-empathy-a2560e267c33c3dc26b22250afb2405c59e77aab.tar.zst
gsoc2013-empathy-a2560e267c33c3dc26b22250afb2405c59e77aab.zip
Don't leak EmpathyFTManager object. Rebuild UI if it got destroyed.
From: Xavier Claessens <xclaesse@gmail.com> svn path=/trunk/; revision=2631
Diffstat (limited to 'src/empathy.c')
-rw-r--r--src/empathy.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/empathy.c b/src/empathy.c
index 7ceeb69b5..3d19bce5a 100644
--- a/src/empathy.c
+++ b/src/empathy.c
@@ -125,6 +125,7 @@ dispatch_cb (EmpathyDispatcher *dispatcher,
empathy_dispatch_operation_get_channel_wrapper (operation));
empathy_ft_manager_add_tp_file (ft_manager, tp_file);
empathy_dispatch_operation_claim (operation);
+ g_object_unref (ft_manager);
}
}
@@ -413,6 +414,7 @@ main (int argc, char *argv[])
EmpathyDispatcher *dispatcher;
EmpathyLogManager *log_manager;
EmpathyChatroomManager *chatroom_manager;
+ EmpathyFTManager *ft_manager;
EmpathyCallFactory *call_factory;
GtkWidget *window;
MissionControl *mc;
@@ -555,6 +557,8 @@ main (int argc, char *argv[])
chatroom_manager = empathy_chatroom_manager_dup_singleton (NULL);
empathy_chatroom_manager_observe (chatroom_manager, dispatcher);
+ ft_manager = empathy_ft_manager_dup_singleton ();
+
notify_init (_(PACKAGE_NAME));
/* Create the call factory */
call_factory = empathy_call_factory_initialise ();
@@ -571,6 +575,7 @@ main (int argc, char *argv[])
g_object_unref (log_manager);
g_object_unref (dispatcher);
g_object_unref (chatroom_manager);
+ g_object_unref (ft_manager);
notify_uninit ();