Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package gnome-remote-desktop for 
openSUSE:Factory checked in at 2023-04-24 22:31:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gnome-remote-desktop (Old)
 and      /work/SRC/openSUSE:Factory/.gnome-remote-desktop.new.1533 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gnome-remote-desktop"

Mon Apr 24 22:31:55 2023 rev:18 rq:1082545 version:44.1

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/gnome-remote-desktop/gnome-remote-desktop.changes    
    2023-03-24 15:19:52.878719072 +0100
+++ 
/work/SRC/openSUSE:Factory/.gnome-remote-desktop.new.1533/gnome-remote-desktop.changes
      2023-04-24 22:32:05.639824759 +0200
@@ -1,0 +2,12 @@
+Sat Apr 22 19:25:05 UTC 2023 - [email protected]
+
+- Update to version 44.1:
+  * daemon: Stop and clear rdp/vnc servers when start fails
+  * session-rdp:
+    - Prevent DVC reinitializations on session shutdown
+    - Fix small style issue
+  * rdp/rdpgfx: Use correct GMainContext for protocol reset source
+  * clipboard-rdp: Make warnings more explicit on content
+    conversion failure
+
+-------------------------------------------------------------------

Old:
----
  gnome-remote-desktop-44.0.obscpio

New:
----
  gnome-remote-desktop-44.1.obscpio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ gnome-remote-desktop.spec ++++++
--- /var/tmp/diff_new_pack.y60Bpk/_old  2023-04-24 22:32:06.511829942 +0200
+++ /var/tmp/diff_new_pack.y60Bpk/_new  2023-04-24 22:32:06.559830227 +0200
@@ -22,7 +22,7 @@
 %define gstreamer_version  1.10.0
 
 Name:           gnome-remote-desktop
-Version:        44.0
+Version:        44.1
 Release:        0
 Summary:        GNOME Remote Desktop screen sharing service
 License:        GPL-2.0-or-later

++++++ _service ++++++
--- /var/tmp/diff_new_pack.y60Bpk/_old  2023-04-24 22:32:06.651830774 +0200
+++ /var/tmp/diff_new_pack.y60Bpk/_new  2023-04-24 22:32:06.655830798 +0200
@@ -3,7 +3,7 @@
   <service name="obs_scm" mode="manual">
     <param 
name="url">https://gitlab.gnome.org/GNOME/gnome-remote-desktop.git</param>
     <param name="scm">git</param>
-    <param name="revision">refs/tags/44.0</param>
+    <param name="revision">refs/tags/44.1</param>
     <param name="versionformat">@PARENT_TAG@</param>
     <param name="changesgenerate">enable</param>
   </service>

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.y60Bpk/_old  2023-04-24 22:32:06.683830964 +0200
+++ /var/tmp/diff_new_pack.y60Bpk/_new  2023-04-24 22:32:06.687830988 +0200
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
                 <param 
name="url">https://gitlab.gnome.org/GNOME/gnome-remote-desktop.git</param>
-              <param 
name="changesrevision">71d82c8604fc2b5142bd66af77259d5b2f2504fa</param></service></servicedata>
+              <param 
name="changesrevision">66e0fa21c87f82d7aaf71846dc408fb832d43146</param></service></servicedata>
 (No newline at EOF)
 

++++++ gnome-remote-desktop-44.0.obscpio -> gnome-remote-desktop-44.1.obscpio 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gnome-remote-desktop-44.0/meson.build 
new/gnome-remote-desktop-44.1/meson.build
--- old/gnome-remote-desktop-44.0/meson.build   2023-03-18 18:59:04.000000000 
+0100
+++ new/gnome-remote-desktop-44.1/meson.build   2023-04-22 17:45:46.000000000 
+0200
@@ -1,5 +1,5 @@
 project('gnome-remote-desktop', 'c',
-        version: '44.0',
+        version: '44.1',
         meson_version: '>= 0.57.0',
         default_options: ['warning_level=1',
                           'buildtype=debugoptimized'])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gnome-remote-desktop-44.0/src/grd-clipboard-rdp.c 
new/gnome-remote-desktop-44.1/src/grd-clipboard-rdp.c
--- old/gnome-remote-desktop-44.0/src/grd-clipboard-rdp.c       2023-03-18 
18:59:04.000000000 +0100
+++ new/gnome-remote-desktop-44.1/src/grd-clipboard-rdp.c       2023-04-22 
17:45:46.000000000 +0200
@@ -823,7 +823,12 @@
 
           success = ClipboardSetData (clipboard_rdp->system,
                                       src_format_id, src_data, src_size);
