webrtc-unidirectional: Avoid critical
authorOlivier CrĂȘte <olivier.crete@collabora.com>
Tue, 3 Jan 2023 22:12:12 +0000 (17:12 -0500)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Wed, 4 Jan 2023 12:02:25 +0000 (12:02 +0000)
Don't unref the parameter passed to a signal, it's always owned by
the caller. Fixes a GLib critical.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3675>

subprojects/gst-examples/webrtc/sendonly/webrtc-unidirectional-h264.c

index 5d6ed25..1fedf84 100644 (file)
@@ -433,7 +433,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;
@@ -445,14 +445,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: