X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fat-spi2-atk.git;a=blobdiff_plain;f=atk-adaptor%2Fobject.c;h=7ad7f92635bacb23f868da16bf96fabeab6f61bd;hp=2247467dd1c85d33f7a03ce2473694ffd96abaa9;hb=73469041fcbb7b5e81d4ca3877f6614795a69e50;hpb=df62d3656e0a286c85f029c82bde4f02e3ad6bb3 diff --git a/atk-adaptor/object.c b/atk-adaptor/object.c index 2247467..7ad7f92 100644 --- a/atk-adaptor/object.c +++ b/atk-adaptor/object.c @@ -55,8 +55,8 @@ * This function will simply look for all the accessibles that the cache object * has not found and assume that they need to be leased. */ -static void -maybe_lease (GObject *obj) +void +spi_object_lease_if_needed (GObject *obj) { if (!spi_cache_in (spi_global_cache, obj)) { @@ -101,7 +101,7 @@ spi_object_append_reference (DBusMessageIter * iter, AtkObject * obj) return; } - maybe_lease (G_OBJECT (obj)); + spi_object_lease_if_needed (G_OBJECT (obj)); name = dbus_bus_get_unique_name (spi_global_app_data->bus); path = spi_register_object_to_path (spi_global_register, G_OBJECT (obj)); @@ -132,7 +132,7 @@ spi_hyperlink_append_reference (DBusMessageIter * iter, AtkHyperlink * obj) return; } - maybe_lease (G_OBJECT (obj)); + spi_object_lease_if_needed (G_OBJECT (obj)); name = dbus_bus_get_unique_name (spi_global_app_data->bus); path = spi_register_object_to_path (spi_global_register, G_OBJECT (obj)); @@ -175,7 +175,7 @@ spi_object_append_desktop_reference (DBusMessageIter * iter) } DBusMessage * -spi_object_return_reference (DBusMessage * msg, AtkObject * obj) +spi_object_return_reference (DBusMessage * msg, AtkObject * obj, gboolean unref) { DBusMessage *reply; @@ -186,7 +186,7 @@ spi_object_return_reference (DBusMessage * msg, AtkObject * obj) dbus_message_iter_init_append (reply, &iter); spi_object_append_reference (&iter, obj); } - if (obj) + if (unref && obj) g_object_unref (G_OBJECT (obj)); return reply;