-          if (success)
+          if (!success)
+            {
+              g_warning ("[RDP.CLIPRDR] Converting clipboard content failed: "
+                         "Failed to set data to convert");
+            }
+          else
             {
               dst_data = ClipboardGetData (clipboard_rdp->system,
                                            dst_format_id, &dst_size);
@@ -851,10 +856,10 @@
                     entry->has_file_list = TRUE;
                 }
             }
-          if (!success || !dst_data)
+          if (!dst_data)
             {
               g_warning ("[RDP.CLIPRDR] Converting clipboard content for "
-                         "client failed");
+                         "client failed: Failed to get converted data");
             }
         }
       else
@@ -1822,7 +1827,8 @@
                               src_format_id, src_data, src_size);
   if (!success)
     {
-      g_warning ("[RDP.CLIPRDR] Converting clipboard content failed");
+      g_warning ("[RDP.CLIPRDR] Converting clipboard content failed: "
+                 "Failed to set data to convert");
       return NULL;
     }
 
@@ -1841,7 +1847,8 @@
     }
   if (!dst_data)
     {
-      g_warning ("[RDP.CLIPRDR] Converting clipboard content failed");
+      g_warning ("[RDP.CLIPRDR] Converting clipboard content failed: "
+                 "Failed to get converted data");
       return NULL;
     }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gnome-remote-desktop-44.0/src/grd-daemon.c 
new/gnome-remote-desktop-44.1/src/grd-daemon.c
--- old/gnome-remote-desktop-44.0/src/grd-daemon.c      2023-03-18 
18:59:04.000000000 +0100
+++ new/gnome-remote-desktop-44.1/src/grd-daemon.c      2023-04-22 
17:45:46.000000000 +0200
@@ -73,6 +73,17 @@
 
 #ifdef HAVE_RDP
 static void
+stop_rdp_server (GrdDaemon *daemon)
+{
+  if (!daemon->rdp_server)
+    return;
+
+  grd_rdp_server_stop (daemon->rdp_server);
+  g_clear_object (&daemon->rdp_server);
+  g_message ("RDP server stopped");
+}
+
+static void
 start_rdp_server (GrdDaemon *daemon)
 {
   GrdSettings *settings = grd_context_get_settings (daemon->context);
@@ -86,29 +97,34 @@
     {
       daemon->rdp_server = grd_rdp_server_new (daemon->context);
       if (!grd_rdp_server_start (daemon->rdp_server, &error))
-        g_warning ("Failed to start RDP server: %s\n", error->message);
+        {
+          g_warning ("Failed to start RDP server: %s\n", error->message);
+          stop_rdp_server (daemon);
+        }
       else
-        g_message ("RDP server started");
+        {
+          g_message ("RDP server started");
+        }
     }
   else
     {
       g_warning ("RDP TLS certificate and key not configured properly");
     }
 }
+#endif /* HAVE_RDP */
 
+#ifdef HAVE_VNC
 static void
-stop_rdp_server (GrdDaemon *daemon)
+stop_vnc_server (GrdDaemon *daemon)
 {
-  if (!daemon->rdp_server)
+  if (!daemon->vnc_server)
     return;
 
-  grd_rdp_server_stop (daemon->rdp_server);
-  g_clear_object (&daemon->rdp_server);
-  g_message ("RDP server stopped");
+  grd_vnc_server_stop (daemon->vnc_server);
+  g_clear_object (&daemon->vnc_server);
+  g_message ("VNC server stopped");
 }
-#endif /* HAVE_RDP */
 
-#ifdef HAVE_VNC
 static void
 start_vnc_server (GrdDaemon *daemon)
 {
@@ -119,20 +135,14 @@
 
   daemon->vnc_server = grd_vnc_server_new (daemon->context);
   if (!grd_vnc_server_start (daemon->vnc_server, &error))
-    g_warning ("Failed to initialize VNC server: %s\n", error->message);
+    {
+      g_warning ("Failed to initialize VNC server: %s\n", error->message);
+      stop_vnc_server (daemon);
+    }
   else
-    g_message ("VNC server started");
-}
-
-static void
-stop_vnc_server (GrdDaemon *daemon)
-{
-  if (!daemon->vnc_server)
-    return;
-
-  grd_vnc_server_stop (daemon->vnc_server);
-  g_clear_object (&daemon->vnc_server);
-  g_message ("VNC server stopped");
+    {
+      g_message ("VNC server started");
+    }
 }
 #endif /* HAVE_VNC */
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gnome-remote-desktop-44.0/src/grd-rdp-graphics-pipeline.c 
new/gnome-remote-desktop-44.1/src/grd-rdp-graphics-pipeline.c
--- old/gnome-remote-desktop-44.0/src/grd-rdp-graphics-pipeline.c       
2023-03-18 18:59:04.000000000 +0100
+++ new/gnome-remote-desktop-44.1/src/grd-rdp-graphics-pipeline.c       
2023-04-22 17:45:46.000000000 +0200
@@ -1578,49 +1578,6 @@
                    graphics_pipeline->pipeline_context);
 }
 
