sdpmessage: Annotate SDP message parameters for parse_uri() and parse_buffer() correctly

They are not actually `out` parameters but must be allocated and
initialized to a valid SDP message by the caller. Just allocating them
without initialization will cause memory corruptions because the
functions will try to clear/append to the existing SDP message.

As such they should be just marked as `transfer none`.

Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1605

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3484>
This commit is contained in:
Sebastian Dröge 2022-11-29 14:02:55 +02:00
parent a3b352c99d
commit 12aa3925d0

View file

@ -620,7 +620,7 @@ hex_to_int (gchar c)
/**
* gst_sdp_message_parse_uri:
* @uri: the start of the uri
* @msg: (out caller-allocates): the result #GstSDPMessage
* @msg: (transfer none): the result #GstSDPMessage
*
* Parse the null-terminated @uri and store the result in @msg.
*
@ -3121,7 +3121,7 @@ gst_sdp_parse_line (SDPContext * c, gchar type, gchar * buffer)
* gst_sdp_message_parse_buffer:
* @data: (array length=size): the start of the buffer
* @size: the size of the buffer
* @msg: (out caller-allocates): the result #GstSDPMessage
* @msg: (transfer none): the result #GstSDPMessage
*
* Parse the contents of @size bytes pointed to by @data and store the result in
* @msg.