seed r361 - trunk/libseed
- From: racarr svn gnome org
- To: svn-commits-list gnome org
- Subject: seed r361 - trunk/libseed
- Date: Fri, 28 Nov 2008 05:17:26 +0000 (UTC)
Author: racarr
Date: Fri Nov 28 05:17:26 2008
New Revision: 361
URL: http://svn.gnome.org/viewvc/seed?rev=361&view=rev
Log:
Non floating objects from fake constructors (Clutter.EffectTemplate._new) were getting an extra reference.
Modified:
trunk/libseed/seed-engine.c
Modified: trunk/libseed/seed-engine.c
==============================================================================
--- trunk/libseed/seed-engine.c (original)
+++ trunk/libseed/seed-engine.c Fri Nov 28 05:17:26 2008
@@ -31,8 +31,6 @@
JSContextGroupRef context_group;
-GParamSpec **global_prop_cache;
-
gchar *glib_message = 0;
guint seed_debug_flags = 0; /* global seed debug flag */
@@ -356,6 +354,7 @@
{
GIBaseInfo *interface;
GIInfoType type;
+ gboolean sunk = TRUE;
if (tag == GI_TYPE_TAG_INTERFACE)
{
@@ -375,13 +374,20 @@
interface_type == GI_INFO_TYPE_INTERFACE)
{
if (G_IS_OBJECT(retval.v_pointer))
+ {
+ sunk =
+ g_object_is_floating(G_OBJECT(retval.v_pointer));
g_object_ref_sink(G_OBJECT(retval.v_pointer));
+ }
}
}
}
retval_ref =
seed_gi_argument_make_js(ctx, &retval, type_info, exception);
+
+ if (!sunk)
+ g_object_unref(G_OBJECT(retval.v_pointer));
seed_gi_release_arg(
g_callable_info_get_caller_owns((GICallableInfo*) info),
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]