Update to 2.77.1
This commit is contained in:
parent
741aababcf
commit
1296978256
@ -1,31 +0,0 @@
|
||||
From c67dd9d3fe9186bef76ba682a7e277ccb7d95227 Mon Sep 17 00:00:00 2001
|
||||
From: Philip Withnall <pwithnall@endlessos.org>
|
||||
Date: Tue, 18 Jul 2023 11:31:01 +0100
|
||||
Subject: [PATCH] gmain: Add a missing return on error path in
|
||||
g_main_context_release()
|
||||
|
||||
This should have been in commit
|
||||
3926af723a7469a2ea492307f421820361d617b3.
|
||||
|
||||
Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
|
||||
|
||||
Fixes: #3054
|
||||
---
|
||||
glib/gmain.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/glib/gmain.c b/glib/gmain.c
|
||||
index fac14224a..ccadf76ce 100644
|
||||
--- a/glib/gmain.c
|
||||
+++ b/glib/gmain.c
|
||||
@@ -3608,6 +3608,7 @@ g_main_context_release (GMainContext *context)
|
||||
g_critical ("g_main_context_release() called on a context (%p, owner %p, "
|
||||
"owner count %u) which is not acquired by the current thread",
|
||||
context, context_owner, context_owner_count);
|
||||
+ return;
|
||||
}
|
||||
#endif /* !G_DISABLE_CHECKS */
|
||||
|
||||
--
|
||||
2.41.0
|
||||
|
158
3498.patch
158
3498.patch
@ -1,158 +0,0 @@
|
||||
From c49502582faedecc7020155d95b16c7a1d78d432 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Ga=C3=ABl=20Bonithon?= <gael@xfce.org>
|
||||
Date: Thu, 13 Jul 2023 10:06:21 +0200
|
||||
Subject: [PATCH 1/2] gkeyfile: Ensure we don't add extra blank line above new
|
||||
group
|
||||
|
||||
A forgotten edge case in 86b4b045: when the last value of the last group
|
||||
has been added via g_key_file_set_value() and it contains line breaks.
|
||||
The best we can do in this case is probably to do nothing.
|
||||
|
||||
Closes: #3047
|
||||
Fixes: 86b4b0453ea3a814167d4a5f7a4031d467543716
|
||||
---
|
||||
glib/gkeyfile.c | 6 +++++-
|
||||
glib/tests/keyfile.c | 10 ++++++++++
|
||||
2 files changed, 15 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/glib/gkeyfile.c b/glib/gkeyfile.c
|
||||
index 145136706f..0e21ab4f14 100644
|
||||
--- a/glib/gkeyfile.c
|
||||
+++ b/glib/gkeyfile.c
|
||||
@@ -3858,8 +3858,12 @@ g_key_file_add_group (GKeyFile *key_file,
|
||||
{
|
||||
/* separate groups by a blank line if we don't keep comments or group is created */
|
||||
GKeyFileGroup *next_group = key_file->groups->next->data;
|
||||
+ GKeyFileKeyValuePair *pair;
|
||||
+ if (next_group->key_value_pairs != NULL)
|
||||
+ pair = next_group->key_value_pairs->data;
|
||||
+
|
||||
if (next_group->key_value_pairs == NULL ||
|
||||
- ((GKeyFileKeyValuePair *) next_group->key_value_pairs->data)->key != NULL)
|
||||
+ (pair->key != NULL && !g_strstr_len (pair->value, -1, "\n")))
|
||||
{
|
||||
GKeyFileKeyValuePair *pair = g_new (GKeyFileKeyValuePair, 1);
|
||||
pair->key = NULL;
|
||||
diff --git a/glib/tests/keyfile.c b/glib/tests/keyfile.c
|
||||
index d3eed29841..80cdc93d8f 100644
|
||||
--- a/glib/tests/keyfile.c
|
||||
+++ b/glib/tests/keyfile.c
|
||||
@@ -480,6 +480,16 @@ test_comments (void)
|
||||
G_KEY_FILE_ERROR_GROUP_NOT_FOUND);
|
||||
g_assert_null (comment);
|
||||
|
||||
+ g_test_bug ("https://gitlab.gnome.org/GNOME/glib/-/issues/3047");
|
||||
+
|
||||
+ /* check if we don't add a blank line above new group if last value of preceding
|
||||
+ * group was added via g_key_file_set_value() and contains line breaks */
|
||||
+ g_key_file_set_value (keyfile, "group4", "key1", "value1\n\n# group comment");
|
||||
+ g_key_file_set_string (keyfile, "group5", "key1", "value1");
|
||||
+ comment = g_key_file_get_comment (keyfile, "group5", NULL, &error);
|
||||
+ check_no_error (&error);
|
||||
+ g_assert_null (comment);
|
||||
+
|
||||
g_key_file_free (keyfile);
|
||||
}
|
||||
|
||||
--
|
||||
GitLab
|
||||
|
||||
|
||||
From 51dfb3c229c0478b3615f486fbbc36de2586bd52 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Ga=C3=ABl=20Bonithon?= <gael@xfce.org>
|
||||
Date: Thu, 13 Jul 2023 10:19:04 +0200
|
||||
Subject: [PATCH 2/2] gkeyfile: Skip group comment when adding a new key to a
|
||||
group
|
||||
|
||||
An oversight in 86b4b045: since the comment of group N now consists of
|
||||
the last null-key values of group N-1, these keys must obviously be
|
||||
skipped when adding a new non-null key to group N-1.
|
||||
|
||||
Closes: #3047
|
||||
Fixes: 86b4b0453ea3a814167d4a5f7a4031d467543716
|
||||
---
|
||||
glib/gkeyfile.c | 19 ++++++++++++++-----
|
||||
glib/tests/keyfile.c | 9 +++++++++
|
||||
2 files changed, 23 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/glib/gkeyfile.c b/glib/gkeyfile.c
|
||||
index 0e21ab4f14..4759051977 100644
|
||||
--- a/glib/gkeyfile.c
|
||||
+++ b/glib/gkeyfile.c
|
||||
@@ -573,7 +573,8 @@ static void g_key_file_remove_key_value_pair_node (GKeyFile
|
||||
|
||||
static void g_key_file_add_key_value_pair (GKeyFile *key_file,
|
||||
GKeyFileGroup *group,
|
||||
- GKeyFileKeyValuePair *pair);
|
||||
+ GKeyFileKeyValuePair *pair,
|
||||
+ GList *sibling);
|
||||
static void g_key_file_add_key (GKeyFile *key_file,
|
||||
GKeyFileGroup *group,
|
||||
const gchar *key,
|
||||
@@ -1447,7 +1448,8 @@ g_key_file_parse_key_value_pair (GKeyFile *key_file,
|
||||
pair->key = g_steal_pointer (&key);
|
||||
pair->value = g_strndup (value_start, value_len);
|
||||
|
||||
- g_key_file_add_key_value_pair (key_file, key_file->current_group, pair);
|
||||
+ g_key_file_add_key_value_pair (key_file, key_file->current_group, pair,
|
||||
+ key_file->current_group->key_value_pairs);
|
||||
}
|
||||
|
||||
g_free (key);
|
||||
@@ -4034,10 +4036,11 @@ g_key_file_remove_group (GKeyFile *key_file,
|
||||
static void
|
||||
g_key_file_add_key_value_pair (GKeyFile *key_file,
|
||||
GKeyFileGroup *group,
|
||||
- GKeyFileKeyValuePair *pair)
|
||||
+ GKeyFileKeyValuePair *pair,
|
||||
+ GList *sibling)
|
||||
{
|
||||
g_hash_table_replace (group->lookup_map, pair->key, pair);
|
||||
- group->key_value_pairs = g_list_prepend (group->key_value_pairs, pair);
|
||||
+ group->key_value_pairs = g_list_insert_before (group->key_value_pairs, sibling, pair);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -4047,12 +4050,18 @@ g_key_file_add_key (GKeyFile *key_file,
|
||||
const gchar *value)
|
||||
{
|
||||
GKeyFileKeyValuePair *pair;
|
||||
+ GList *lp;
|
||||
|
||||
pair = g_new (GKeyFileKeyValuePair, 1);
|
||||
pair->key = g_strdup (key);
|
||||
pair->value = g_strdup (value);
|
||||
|
||||
- g_key_file_add_key_value_pair (key_file, group, pair);
|
||||
+ /* skip group comment */
|
||||
+ lp = group->key_value_pairs;
|
||||
+ while (lp != NULL && ((GKeyFileKeyValuePair *) lp->data)->key == NULL)
|
||||
+ lp = lp->next;
|
||||
+
|
||||
+ g_key_file_add_key_value_pair (key_file, group, pair, lp);
|
||||
}
|
||||
|
||||
/**
|
||||
diff --git a/glib/tests/keyfile.c b/glib/tests/keyfile.c
|
||||
index 80cdc93d8f..2c8eca4ebc 100644
|
||||
--- a/glib/tests/keyfile.c
|
||||
+++ b/glib/tests/keyfile.c
|
||||
@@ -456,6 +456,15 @@ test_comments (void)
|
||||
check_name ("group comment", comment, group_comment, 0);
|
||||
g_free (comment);
|
||||
|
||||
+ g_test_bug ("https://gitlab.gnome.org/GNOME/glib/-/issues/3047");
|
||||
+
|
||||
+ /* check if adding a key to group N preserve group comment of group N+1 */
|
||||
+ g_key_file_set_string (keyfile, "group1", "key5", "value5");
|
||||
+ comment = g_key_file_get_comment (keyfile, "group2", NULL, &error);
|
||||
+ check_no_error (&error);
|
||||
+ check_name ("group comment", comment, group_comment, 0);
|
||||
+ g_free (comment);
|
||||
+
|
||||
g_test_bug ("https://gitlab.gnome.org/GNOME/glib/-/issues/104");
|
||||
|
||||
/* check if comments above another group than the first one are properly removed */
|
||||
--
|
||||
GitLab
|
||||
|
@ -1,90 +0,0 @@
|
||||
From 6e29fbec2dbc513e81252d0a83ab1e860c80c002 Mon Sep 17 00:00:00 2001
|
||||
From: Harald van Dijk <harald@gigawatt.nl>
|
||||
Date: Tue, 18 Jul 2023 18:26:43 +0100
|
||||
Subject: [PATCH] Revert "build/gmodule-2.0.pc: Move compiler flags from Libs
|
||||
to Cflags"
|
||||
|
||||
This reverts commit 004f48f4fc8adfccad51e2a7f4608c7fe3c28c7c.
|
||||
|
||||
Per the discussion on #3356, this change was prompted by a
|
||||
misunderstanding of ldflags/link_args, and it resulted in various other
|
||||
packages using glib no longer getting symbols exported. This commit
|
||||
restores the glib 2.76 behaviour.
|
||||
---
|
||||
gio/tests/meson.build | 2 +-
|
||||
gmodule/meson.build | 6 ++----
|
||||
meson.build | 10 +++++-----
|
||||
3 files changed, 8 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/gio/tests/meson.build b/gio/tests/meson.build
|
||||
index 8d9c87c20c..1a0edad1f6 100644
|
||||
--- a/gio/tests/meson.build
|
||||
+++ b/gio/tests/meson.build
|
||||
@@ -774,7 +774,7 @@ if not meson.is_cross_build()
|
||||
|
||||
resource_plugin += shared_module('resourceplugin',
|
||||
sources: ['resourceplugin.c', plugin_resources_c],
|
||||
- c_args : export_dynamic_cflags,
|
||||
+ link_args : export_dynamic_ldflags,
|
||||
dependencies : common_gio_tests_deps,
|
||||
install_dir : installed_tests_execdir,
|
||||
install_tag : 'tests',
|
||||
diff --git a/gmodule/meson.build b/gmodule/meson.build
|
||||
index f7b41536e3..da4d06cfb5 100644
|
||||
--- a/gmodule/meson.build
|
||||
+++ b/gmodule/meson.build
|
||||
@@ -115,24 +115,22 @@ pkg.generate(libgmodule,
|
||||
description : 'Dynamic module loader for GLib',
|
||||
)
|
||||
|
||||
-pkg.generate(libraries : [libgmodule],
|
||||
+pkg.generate(libraries : [libgmodule, export_dynamic_ldflags],
|
||||
requires : ['glib-2.0'],
|
||||
version : glib_version,
|
||||
variables : [supported_var],
|
||||
install_dir : glib_pkgconfigreldir,
|
||||
filebase : 'gmodule-export-2.0',
|
||||
- extra_cflags : export_dynamic_cflags,
|
||||
name : 'GModule',
|
||||
description : 'Dynamic module loader for GLib',
|
||||
)
|
||||
|
||||
-pkg.generate(libraries : [libgmodule],
|
||||
+pkg.generate(libraries : [libgmodule, export_dynamic_ldflags],
|
||||
requires : ['glib-2.0'],
|
||||
version : glib_version,
|
||||
variables : [supported_var],
|
||||
install_dir : glib_pkgconfigreldir,
|
||||
filebase : 'gmodule-2.0',
|
||||
- extra_cflags : export_dynamic_cflags,
|
||||
name : 'GModule',
|
||||
description : 'Dynamic module loader for GLib',
|
||||
)
|
||||
diff --git a/meson.build b/meson.build
|
||||
index c7b5346260..3588dbe117 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -2328,15 +2328,15 @@ if host_system == 'windows'
|
||||
# Autotools explicitly removed --Wl,--export-all-symbols from windows builds,
|
||||
# with no explanation. Do the same here for now but this could be revisited if
|
||||
# if causes issues.
|
||||
- export_dynamic_cflags = []
|
||||
+ export_dynamic_ldflags = []
|
||||
elif host_system == 'cygwin'
|
||||
- export_dynamic_cflags = ['-Wl,--export-all-symbols']
|
||||
+ export_dynamic_ldflags = ['-Wl,--export-all-symbols']
|
||||
elif host_system in ['darwin', 'ios']
|
||||
- export_dynamic_cflags = []
|
||||
+ export_dynamic_ldflags = []
|
||||
elif host_system == 'sunos'
|
||||
- export_dynamic_cflags = []
|
||||
+ export_dynamic_ldflags = []
|
||||
else
|
||||
- export_dynamic_cflags = ['-Wl,--export-dynamic']
|
||||
+ export_dynamic_ldflags = ['-Wl,--export-dynamic']
|
||||
endif
|
||||
|
||||
win32_cflags = []
|
||||
--
|
||||
GitLab
|
||||
|
12
glib2.spec
12
glib2.spec
@ -1,5 +1,5 @@
|
||||
Name: glib2
|
||||
Version: 2.77.0
|
||||
Version: 2.77.1
|
||||
Release: %autorelease
|
||||
Summary: A library of handy utility functions
|
||||
|
||||
@ -11,21 +11,11 @@ Source0: https://download.gnome.org/sources/glib/2.77/glib-%{version}.tar.xz
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1630260
|
||||
# https://gitlab.gnome.org/GNOME/glib/-/merge_requests/903
|
||||
Patch0: gnutls-hmac.patch
|
||||
# Avoid making anaconda crash
|
||||
# https://gitlab.gnome.org/GNOME/glib/-/issues/3054
|
||||
# https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3501
|
||||
Patch1: 0001-gmain-Add-a-missing-return-on-error-path-in-g_main_c.patch
|
||||
|
||||
# recent close_range() changes break CircleCI and GitHub actions -- we can remove this when
|
||||
# the baremetal Docker is updated there i.e. lets be a little bit pragmatic...
|
||||
Patch2: gspawn-eperm.patch
|
||||
|
||||
# https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3504
|
||||
Patch3: fix-missing-exported-symbols.patch
|
||||
|
||||
# https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3498
|
||||
Patch4: 3498.patch
|
||||
|
||||
BuildRequires: gcc
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: gettext
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (glib-2.77.0.tar.xz) = 0e2f327bcaa71d3a6b495272c97ff762726261e2010e4db91c6538ec5013060949dcba5ddadceded4f7bce079c5d1823e49ca0e3a041f7b0b46d79783e005343
|
||||
SHA512 (glib-2.77.1.tar.xz) = 0f32eb7dcc652a727331226324225864212e14d0b1adac4493eb92f34c562cabd50cf8a602dae1b877e7adb73e038d2cc1e8d641e71eab77497990af4afb4906
|
||||
|
Loading…
Reference in New Issue
Block a user