webrtc: Fix double free in webrtc-recvonly-h264 demo

The "message" signal does not transfer ownership of the GBytes passed
to it so calling g_bytes_unref() on it is incorrect.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3272>
This commit is contained in:
Patrick Griffis 2022-10-24 12:21:47 -05:00 committed by Tim-Philipp Müller
parent d186e19568
commit c560ec47fb

View file

@ -490,7 +490,7 @@ soup_websocket_message_cb (G_GNUC_UNUSED SoupWebsocketConnection * connection,
SoupWebsocketDataType data_type, GBytes * message, gpointer user_data)
{
gsize size;
gchar *data;
const gchar *data;
gchar *data_string;
const gchar *type_string;
JsonNode *root_json;
@ -502,14 +502,12 @@ soup_websocket_message_cb (G_GNUC_UNUSED SoupWebsocketConnection * connection,
switch (data_type) {
case SOUP_WEBSOCKET_DATA_BINARY:
g_error ("Received unknown binary message, ignoring\n");
g_bytes_unref (message);
return;
case SOUP_WEBSOCKET_DATA_TEXT:
data = g_bytes_unref_to_data (message, &size);
data = g_bytes_get_data (message, &size);
/* Convert to NULL-terminated string */
data_string = g_strndup (data, size);
g_free (data);
break;
default: