summaryrefslogtreecommitdiff
path: root/dbus/dbus-message.c
diff options
context:
space:
mode:
Diffstat (limited to 'dbus/dbus-message.c')
-rw-r--r--dbus/dbus-message.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/dbus/dbus-message.c b/dbus/dbus-message.c
index a3354f5d..9a42dbe1 100644
--- a/dbus/dbus-message.c
+++ b/dbus/dbus-message.c
@@ -2878,8 +2878,8 @@ dbus_message_iter_append_fixed_array (DBusMessageIter *iter,
}
/**
- * Appends a container-typed value to the message; you are required to
- * append the contents of the container using the returned
+ * Appends a container-typed value to the message. On success, you are
+ * required to append the contents of the container using the returned
* sub-iterator, and then call
* dbus_message_iter_close_container(). Container types are for
* example struct, variant, and array. For variants, the
@@ -2892,6 +2892,10 @@ dbus_message_iter_append_fixed_array (DBusMessageIter *iter,
* @todo If this fails due to lack of memory, the message is hosed and
* you have to start over building the whole message.
*
+ * If this function fails, the sub-iterator remains invalid, and must
+ * not be closed with dbus_message_iter_close_container() or abandoned
+ * with dbus_message_iter_abandon_container().
+ *
* @param iter the append iterator
* @param type the type of the value
* @param contained_signature the type of container contents
@@ -2984,6 +2988,10 @@ dbus_message_iter_open_container (DBusMessageIter *iter,
* container is written, and may free resources created by
* dbus_message_iter_open_container().
*
+ * Even if this function fails due to lack of memory, the sub-iterator sub
+ * has been closed and invalidated. It must not be closed again with this
+ * function, or abandoned with dbus_message_iter_abandon_container().
+ *
* @todo If this fails due to lack of memory, the message is hosed and
* you have to start over building the whole message.
*