diff options
author | Anders Carlsson <andersca@codefactory.se> | 2003-01-31 13:36:36 +0000 |
---|---|---|
committer | Anders Carlsson <andersca@codefactory.se> | 2003-01-31 13:36:36 +0000 |
commit | 8ab042b9571dda44a5afcfe50e0d29dc9b58ecae (patch) | |
tree | 491e1fd75d970f09e6b939d17aa293432a603dd2 /dbus/dbus-message.c | |
parent | 482dab2076282ef1195564fa60dd25c1ffb77682 (diff) |
2003-01-31 Anders Carlsson <andersca@codefactory.se>
* dbus/dbus-address.c: (dbus_address_entry_free):
Free key and value lists.
* dbus/dbus-internals.c: (_dbus_type_to_string):
Add the types we didn't have.
* dbus/dbus-marshal.c: (_dbus_marshal_get_arg_end_pos),
(_dbus_marshal_validate_arg):
Add NIL types.
* dbus/dbus-message.c: (dbus_message_set_sender):
Remove todo about being able to set sender to NULL.
(dbus_message_set_is_error_reply),
(dbus_message_get_is_error_reply):
* dbus/dbus-message.h:
New functions.
* dbus/dbus-protocol.h:
Add error reply flag.
* test/data/valid-messages/opposite-endian.message:
Add NIL type to test.
Diffstat (limited to 'dbus/dbus-message.c')
-rw-r--r-- | dbus/dbus-message.c | 29 |
1 files changed, 27 insertions, 2 deletions
diff --git a/dbus/dbus-message.c b/dbus/dbus-message.c index 3d0de77f..be76caa6 100644 --- a/dbus/dbus-message.c +++ b/dbus/dbus-message.c @@ -1612,8 +1612,6 @@ dbus_message_iter_get_string_array (DBusMessageIter *iter, /** * Sets the message sender. * - * @todo implement #NULL sender to unset - * * @param message the message * @param sender the sender * @returns #FALSE if not enough memory @@ -1637,6 +1635,33 @@ dbus_message_set_sender (DBusMessage *message, } } +void +dbus_message_set_is_error_reply (DBusMessage *message, + dbus_bool_t is_error_reply) +{ + char *header; + + _dbus_assert (!message->locked); + + _dbus_string_get_data_len (&message->header, &header, 1, 1); + + if (is_error_reply) + *header |= DBUS_HEADER_FLAG_IS_ERROR_REPLY; + else + *header &= ~DBUS_HEADER_FLAG_IS_ERROR_REPLY; + +} + +dbus_bool_t +dbus_message_get_is_error_reply (DBusMessage *message) +{ + const char *header; + + _dbus_string_get_data_len (&message->header, &header, 1, 1); + + return (*header & DBUS_HEADER_FLAG_IS_ERROR_REPLY) != 0; +} + /** * Gets the service which originated this message, * or #NULL if unknown or inapplicable. |