diff options
-rw-r--r-- | src/mm-port-probe.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/mm-port-probe.c b/src/mm-port-probe.c index 656f0434..425f3dfb 100644 --- a/src/mm-port-probe.c +++ b/src/mm-port-probe.c @@ -1050,8 +1050,6 @@ finalize (GObject *object) g_free (self->priv->name); g_free (self->priv->physdev_path); g_free (self->priv->driver); - g_object_unref (self->priv->port); - g_free (self->priv->vendor); g_free (self->priv->product); @@ -1059,6 +1057,16 @@ finalize (GObject *object) } static void +dispose (GObject *object) +{ + MMPortProbe *self = MM_PORT_PROBE (object); + + g_clear_object (&self->priv->port); + + G_OBJECT_CLASS (mm_port_probe_parent_class)->dispose (object); +} + +static void mm_port_probe_class_init (MMPortProbeClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); @@ -1067,4 +1075,5 @@ mm_port_probe_class_init (MMPortProbeClass *klass) /* Virtual methods */ object_class->finalize = finalize; + object_class->dispose = dispose; } |