[libgit2-glib] revision-walker: Take a reference on repository property
- From: Florian MĂźllner <fmuellner src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [libgit2-glib] revision-walker: Take a reference on repository property
- Date: Mon, 19 Feb 2018 23:05:53 +0000 (UTC)
commit b7fc9ebb0a1d401aea63c00ce7463fc681ba8300
Author: Florian MĂźllner <fmuellner gnome org>
Date: Mon Feb 19 01:22:04 2018 +0100
revision-walker: Take a reference on repository property
GObjects should almost always own a reference to ref-counted properties;
there's no apparent reason to make an exception here.
https://bugzilla.gnome.org/show_bug.cgi?id=793581
libgit2-glib/ggit-revision-walker.c | 16 +++++++++++++++-
1 files changed, 15 insertions(+), 1 deletions(-)
---
diff --git a/libgit2-glib/ggit-revision-walker.c b/libgit2-glib/ggit-revision-walker.c
index 034b67d..0cbf50e 100644
--- a/libgit2-glib/ggit-revision-walker.c
+++ b/libgit2-glib/ggit-revision-walker.c
@@ -88,7 +88,7 @@ ggit_revision_walker_set_property (GObject *object,
switch (prop_id)
{
case PROP_REPOSITORY:
- priv->repository = g_value_get_object (value);
+ priv->repository = g_value_dup_object (value);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
@@ -97,12 +97,26 @@ ggit_revision_walker_set_property (GObject *object,
}
static void
+ggit_revision_walker_dispose (GObject *object)
+{
+ GgitRevisionWalker *walker = GGIT_REVISION_WALKER (object);
+ GgitRevisionWalkerPrivate *priv;
+
+ priv = ggit_revision_walker_get_instance_private (walker);
+
+ g_clear_object (&priv->repository);
+
+ G_OBJECT_CLASS (ggit_revision_walker_parent_class)->dispose (object);
+}
+
+static void
ggit_revision_walker_class_init (GgitRevisionWalkerClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
object_class->get_property = ggit_revision_walker_get_property;
object_class->set_property = ggit_revision_walker_set_property;
+ object_class->dispose = ggit_revision_walker_dispose;
g_object_class_install_property (object_class,
PROP_REPOSITORY,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]