X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=atk-adaptor%2Fadaptors%2Fhypertext-adaptor.c;h=dbe1ffdb52872a53195b07c50ffc519b5fd1b0ce;hb=3e6cf48cd7a24303324f10039b63bd916a8aa49e;hp=0bb4060e7f20b6cea21c8d4261cea6ca3e8c9fa7;hpb=5713a8e46559b6de9fbf5fc3e073d0d482d8c7e1;p=platform%2Fcore%2Fuifw%2Fat-spi2-atk.git diff --git a/atk-adaptor/adaptors/hypertext-adaptor.c b/atk-adaptor/adaptors/hypertext-adaptor.c index 0bb4060..dbe1ffd 100644 --- a/atk-adaptor/adaptors/hypertext-adaptor.c +++ b/atk-adaptor/adaptors/hypertext-adaptor.c @@ -28,6 +28,8 @@ #include "common/spi-dbus.h" #include "object.h" +#include "introspection.h" + static DBusMessage * impl_GetNLinks (DBusConnection * bus, DBusMessage * message, void *user_data) { @@ -64,7 +66,10 @@ impl_GetLink (DBusConnection * bus, DBusMessage * message, void *user_data) return droute_invalid_arguments_error (message); } link = atk_hypertext_get_link (hypertext, linkIndex); - return spi_object_return_reference (message, ATK_OBJECT (hypertext)); + /*The above line doesn't ref the link, and the next call is going to unref*/ + if (link) + g_object_ref (link); + return spi_hyperlink_return_reference (message, link); } static DBusMessage * @@ -106,5 +111,5 @@ void spi_initialize_hypertext (DRoutePath * path) { droute_path_add_interface (path, - SPI_DBUS_INTERFACE_HYPERTEXT, methods, NULL); + SPI_DBUS_INTERFACE_HYPERTEXT, spi_org_a11y_atspi_Hypertext, methods, NULL); };