- Drop gnome-control-center-fix-region-preview-crash.patch: fixed
upstream. OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gnome-control-center?expand=0&rev=541
This commit is contained in:
parent
756f98dc31
commit
f438697c0b
@ -1,51 +0,0 @@
|
||||
From d4a522277bcd1e172be57f3525c2d24831bb3cc5 Mon Sep 17 00:00:00 2001
|
||||
From: Alynx Zhou <alynx.zhou@gmail.com>
|
||||
Date: Thu, 4 Jan 2024 10:29:49 +0800
|
||||
Subject: [PATCH] system/region: Prevent preview crash from accessing invalid
|
||||
pointer
|
||||
|
||||
In !2051, we switch back to real locale before setting the label text,
|
||||
however, according to nl_langinfo's manpage, the returned pointer could
|
||||
be invalid after switching locale or creating new locale, so the program
|
||||
may crash.
|
||||
|
||||
To fix this, we save the result before switching locale, so we won't
|
||||
access the invalid pointer after switch locale.
|
||||
---
|
||||
panels/region/cc-format-preview.c | 6 +++++-
|
||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/panels/region/cc-format-preview.c b/panels/region/cc-format-preview.c
|
||||
index 7aea45511..e4f4afa32 100644
|
||||
--- a/panels/region/cc-format-preview.c
|
||||
+++ b/panels/region/cc-format-preview.c
|
||||
@@ -69,6 +69,7 @@ update_format_examples (CcFormatPreview *self)
|
||||
g_autofree gchar *s = NULL;
|
||||
#ifdef LC_MEASUREMENT
|
||||
const gchar *fmt;
|
||||
+ gboolean is_imperial = FALSE;
|
||||
#endif
|
||||
g_autoptr(GtkPaperSize) paper = NULL;
|
||||
|
||||
@@ -133,6 +134,9 @@ update_format_examples (CcFormatPreview *self)
|
||||
old_locale = uselocale (locale);
|
||||
|
||||
fmt = nl_langinfo (_NL_MEASUREMENT_MEASUREMENT);
|
||||
+ /* The returned pointer of nl_langinfo could be invalid after switching
|
||||
+ locale, so we must use it here. */
|
||||
+ is_imperial = fmt && *fmt == 2;
|
||||
|
||||
if (locale != (locale_t) 0)
|
||||
{
|
||||
@@ -140,7 +144,7 @@ update_format_examples (CcFormatPreview *self)
|
||||
freelocale (locale);
|
||||
}
|
||||
|
||||
- if (fmt && *fmt == 2)
|
||||
+ if (is_imperial)
|
||||
gtk_label_set_text (GTK_LABEL (self->measurement_format_label), C_("measurement format", "Imperial"));
|
||||
else
|
||||
gtk_label_set_text (GTK_LABEL (self->measurement_format_label), C_("measurement format", "Metric"));
|
||||
--
|
||||
2.43.0
|
||||
|
@ -5,6 +5,8 @@ Mon Feb 12 16:56:32 UTC 2024 - Dominique Leuenberger <dimstar@opensuse.org>
|
||||
+ Datetime: Fix build with -Wincompatible-pointer-types.
|
||||
+ Region: Prevent preview crash from accessing invalid pointer.
|
||||
+ Wifi: Fix build with -Wincompatible-pointer-types.
|
||||
- Drop gnome-control-center-fix-region-preview-crash.patch: fixed
|
||||
upstream.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jan 4 02:08:39 UTC 2024 - Alynx Zhou <alynx.zhou@suse.com>
|
||||
|
@ -39,8 +39,6 @@ Source99: %{name}-rpmlintrc
|
||||
Patch1: gnome-control-center-disable-error-message-for-NM.patch
|
||||
# PATCH-FIX-UPSTREAM gnome-control-center-add-user-button.patch bsc#1215556 glgo#GNOME/Settings!1927 xwang@suse.com -- Show add user button
|
||||
Patch2: gnome-control-center-add-user-button.patch
|
||||
# PATCH-FIX-UPSTREAM gnome-control-center-fix-region-preview-crash.patch bsc#1218528 glgo#GNOME/gnome-control-center!2122 alynx.zhou@suse.com -- Fix crash of region preview dialog
|
||||
Patch3: gnome-control-center-fix-region-preview-crash.patch
|
||||
|
||||
### patches for Leap >= 15 plus SLE >= 15, but not TW
|
||||
# PATCH-FEATURE-SLE gnome-control-center-info-never-use-gnome-software.patch bsc#999336 fezhang@suse.com -- info: Never search for gnome-software as an option when checking for updates on SLE and Leap 42.2, because we use gpk-update-viewer.
|
||||
@ -189,7 +187,6 @@ GNOME control center.
|
||||
%setup -q
|
||||
%patch -P 1 -p1
|
||||
%patch -P 2 -p1
|
||||
%patch -P 3 -p1
|
||||
|
||||
# patches for Leap >= 15 plus SLE >= 15, but not TW
|
||||
%if 0%{?sle_version} >= 150000
|
||||
|
Loading…
Reference in New Issue
Block a user