-GrdRdpGraphicsPipeline *
-grd_rdp_graphics_pipeline_new (GrdSessionRdp              *session_rdp,
-                               GrdRdpDvc                  *rdp_dvc,
-                               GMainContext               *pipeline_context,
-                               HANDLE                      vcm,
-                               rdpContext                 *rdp_context,
-                               GrdRdpNetworkAutodetection 
*network_autodetection,
-                               wStream                    *encode_stream,
-                               RFX_CONTEXT                *rfx_context)
-{
-  GrdRdpGraphicsPipeline *graphics_pipeline;
-  RdpgfxServerContext *rdpgfx_context;
-
-  graphics_pipeline = g_object_new (GRD_TYPE_RDP_GRAPHICS_PIPELINE, NULL);
-  rdpgfx_context = rdpgfx_server_context_new (vcm);
-  if (!rdpgfx_context)
-    g_error ("[RDP.RDPGFX] Failed to create server context");
-
-  graphics_pipeline->rdpgfx_context = rdpgfx_context;
-  graphics_pipeline->session_rdp = session_rdp;
-  graphics_pipeline->rdp_dvc = rdp_dvc;
-  graphics_pipeline->pipeline_context = pipeline_context;
-  graphics_pipeline->network_autodetection = network_autodetection;
-  graphics_pipeline->encode_stream = encode_stream;
-  graphics_pipeline->rfx_context = rfx_context;
-
-  rdpgfx_context->ChannelIdAssigned = rdpgfx_channel_id_assigned;
-  rdpgfx_context->CapsAdvertise = rdpgfx_caps_advertise;
-  rdpgfx_context->CacheImportOffer = rdpgfx_cache_import_offer;
-  rdpgfx_context->FrameAcknowledge = rdpgfx_frame_acknowledge;
-  rdpgfx_context->QoeFrameAcknowledge = rdpgfx_qoe_frame_acknowledge;
-  rdpgfx_context->rdpcontext = rdp_context;
-  rdpgfx_context->custom = graphics_pipeline;
-
-  g_mutex_lock (&graphics_pipeline->gfx_mutex);
-  if (rdp_context->settings->NetworkAutoDetect &&
-      !graphics_pipeline->rtt_pause_source)
-    ensure_rtt_receivement (graphics_pipeline);
-  g_mutex_unlock (&graphics_pipeline->gfx_mutex);
-
-  return graphics_pipeline;
-}
-
 static void
 reset_graphics_pipeline (GrdRdpGraphicsPipeline *graphics_pipeline)
 {
@@ -1662,79 +1619,6 @@
   g_mutex_unlock (&graphics_pipeline->gfx_mutex);
 }
 
