Merge pull request #16826 from Rmys/master

mutter ver. bump
This commit is contained in:
Rmys
2025-06-14 16:02:57 +03:00
committed by GitHub
5 changed files with 51 additions and 83 deletions
@@ -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
+9 -3
View File
@@ -13,7 +13,7 @@
<Icon>gnome</Icon>
<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>
<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>
<Dependency>libei-devel</Dependency>
<Dependency>gettext-devel</Dependency>
@@ -59,8 +59,7 @@
<Dependency>python3-docutils</Dependency>
</BuildDependencies>
<Patches>
<Patch level="1">a38fe3a50427bd0ffdd86d0a565371d992027438.patch</Patch>
<Patch level="1">5a78e6ae05ddf099d62e956c32b07ade7321b9b5.patch</Patch>
<Patch level="1">ef4406783ea41ead69afbcbb6182ed82fdf8fba0.patch</Patch>
</Patches>
</Source>
@@ -208,6 +207,13 @@
</Files>
</Package>
<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">
<Date>2025-06-10</Date>
<Version>48.3</Version>
View File