projects
/
platform
/
core
/
uifw
/
at-spi2-atk.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Have DoAction send the reply message *before* invoking atk
[platform/core/uifw/at-spi2-atk.git]
/
atk-adaptor
/
adaptors
/
action-adaptor.c
diff --git
a/atk-adaptor/adaptors/action-adaptor.c
b/atk-adaptor/adaptors/action-adaptor.c
index
08e3a2c
..
fd04faa
100644
(file)
--- a/
atk-adaptor/adaptors/action-adaptor.c
+++ b/
atk-adaptor/adaptors/action-adaptor.c
@@
-180,7
+180,7
@@
impl_DoAction (DBusConnection * bus, DBusMessage * message, void *user_data)
AtkAction *action = (AtkAction *) user_data;
DBusError error;
dbus_int32_t index;
AtkAction *action = (AtkAction *) user_data;
DBusError error;
dbus_int32_t index;
- dbus_bool_t rv;
+ dbus_bool_t rv
= TRUE
;
DBusMessage *reply;
g_return_val_if_fail (ATK_IS_ACTION (user_data),
DBusMessage *reply;
g_return_val_if_fail (ATK_IS_ACTION (user_data),
@@
-191,14
+191,16
@@
impl_DoAction (DBusConnection * bus, DBusMessage * message, void *user_data)
{
return droute_invalid_arguments_error (message);
}
{
return droute_invalid_arguments_error (message);
}
- rv = atk_action_do_action (action, index);
reply = dbus_message_new_method_return (message);
if (reply)
{
dbus_message_append_args (reply, DBUS_TYPE_BOOLEAN, &rv,
DBUS_TYPE_INVALID);
}
reply = dbus_message_new_method_return (message);
if (reply)
{
dbus_message_append_args (reply, DBUS_TYPE_BOOLEAN, &rv,
DBUS_TYPE_INVALID);
}
- return reply;
+ dbus_connection_send (bus, reply, NULL);
+ dbus_message_unref (reply);
+ atk_action_do_action (action, index);
+ return NULL;
}
DRouteMethod methods[] = {
}
DRouteMethod methods[] = {