-static void
-grd_rdp_graphics_pipeline_dispose (GObject *object)
-{
-  GrdRdpGraphicsPipeline *graphics_pipeline = GRD_RDP_GRAPHICS_PIPELINE 
(object);
-
-  if (graphics_pipeline->channel_opened)
-    {
-      reset_graphics_pipeline (graphics_pipeline);
-      graphics_pipeline->rdpgfx_context->Close 
(graphics_pipeline->rdpgfx_context);
-      graphics_pipeline->channel_opened = FALSE;
-    }
-  if (graphics_pipeline->subscribed_status)
-    {
-      grd_rdp_dvc_unsubscribe_dvc_creation_status (graphics_pipeline->rdp_dvc,
-                                                   
graphics_pipeline->channel_id,
-                                                   
graphics_pipeline->dvc_subscription_id);
-      graphics_pipeline->subscribed_status = FALSE;
-    }
-
-  if (graphics_pipeline->protocol_timeout_source)
-    {
-      g_source_destroy (graphics_pipeline->protocol_timeout_source);
-      g_clear_pointer (&graphics_pipeline->protocol_timeout_source, 
g_source_unref);
-    }
-  if (graphics_pipeline->rtt_pause_source)
-    {
-      g_source_destroy (graphics_pipeline->rtt_pause_source);
-      g_clear_pointer (&graphics_pipeline->rtt_pause_source, g_source_unref);
-    }
-  if (graphics_pipeline->protocol_reset_source)
-    {
-      g_source_destroy (graphics_pipeline->protocol_reset_source);
-      g_clear_pointer (&graphics_pipeline->protocol_reset_source, 
g_source_unref);
-    }
-
-  if (graphics_pipeline->enc_times)
-    {
-      g_queue_free_full (graphics_pipeline->enc_times, g_free);
-      graphics_pipeline->enc_times = NULL;
-    }
-
-  if (graphics_pipeline->encoded_frames)
-    {
-      g_assert (g_queue_get_length (graphics_pipeline->encoded_frames) == 0);
-      g_clear_pointer (&graphics_pipeline->encoded_frames, g_queue_free);
-    }
-
-  g_assert (g_hash_table_size (graphics_pipeline->surface_hwaccel_table) == 0);
-  g_clear_pointer (&graphics_pipeline->surface_hwaccel_table, 
g_hash_table_destroy);
-
-  g_clear_pointer (&graphics_pipeline->cap_sets, g_free);
-
-  g_assert (g_hash_table_size (graphics_pipeline->serial_surface_table) == 0);
-  g_clear_pointer (&graphics_pipeline->serial_surface_table, 
g_hash_table_destroy);
-  g_clear_pointer (&graphics_pipeline->frame_serial_table, 
g_hash_table_destroy);
-  g_clear_pointer (&graphics_pipeline->codec_context_table, 
g_hash_table_destroy);
-  g_clear_pointer (&graphics_pipeline->surface_table, g_hash_table_destroy);
-  g_clear_pointer (&graphics_pipeline->rdpgfx_context, 
rdpgfx_server_context_free);
-
-  G_OBJECT_CLASS (grd_rdp_graphics_pipeline_parent_class)->dispose (object);
-}
-
-static void
-grd_rdp_graphics_pipeline_finalize (GObject *object)
-{
-  GrdRdpGraphicsPipeline *graphics_pipeline = GRD_RDP_GRAPHICS_PIPELINE 
(object);
-
-  g_mutex_clear (&graphics_pipeline->gfx_mutex);
-  g_mutex_clear (&graphics_pipeline->caps_mutex);
-
-  G_OBJECT_CLASS (grd_rdp_graphics_pipeline_parent_class)->finalize (object);
-}
-
 static gboolean
 test_caps_version (GrdRdpGraphicsPipeline *graphics_pipeline,
                    RDPGFX_CAPSET          *cap_sets,
@@ -1867,11 +1751,134 @@
   .dispatch = protocol_reset_source_dispatch,
 };
 
