window: fixups
authorMatthias Clasen <mclasen@redhat.com>
Wed, 9 Nov 2022 15:12:01 +0000 (16:12 +0100)
committerMatthias Clasen <mclasen@redhat.com>
Wed, 9 Nov 2022 15:28:30 +0000 (16:28 +0100)
gtk/gtkwindow.c

index aba22c522b52749e3b98291d546fc45fe20881fb..5425472d0334df769f32f788ffd0f62baf418914 100644 (file)
@@ -6276,15 +6276,20 @@ export_handle_done (GObject      *source,
   ExportHandleData *data = (ExportHandleData *)user_data;
   GtkWindowPrivate *priv = gtk_window_get_instance_private (data->window);
   char *handle;
-  char *prefixed;
 
   handle = gdk_toplevel_export_handle_finish (GDK_TOPLEVEL (priv->surface), result, NULL);
-  prefixed = prefix_handle (priv->display, handle);
+  if (handle)
+    {
+      char *prefixed;
 
-  data->callback (data->window, prefixed, data->user_data);
+      prefixed = prefix_handle (priv->display, handle);
+      data->callback (data->window, prefixed, data->user_data);
+      g_free (prefixed);
+      g_free (handle);
+    }
+  else
+    data->callback (data->window, NULL, data->user_data);
 
-  g_free (handle);
-  g_free (prefixed);
 
   g_free (data);
 }