rtmp2/client: Make sure 'reason' is not NULL
authorJan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
Wed, 1 Dec 2021 14:46:42 +0000 (15:46 +0100)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Mon, 7 Nov 2022 12:31:07 +0000 (12:31 +0000)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1403>

subprojects/gst-plugins-bad/gst/rtmp2/rtmp/rtmpclient.c

index 7fba3a7..cbbf627 100644 (file)
@@ -822,6 +822,14 @@ send_connect_done (const gchar * command_name, GPtrArray * args,
     {
       const gchar *reason = gst_uri_get_query_value (query, "reason");
 
+      if (!reason) {
+        g_task_return_new_error (task, G_IO_ERROR, G_IO_ERROR_PERMISSION_DENIED,
+            "authentication failed; no reason: %s", desc);
+        g_object_unref (task);
+        gst_uri_unref (query);
+        return;
+      }
+
       if (g_str_equal (reason, "authfailed")) {
         g_task_return_new_error (task, G_IO_ERROR, G_IO_ERROR_PERMISSION_DENIED,
             "authentication failed! wrong credentials?");
@@ -832,7 +840,7 @@ send_connect_done (const gchar * command_name, GPtrArray * args,
 
       if (!g_str_equal (reason, "needauth")) {
         g_task_return_new_error (task, G_IO_ERROR, G_IO_ERROR_PERMISSION_DENIED,
-            "unhandled rejection reason '%s'", reason ? reason : "");
+            "unhandled rejection reason '%s'", reason);
         g_object_unref (task);
         gst_uri_unref (query);
         return;