-static void
-grd_rdp_graphics_pipeline_init (GrdRdpGraphicsPipeline *graphics_pipeline)
+GrdRdpGraphicsPipeline *
+grd_rdp_graphics_pipeline_new (GrdSessionRdp              *session_rdp,
+                               GrdRdpDvc                  *rdp_dvc,
+                               GMainContext               *pipeline_context,
+                               HANDLE                      vcm,
+                               rdpContext                 *rdp_context,
+                               GrdRdpNetworkAutodetection 
*network_autodetection,
+                               wStream                    *encode_stream,
+                               RFX_CONTEXT                *rfx_context)
 {
+  GrdRdpGraphicsPipeline *graphics_pipeline;
+  RdpgfxServerContext *rdpgfx_context;
   GSource *protocol_reset_source;
 
+  graphics_pipeline = g_object_new (GRD_TYPE_RDP_GRAPHICS_PIPELINE, NULL);
+  rdpgfx_context = rdpgfx_server_context_new (vcm);
+  if (!rdpgfx_context)
+    g_error ("[RDP.RDPGFX] Failed to create server context");
+
+  graphics_pipeline->rdpgfx_context = rdpgfx_context;
+  graphics_pipeline->session_rdp = session_rdp;
+  graphics_pipeline->rdp_dvc = rdp_dvc;
+  graphics_pipeline->pipeline_context = pipeline_context;
+  graphics_pipeline->network_autodetection = network_autodetection;
+  graphics_pipeline->encode_stream = encode_stream;
+  graphics_pipeline->rfx_context = rfx_context;
+
+  rdpgfx_context->ChannelIdAssigned = rdpgfx_channel_id_assigned;
+  rdpgfx_context->CapsAdvertise = rdpgfx_caps_advertise;
+  rdpgfx_context->CacheImportOffer = rdpgfx_cache_import_offer;
+  rdpgfx_context->FrameAcknowledge = rdpgfx_frame_acknowledge;
+  rdpgfx_context->QoeFrameAcknowledge = rdpgfx_qoe_frame_acknowledge;
+  rdpgfx_context->rdpcontext = rdp_context;
+  rdpgfx_context->custom = graphics_pipeline;
+
+  protocol_reset_source = g_source_new (&protocol_reset_source_funcs,
+                                        sizeof (GSource));
+  g_source_set_callback (protocol_reset_source, reset_protocol,
+                         graphics_pipeline, NULL);
+  g_source_set_ready_time (protocol_reset_source, -1);
+  g_source_attach (protocol_reset_source, pipeline_context);
+  graphics_pipeline->protocol_reset_source = protocol_reset_source;
+
+  g_mutex_lock (&graphics_pipeline->gfx_mutex);
+  if (rdp_context->settings->NetworkAutoDetect &&
+      !graphics_pipeline->rtt_pause_source)
+    ensure_rtt_receivement (graphics_pipeline);
+  g_mutex_unlock (&graphics_pipeline->gfx_mutex);
+
+  return graphics_pipeline;
+}
+
+static void
+grd_rdp_graphics_pipeline_dispose (GObject *object)
+{
+  GrdRdpGraphicsPipeline *graphics_pipeline = GRD_RDP_GRAPHICS_PIPELINE 
(object);
+
+  if (graphics_pipeline->channel_opened)
+    {
+      reset_graphics_pipeline (graphics_pipeline);
+      graphics_pipeline->rdpgfx_context->Close 
(graphics_pipeline->rdpgfx_context);
+      graphics_pipeline->channel_opened = FALSE;
+    }
+  if (graphics_pipeline->subscribed_status)
+    {
+      grd_rdp_dvc_unsubscribe_dvc_creation_status (graphics_pipeline->rdp_dvc,
+                                                   
graphics_pipeline->channel_id,
+                                                   
graphics_pipeline->dvc_subscription_id);
+      graphics_pipeline->subscribed_status = FALSE;
+    }
+
+  if (graphics_pipeline->protocol_timeout_source)
+    {
+      g_source_destroy (graphics_pipeline->protocol_timeout_source);
+      g_clear_pointer (&graphics_pipeline->protocol_timeout_source, 
g_source_unref);
+    }
+  if (graphics_pipeline->rtt_pause_source)
+    {
+      g_source_destroy (graphics_pipeline->rtt_pause_source);
+      g_clear_pointer (&graphics_pipeline->rtt_pause_source, g_source_unref);
+    }
+  if (graphics_pipeline->protocol_reset_source)
+    {
+      g_source_destroy (graphics_pipeline->protocol_reset_source);
+      g_clear_pointer (&graphics_pipeline->protocol_reset_source, 
g_source_unref);
+    }
+
+  if (graphics_pipeline->enc_times)
+    {
+      g_queue_free_full (graphics_pipeline->enc_times, g_free);
+      graphics_pipeline->enc_times = NULL;
+    }
+
+  if (graphics_pipeline->encoded_frames)
+    {
+      g_assert (g_queue_get_length (graphics_pipeline->encoded_frames) == 0);
+      g_clear_pointer (&graphics_pipeline->encoded_frames, g_queue_free);
+    }
+
+  g_assert (g_hash_table_size (graphics_pipeline->surface_hwaccel_table) == 0);
+  g_clear_pointer (&graphics_pipeline->surface_hwaccel_table, 
g_hash_table_destroy);
+
+  g_clear_pointer (&graphics_pipeline->cap_sets, g_free);
+
+  g_assert (g_hash_table_size (graphics_pipeline->serial_surface_table) == 0);
+  g_clear_pointer (&graphics_pipeline->serial_surface_table, 
g_hash_table_destroy);
+  g_clear_pointer (&graphics_pipeline->frame_serial_table, 
g_hash_table_destroy);
+  g_clear_pointer (&graphics_pipeline->codec_context_table, 
g_hash_table_destroy);
+  g_clear_pointer (&graphics_pipeline->surface_table, g_hash_table_destroy);
+  g_clear_pointer (&graphics_pipeline->rdpgfx_context, 
rdpgfx_server_context_free);
+
+  G_OBJECT_CLASS (grd_rdp_graphics_pipeline_parent_class)->dispose (object);
+}
+
+static void
+grd_rdp_graphics_pipeline_finalize (GObject *object)
+{
+  GrdRdpGraphicsPipeline *graphics_pipeline = GRD_RDP_GRAPHICS_PIPELINE 
(object);
+
+  g_mutex_clear (&graphics_pipeline->gfx_mutex);
+  g_mutex_clear (&graphics_pipeline->caps_mutex);
+
+  G_OBJECT_CLASS (grd_rdp_graphics_pipeline_parent_class)->finalize (object);
+}
+
+static void
+grd_rdp_graphics_pipeline_init (GrdRdpGraphicsPipeline *graphics_pipeline)
+{
   graphics_pipeline->surface_table = g_hash_table_new (NULL, NULL);
   graphics_pipeline->codec_context_table = g_hash_table_new (NULL, NULL);
 
@@ -1884,14 +1891,6 @@
 
   g_mutex_init (&graphics_pipeline->caps_mutex);
   g_mutex_init (&graphics_pipeline->gfx_mutex);
-
-  protocol_reset_source = g_source_new (&protocol_reset_source_funcs,
-                                        sizeof (GSource));
-  g_source_set_callback (protocol_reset_source, reset_protocol,
-                         graphics_pipeline, NULL);
-  g_source_set_ready_time (protocol_reset_source, -1);
-  g_source_attach (protocol_reset_source, graphics_pipeline->pipeline_context);
-  graphics_pipeline->protocol_reset_source = protocol_reset_source;
 }
 
 static void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gnome-remote-desktop-44.0/src/grd-session-rdp.c 
