diff options
author | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2010-12-16 17:48:52 +0800 |
---|---|---|
committer | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2011-02-16 19:42:33 +0800 |
commit | 4363d4c0d778b924b12f294636ca108a15d93aec (patch) | |
tree | 1866c1b685635af706167681acddf7cf36fbf724 /libempathy | |
parent | 5f504abee583ca0e8ec6721a5d2e305b59003d04 (diff) | |
download | gsoc2013-empathy-4363d4c0d778b924b12f294636ca108a15d93aec.tar gsoc2013-empathy-4363d4c0d778b924b12f294636ca108a15d93aec.tar.gz gsoc2013-empathy-4363d4c0d778b924b12f294636ca108a15d93aec.tar.bz2 gsoc2013-empathy-4363d4c0d778b924b12f294636ca108a15d93aec.tar.lz gsoc2013-empathy-4363d4c0d778b924b12f294636ca108a15d93aec.tar.xz gsoc2013-empathy-4363d4c0d778b924b12f294636ca108a15d93aec.tar.zst gsoc2013-empathy-4363d4c0d778b924b12f294636ca108a15d93aec.zip |
ft-factory: don't leak the handler
Diffstat (limited to 'libempathy')
-rw-r--r-- | libempathy/empathy-ft-factory.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/libempathy/empathy-ft-factory.c b/libempathy/empathy-ft-factory.c index 3443112a3..398474719 100644 --- a/libempathy/empathy-ft-factory.c +++ b/libempathy/empathy-ft-factory.c @@ -89,6 +89,17 @@ do_constructor (GType type, } static void +empathy_ft_factory_dispose (GObject *object) +{ + EmpathyFTFactory *self = (EmpathyFTFactory *) object; + EmpathyFTFactoryPriv *priv = GET_PRIV (self); + + tp_clear_object (&priv->handler); + + (G_OBJECT_CLASS (empathy_ft_factory_parent_class)->dispose) (object); +} + +static void empathy_ft_factory_class_init (EmpathyFTFactoryClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); @@ -96,6 +107,7 @@ empathy_ft_factory_class_init (EmpathyFTFactoryClass *klass) g_type_class_add_private (klass, sizeof (EmpathyFTFactoryPriv)); object_class->constructor = do_constructor; + object_class->dispose = empathy_ft_factory_dispose; /** * EmpathyFTFactory::new-ft-handler |