1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
From 243900000f145eddc6b6bf1546400a9556bb2762 Mon Sep 17 00:00:00 2001
Message-Id: <243900000f145eddc6b6bf1546400a9556bb2762.1632223485.git.maciej.zenon.borzecki@canonical.com>
From: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
Date: Tue, 27 Jul 2021 09:46:29 +0200
Subject: [PATCH] cmd/libsnap-confine-private: g_spawn_check_exit_status is
deprecated since glib 2.69
With https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1967 the
g_spawn_check_exit_status call is flagged as deprecated now. This also broke in
F35 mass rebuild in Rawhide:
make[1]: Leaving directory '/builddir/build/BUILD/snapd-2.51/cmd'
libsnap-confine-private/test-utils.c: In function 'rm_rf_tmp':
libsnap-confine-private/test-utils.c:63:9: error: 'g_spawn_check_exit_status' is deprecated: Use 'g_spawn_check_wait_status' instead [-Werror=deprecated-declarations]
63 | g_assert_true(g_spawn_check_exit_status(exit_status, NULL));
| ^~~~~~~~~~~~~
In file included from /usr/include/glib-2.0/glib.h:81,
from libsnap-confine-private/test-utils.c:24:
/usr/include/glib-2.0/glib/gspawn.h:280:10: note: declared here
280 | gboolean g_spawn_check_exit_status (gint wait_status,
| ^~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
make[1]: *** [Makefile:2705: libsnap-confine-private/libsnap_confine_private_unit_tests-test-utils.o] Error 1
make[1]: *** Waiting for unfinished jobs....
Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
---
cmd/libsnap-confine-private/test-utils.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/cmd/libsnap-confine-private/test-utils.c b/cmd/libsnap-confine-private/test-utils.c
index c3e17a18d91b32da04f5febc802926942011ca9c..5cf4eb53de693ad17294c5eede3bd05339395878 100644
--- a/cmd/libsnap-confine-private/test-utils.c
+++ b/cmd/libsnap-confine-private/test-utils.c
@@ -23,6 +23,11 @@
#include <glib.h>
+#if !GLIB_CHECK_VERSION(2, 69, 0)
+// g_spawn_check_exit_status is considered deprecated since 2.69
+#define g_spawn_check_wait_status(x, y) (g_spawn_check_exit_status (x, y))
+#endif
+
void rm_rf_tmp(const char *dir)
{
// Sanity check, don't remove anything that's not in the temporary
@@ -60,7 +65,7 @@ void rm_rf_tmp(const char *dir)
(working_directory, argv, envp, flags, child_setup,
user_data, standard_output, standard_error, &exit_status,
&error));
- g_assert_true(g_spawn_check_exit_status(exit_status, NULL));
+ g_assert_true(g_spawn_check_wait_status(exit_status, NULL));
if (error != NULL) {
g_test_message("cannot remove temporary directory: %s\n",
error->message);
--
2.33.0
|