new/gnome-remote-desktop-44.1/src/grd-session-rdp.c
--- old/gnome-remote-desktop-44.0/src/grd-session-rdp.c 2023-03-18 
18:59:04.000000000 +0100
+++ new/gnome-remote-desktop-44.1/src/grd-session-rdp.c 2023-04-22 
17:45:46.000000000 +0200
@@ -191,9 +191,9 @@
 close_session_idle (gpointer user_data);
 
 static void
-rdp_peer_refresh_region (GrdSessionRdp  *session_rdp,
-                         GrdRdpSurface  *rdp_surface,
-                         GrdRdpBuffer   *buffer);
+rdp_peer_refresh_region (GrdSessionRdp *session_rdp,
+                         GrdRdpSurface *rdp_surface,
+                         GrdRdpBuffer  *buffer);
 
 static gboolean
 are_pointer_bitmaps_equal (gconstpointer a,
@@ -1317,9 +1317,9 @@
 }
 
 static void
-rdp_peer_refresh_region (GrdSessionRdp  *session_rdp,
-                         GrdRdpSurface  *rdp_surface,
-                         GrdRdpBuffer   *buffer)
+rdp_peer_refresh_region (GrdSessionRdp *session_rdp,
+                         GrdRdpSurface *rdp_surface,
+                         GrdRdpBuffer  *buffer)
 {
   SessionMetrics *session_metrics = &session_rdp->session_metrics;
   freerdp_peer *peer = session_rdp->peer;
@@ -2414,11 +2414,13 @@
 
   g_clear_object (&session_rdp->pipewire_stream);
 
+  g_mutex_lock (&rdp_peer_context->channel_mutex);
   g_clear_object (&rdp_peer_context->clipboard_rdp);
   g_clear_object (&rdp_peer_context->audio_playback);
   g_clear_object (&rdp_peer_context->display_control);
   g_clear_object (&rdp_peer_context->graphics_pipeline);
   g_clear_object (&rdp_peer_context->telemetry);
+  g_mutex_unlock (&rdp_peer_context->channel_mutex);
 
   g_clear_pointer (&session_rdp->socket_thread, g_thread_join);
   clear_session_sources (session_rdp);

++++++ gnome-remote-desktop.obsinfo ++++++
--- /var/tmp/diff_new_pack.y60Bpk/_old  2023-04-24 22:32:07.219834151 +0200
+++ /var/tmp/diff_new_pack.y60Bpk/_new  2023-04-24 22:32:07.243834293 +0200
@@ -1,5 +1,5 @@
 name: gnome-remote-desktop
-version: 44.0
-mtime: 1679162344
-commit: 71d82c8604fc2b5142bd66af77259d5b2f2504fa
+version: 44.1
+mtime: 1682178346
+commit: 66e0fa21c87f82d7aaf71846dc408fb832d43146
 

Reply via email to