Accepting request 1131648 from GNOME:Next

Update to 3.24.38+111

OBS-URL: https://build.opensuse.org/request/show/1131648
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gtk3?expand=0&rev=448
This commit is contained in:
Bjørn Lie 2023-12-07 20:30:27 +00:00 committed by Git OBS Bridge
parent b587db70ff
commit 69eb309d3d
8 changed files with 27 additions and 82 deletions

View File

@ -3,11 +3,11 @@
<service name="obs_scm" mode="manual">
<param name="url">https://gitlab.gnome.org/GNOME/gtk.git</param>
<param name="scm">git</param>
<param name="revision">refs/tags/3.24.38</param>
<param name="revision">gtk-3-24</param>
<param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param>
<param name="versionrewrite-pattern">(.*)\+0</param>
<param name="versionrewrite-replacement">\1</param>
<!-- <param name="changesgenerate">enable</param> -->
<param name="changesgenerate">enable</param>
</service>
<service name="tar" mode="buildtime"/>
<service name="recompress" mode="buildtime">

4
_servicedata Normal file
View File

@ -0,0 +1,4 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://gitlab.gnome.org/GNOME/gtk.git</param>
<param name="changesrevision">cde309d9fa27d948ae4ad098f50ba3188452ad6a</param></service></servicedata>

BIN
gtk-3.24.38+111.obscpio (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:935ad68630da75ddeaf0fb14922b9478ff5c8666890f829b39f95c2ed123a786
size 99185166

View File

@ -1,4 +1,4 @@
name: gtk
version: 3.24.38
mtime: 1684722128
commit: 3e6fd55ee00d4209ce2f2af292829e4d6f674adc
version: 3.24.38+111
mtime: 1701555122
commit: cde309d9fa27d948ae4ad098f50ba3188452ad6a

View File

@ -1,70 +0,0 @@
From 9f04e534590c515cefeb5e21b77f7a7d748d3643 Mon Sep 17 00:00:00 2001
From: Martin Wilck <mwilck@suse.com>
Date: Fri, 2 Jun 2023 15:16:58 +0200
Subject: [PATCH] gtkmountoperation: avoid SEGV after bad password input
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
I observed the following nautilus crash below after trying to access an SMB
share and mistyping my password (it also happens if mounting the SMB share
fails for other reasons after entering a password). The crash happens when
the password entry window pops up the second time, in this code path, at
the 7th element of priv->user_widgets:
458 pw_dialog_anonymous_toggled (GtkWidget *widget,
459 GtkMountOperation *operation)
460 {
...
472 for (l = priv->user_widgets; l != NULL; l = l->next)
473 {
474 gtk_widget_set_sensitive (GTK_WIDGET (l->data), !priv->anonymous);
475 }
The broken element had l->data = 0xaaaaaaaaaaaa, which means the pointer had
been freed.
The broken list entries were at the of the list because when
gtk_mount_operation_ask_password_do_gtk() constucts the pop-up the 2nd time,
it prepends new widgets:
gtk_mount_operation_ask_password_do_gtk()
table_add_entry
operation->priv->user_widgets = g_list_prepend (operation->priv->user_widgets, entry);
The problem is that in pw_dialog_got_response(), the widget is destroyed,
which also destroys all child widgets, but the priv->user_widgets list is
neither freed nor set to NULL.
Fix it.
instance_and_params=instance_and_params@entry=0x7ffd0585dd20) at ../gobject/gsignal.c:3742
default_user=default_user@entry=0x556964cfd740 "USER", default_domain=default_domain@entry=0x5569654ce990 "DOMAIN", flags=<optimized out>) at gtkmountoperation.c:900
n_params=<optimized out>, param_types=0x556965007460) at ../gio/gmarshal-internal.c:2254
arg_message_string=0x556965660ce0 "Authentication Required\nEnter user and password for share “SHARE” on “SERVER”:", arg_default_user=0x55696535e310 "USER",
arg_default_domain=0x55696505b820 "DOMAIN", arg_flags_as_int=31, data=0x556964d757f0) at ../common/gmountoperationdbus.c:112
at ../src/x86/ffi64.c:662
--Type <RET> for more, q to quit, c to continue without paging--c
---
gtk/gtkmountoperation.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/gtk/gtkmountoperation.c b/gtk/gtkmountoperation.c
index 2cf7e75..e6b50c9 100644
--- a/gtk/gtkmountoperation.c
+++ b/gtk/gtkmountoperation.c
@@ -380,6 +380,11 @@ pw_dialog_got_response (GtkDialog *dialog,
else
g_mount_operation_reply (op, G_MOUNT_OPERATION_ABORTED);
+ if (priv->user_widgets)
+ {
+ g_list_free (priv->user_widgets);
+ priv->user_widgets = NULL;
+ }
priv->dialog = NULL;
g_object_notify (G_OBJECT (op), "is-showing");
gtk_widget_destroy (GTK_WIDGET (dialog));
--
2.40.1

View File

@ -1,3 +1,17 @@
-------------------------------------------------------------------
Thu Dec 07 15:35:33 UTC 2023 - dimstar@opensuse.org
- Update to version 3.24.38+111:
+ [gtk3] Support tiled windows from xdg-shell.
+ Fix a minor issue in the file portal test.
+ wayland: Be more careful when loading cursors.
+ gdk/wayland: Use g_warning_once for cursor scale mismatches.
+ gdk/wayland: Don't fall back directly to 1 for mismatched
cursor sizes.
+ Updated translations.
- Drop upstream applied patch
gtk3-gtkmountoperation-avoid-SEGV-after-bad-password-inpu.patch
-------------------------------------------------------------------
Tue Nov 28 11:50:22 UTC 2023 - Dominique Leuenberger <dimstar@opensuse.org>

View File

@ -30,7 +30,7 @@
%define __provides_exclude_from ^%{_libdir}/gtk-3.0
Name: gtk3
Version: 3.24.38
Version: 3.24.38+111
Release: 0
Summary: The GTK+ toolkit library (version 3)
License: LGPL-2.1-or-later
@ -45,8 +45,6 @@ Source99: baselibs.conf
Patch0: gtk3-GTK_PATH64.patch
# PATCH-FIX-OPENSUSE gtk3-revert-forced-xftdpi.patch fvogt@opensuse.org -- Revert very controversal commit on GTK3, forcing DPI to 96
Patch1: gtk3-revert-forced-xftdpi.patch
# PATCH-FIX-UPSTREAM gtk3-gtkmountoperation-avoid-SEGV-after-bad-password-inpu.patch mwilck@suse.com -- fix bsc#1211952 glgo#GNOME/gtk#5059 glgo#GNOME/gtk#6049
Patch2: gtk3-gtkmountoperation-avoid-SEGV-after-bad-password-inpu.patch
BuildRequires: cups-devel >= 1.7
BuildRequires: docbook-xsl-stylesheets
@ -397,7 +395,6 @@ cp -a %{SOURCE1} .
%autopatch -p1 -m 1 -M 999
%else
%patch -P 1 -p1
%patch -P 2 -p1
%endif
%build