1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
int
my_com_netsplit_Nih_Test_property_get (NihDBusObject * object,
NihDBusMessage * message,
DBusMessageIter *iter)
{
DBusMessageIter variter;
char * value;
nih_assert (object != NULL);
nih_assert (message != NULL);
nih_assert (iter != NULL);
/* Call the handler function */
if (my_get_property (object->data, message, &value) < 0)
return -1;
/* Append a variant onto the message to contain the property value. */
if (! dbus_message_iter_open_container (iter, DBUS_TYPE_VARIANT, "s", &variter)) {
nih_error_raise_no_memory ();
return -1;
}
/* Marshal a char * onto the message */
if (! dbus_message_iter_append_basic (&variter, DBUS_TYPE_STRING, &value)) {
dbus_message_iter_abandon_container (iter, &variter);
nih_error_raise_no_memory ();
return -1;
}
/* Finish the variant */
if (! dbus_message_iter_close_container (iter, &variter)) {
nih_error_raise_no_memory ();
return -1;
}
return 0;
}
|