@@ -1,32 +0,0 @@
|
|||||||
From 5a78e6ae05ddf099d62e956c32b07ade7321b9b5 Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
|
||||||
Date: Thu, 29 May 2025 10:44:32 +0200
|
|
||||||
Subject: [PATCH] frames/window-tracker: Remove unnecessary frame existence
|
|
||||||
check
|
|
||||||
|
|
||||||
It's already checked inside remove_frame.
|
|
||||||
|
|
||||||
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4465>
|
|
||||||
(cherry picked from commit dbd29639cb4a3192b5c0a895a2203d1f9498c4df)
|
|
||||||
---
|
|
||||||
src/frames/meta-window-tracker.c | 4 +---
|
|
||||||
1 file changed, 1 insertion(+), 3 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/frames/meta-window-tracker.c b/src/frames/meta-window-tracker.c
|
|
||||||
index cfd62b6a58..247248d108 100644
|
|
||||||
--- a/src/frames/meta-window-tracker.c
|
|
||||||
+++ b/src/frames/meta-window-tracker.c
|
|
||||||
@@ -291,9 +291,7 @@ on_xevent (GdkDisplay *display,
|
|
||||||
!g_hash_table_contains (window_tracker->client_windows,
|
|
||||||
GUINT_TO_POINTER (xwindow)))
|
|
||||||
set_up_frame (window_tracker, xwindow);
|
|
||||||
- else if (xevent->xproperty.state == PropertyDelete &&
|
|
||||||
- g_hash_table_contains (window_tracker->client_windows,
|
|
||||||
- GUINT_TO_POINTER (xwindow)))
|
|
||||||
+ else if (xevent->xproperty.state == PropertyDelete)
|
|
||||||
remove_frame (window_tracker, xwindow);
|
|
||||||
}
|
|
||||||
else if (xevent->type == PropertyNotify)
|
|
||||||
--
|
|
||||||
GitLab
|
|
||||||
|
|
||||||
@@ -1,48 +0,0 @@
|
|||||||
From a38fe3a50427bd0ffdd86d0a565371d992027438 Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
|
||||||
Date: Thu, 29 May 2025 10:44:33 +0200
|
|
||||||
Subject: [PATCH] frames/window-tracker: Move frame existence check inside of
|
|
||||||
set_up_frame
|
|
||||||
|
|
||||||
Avoiding creating frames multiple times when listen_set_up_frame is
|
|
||||||
called from a ConfigureNotify event after the frame has already been
|
|
||||||
created.
|
|
||||||
|
|
||||||
Fixes: 4d194b8e1 ("frames/window-tracker: Handle override-redirect attribute change.")
|
|
||||||
Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/4138
|
|
||||||
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4465>
|
|
||||||
(cherry picked from commit a1d6e5771bbd704c65c8079310102637a5aab071)
|
|
||||||
---
|
|
||||||
src/frames/meta-window-tracker.c | 9 ++++++---
|
|
||||||
1 file changed, 6 insertions(+), 3 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/frames/meta-window-tracker.c b/src/frames/meta-window-tracker.c
|
|
||||||
index 247248d108..18801f5c3f 100644
|
|
||||||
--- a/src/frames/meta-window-tracker.c
|
|
||||||
+++ b/src/frames/meta-window-tracker.c
|
|
||||||
@@ -125,6 +125,11 @@ set_up_frame (MetaWindowTracker *window_tracker,
|
|
||||||
unsigned long data[1];
|
|
||||||
GtkWidget *frame;
|
|
||||||
|
|
||||||
+ frame = g_hash_table_lookup (window_tracker->client_windows,
|
|
||||||
+ GUINT_TO_POINTER (xwindow));
|
|
||||||
+ if (frame)
|
|
||||||
+ return;
|
|
||||||
+
|
|
||||||
/* Double check it's not a request for a frame of our own. */
|
|
||||||
if (g_hash_table_contains (window_tracker->frames,
|
|
||||||
GUINT_TO_POINTER (xwindow)))
|
|
||||||
@@ -287,9 +292,7 @@ on_xevent (GdkDisplay *display,
|
|
||||||
xevent->xproperty.atom ==
|
|
||||||
gdk_x11_get_xatom_by_name_for_display (display, "_MUTTER_NEEDS_FRAME"))
|
|
||||||
{
|
|
||||||
- if (xevent->xproperty.state == PropertyNewValue &&
|
|
||||||
- !g_hash_table_contains (window_tracker->client_windows,
|
|
||||||
- GUINT_TO_POINTER (xwindow)))
|
|
||||||
+ if (xevent->xproperty.state == PropertyNewValue)
|
|
||||||
set_up_frame (window_tracker, xwindow);
|
|
||||||
else if (xevent->xproperty.state == PropertyDelete)
|
|
||||||
remove_frame (window_tracker, xwindow);
|
|
||||||
--
|
|
||||||
GitLab
|
|
||||||
|
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
From ef4406783ea41ead69afbcbb6182ed82fdf8fba0 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Alessandro Astone <alessandro.astone@canonical.com>
|
||||||
|
Date: Wed, 4 Jun 2025 18:20:51 +0200
|
||||||
|
Subject: [PATCH] cogl/pipeline: Make foreach_child function safe
|
||||||
|
|
||||||
|
The cogl_pipeline_foreach_child function is not safe to callbacks that modify
|
||||||
|
the list of children.
|
||||||
|
|
||||||
|
Indeed, the reparent_children_cb callback function modifies the list and causes
|
||||||
|
unexpected behaviour.
|
||||||
|
|
||||||
|
Fixes: 8540362d1d ("cogl/pipeline: Inherit from GObject")
|
||||||
|
Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/3970
|
||||||
|
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4481>
|
||||||
|
---
|
||||||
|
cogl/cogl/cogl-pipeline.c | 7 +++++--
|
||||||
|
1 file changed, 5 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/cogl/cogl/cogl-pipeline.c b/cogl/cogl/cogl-pipeline.c
|
||||||
|
index 2e7b595b2b..f93aaa8062 100644
|
||||||
|
--- a/cogl/cogl/cogl-pipeline.c
|
||||||
|
+++ b/cogl/cogl/cogl-pipeline.c
|
||||||
|
@@ -121,11 +121,14 @@ cogl_pipeline_foreach_child (CoglPipeline *pipeline,
|
||||||
|
{
|
||||||
|
|
||||||
|
for (CoglPipeline *child = pipeline->first_child;
|
||||||
|
- child != NULL;
|
||||||
|
- child = child->next_sibling)
|
||||||
|
+ child != NULL;)
|
||||||
|
{
|
||||||
|
+ CoglPipeline *next = child->next_sibling;
|
||||||
|
+
|
||||||
|
if (!callback (child, user_data))
|
||||||
|
break;
|
||||||
|
+
|
||||||
|
+ child = next;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
--
|
||||||
|
GitLab
|
||||||
|
|
||||||
@@ -13,7 +13,7 @@
|
|||||||
<Icon>gnome</Icon>
|
<Icon>gnome</Icon>
|
||||||
<Summary>Mutter is a Wayland display server and X11 window manager and compositor library.</Summary>
|
<Summary>Mutter is a Wayland display server and X11 window manager and compositor library.</Summary>
|
||||||
<Description>Mutter is a Wayland display server and X11 window manager and compositor library.</Description>
|
<Description>Mutter is a Wayland display server and X11 window manager and compositor library.</Description>
|
||||||
<Archive sha1sum="83182def1c745db1bcf0b5366b00cc604f6b37dc" type="tarxz">https://download.gnome.org/sources/mutter/48/mutter-48.3.tar.xz</Archive>
|
<Archive sha1sum="c4a1e7d89b19866d9fdb2bbc96a7b03320fc1212" type="tarxz">https://download.gnome.org/sources/mutter/48/mutter-48.3.1.tar.xz</Archive>
|
||||||
<BuildDependencies>
|
<BuildDependencies>
|
||||||
<Dependency>libei-devel</Dependency>
|
<Dependency>libei-devel</Dependency>
|
||||||
<Dependency>gettext-devel</Dependency>
|
<Dependency>gettext-devel</Dependency>
|
||||||
@@ -59,8 +59,7 @@
|
|||||||
<Dependency>python3-docutils</Dependency>
|
<Dependency>python3-docutils</Dependency>
|
||||||
</BuildDependencies>
|
</BuildDependencies>
|
||||||
<Patches>
|
<Patches>
|
||||||
<Patch level="1">a38fe3a50427bd0ffdd86d0a565371d992027438.patch</Patch>
|
<Patch level="1">ef4406783ea41ead69afbcbb6182ed82fdf8fba0.patch</Patch>
|
||||||
<Patch level="1">5a78e6ae05ddf099d62e956c32b07ade7321b9b5.patch</Patch>
|
|
||||||
</Patches>
|
</Patches>
|
||||||
</Source>
|
</Source>
|
||||||
|
|
||||||
@@ -208,6 +207,13 @@
|
|||||||
</Files>
|
</Files>
|
||||||
</Package>
|
</Package>
|
||||||
<History>
|
<History>
|
||||||
|
<Update release="41">
|
||||||
|
<Date>2025-06-14</Date>
|
||||||
|
<Version>48.3.1</Version>
|
||||||
|
<Comment>Version bump.</Comment>
|
||||||
|
<Name>Pisi Linux Community</Name>
|
||||||
|
<Email>admin@pisilinux.org</Email>
|
||||||
|
</Update>
|
||||||
<Update release="40">
|
<Update release="40">
|
||||||
<Date>2025-06-10</Date>
|
<Date>2025-06-10</Date>
|
||||||
<Version>48.3</Version>
|
<Version>48.3</Version>
|
||||||
|
|||||||
Executable → Regular
Reference in New Issue
Block a user