[xdg-desktop-portal-gnome/gbsneto/window-restore: 3/6] screencast: Ref listeners when acquiring windows list
- From: Georges Basile Stavracas Neto <gbsneto src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [xdg-desktop-portal-gnome/gbsneto/window-restore: 3/6] screencast: Ref listeners when acquiring windows list
- Date: Fri, 5 Aug 2022 01:41:28 +0000 (UTC)
commit 4a75c8d48e98358edab326227ac8a9e816c492e6
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date: Thu Aug 4 22:18:37 2022 -0300
screencast: Ref listeners when acquiring windows list
This is not enough to fix [1], but it's a necessary step towards
that. This implicitly calls sync_state(), which we'll depend on
later.
[1] https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome/-/issues/49
src/screencast.c | 4 ++++
1 file changed, 4 insertions(+)
---
diff --git a/src/screencast.c b/src/screencast.c
index 5cbe9cc..e66f3d5 100644
--- a/src/screencast.c
+++ b/src/screencast.c
@@ -443,6 +443,8 @@ find_best_window_by_app_id_and_title (const char *app_id,
best_match = NULL;
best_match_distance = G_MAXLONG;
+ shell_introspect_ref_listeners (shell_introspect);
+
windows = shell_introspect_get_windows (shell_introspect);
for (size_t i = 0; windows && i < windows->len; i++)
{
@@ -464,6 +466,8 @@ find_best_window_by_app_id_and_title (const char *app_id,
}
}
+ shell_introspect_unref_listeners (shell_introspect);
+
/* If even the best match's window title is too different, don't
* restore it.
*/
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]