- if (total_attributes)
- {
- for (i = 0; i < n_attributes; ++i)
- {
- attr = g_slist_nth_data (attributes, i);
- retval[i] = g_strconcat (attr->name, ":", attr->value, NULL);
- }
-
- for (j = 0; j < n_default_attributes; ++i, ++j)
- {
- attr = g_slist_nth_data (default_attributes, j);
- retval[i] = g_strconcat (attr->name, ":", attr->value, NULL);
- }
-
- atk_attribute_set_free (attributes);
- if (default_attributes)
- atk_attribute_set_free (default_attributes);
- }
- reply = dbus_message_new_method_return (message);
- if (reply)
- {
- dbus_message_append_args (reply, DBUS_TYPE_INT32, &startOffset,
- DBUS_TYPE_INT32, &endOffset, DBUS_TYPE_ARRAY,
- DBUS_TYPE_STRING, &retval, total_attributes,
- DBUS_TYPE_INVALID);
- }
- for (i = 0; i < total_attributes; i++)
- g_free (retval[i]);
- g_free (retval);