Gentoo Archives: gentoo-commits

From: Mike Gilbert <floppym@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-apps/dbus/, sys-apps/dbus/files/
Date: Thu, 31 Mar 2022 16:25:34
Message-Id: 1648743878.327024d4f4606f13c70655d4b67d8b03c447b23f.floppym@gentoo
1 commit: 327024d4f4606f13c70655d4b67d8b03c447b23f
2 Author: Mike Gilbert <floppym <AT> gentoo <DOT> org>
3 AuthorDate: Thu Mar 31 16:23:53 2022 +0000
4 Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org>
5 CommitDate: Thu Mar 31 16:24:38 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=327024d4
7
8 sys-apps/dbus: backport fix for _dbus_reset_oom_score_adj
9
10 Closes: https://bugs.gentoo.org/834725
11 Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>
12
13 sys-apps/dbus/dbus-1.12.22.ebuild | 6 +++--
14 sys-apps/dbus/dbus-1.14.0.ebuild | 7 +++---
15 sys-apps/dbus/files/dbus-1.12.22-check-fd.patch | 33 +++++++++++++++++++++++++
16 3 files changed, 41 insertions(+), 5 deletions(-)
17
18 diff --git a/sys-apps/dbus/dbus-1.12.22.ebuild b/sys-apps/dbus/dbus-1.12.22.ebuild
19 index 7427d268d82c..1caf4c88cc06 100644
20 --- a/sys-apps/dbus/dbus-1.12.22.ebuild
21 +++ b/sys-apps/dbus/dbus-1.12.22.ebuild
22 @@ -60,8 +60,10 @@ DOC_CONTENTS="
23 TBD="${WORKDIR}/${P}-tests-build"
24
25 PATCHES=(
26 - "${FILESDIR}/${PN}-enable-elogind.patch"
27 - "${FILESDIR}/${PN}-daemon-optional.patch" # bug #653136
28 + "${FILESDIR}/dbus-enable-elogind.patch"
29 + "${FILESDIR}/dbus-daemon-optional.patch" # bug #653136
30 +
31 + "${FILESDIR}/dbus-1.12.22-check-fd.patch"
32 )
33
34 pkg_setup() {
35
36 diff --git a/sys-apps/dbus/dbus-1.14.0.ebuild b/sys-apps/dbus/dbus-1.14.0.ebuild
37 index 03e772f142c6..fa70a989b3d6 100644
38 --- a/sys-apps/dbus/dbus-1.14.0.ebuild
39 +++ b/sys-apps/dbus/dbus-1.14.0.ebuild
40 @@ -63,10 +63,11 @@ DOC_CONTENTS="
41 TBD="${WORKDIR}/${P}-tests-build"
42
43 PATCHES=(
44 - "${FILESDIR}/${PN}-enable-elogind.patch"
45 - "${FILESDIR}/${PN}-daemon-optional.patch" # bug #653136
46 + "${FILESDIR}/dbus-enable-elogind.patch"
47 + "${FILESDIR}/dbus-daemon-optional.patch" # bug #653136
48
49 - "${FILESDIR}/${P}-x-autoconf-fixes.patch"
50 + "${FILESDIR}/dbus-1.14.0-x-autoconf-fixes.patch"
51 + "${FILESDIR}/dbus-1.12.22-check-fd.patch"
52 )
53
54 pkg_setup() {
55
56 diff --git a/sys-apps/dbus/files/dbus-1.12.22-check-fd.patch b/sys-apps/dbus/files/dbus-1.12.22-check-fd.patch
57 new file mode 100644
58 index 000000000000..9038411bb13b
59 --- /dev/null
60 +++ b/sys-apps/dbus/files/dbus-1.12.22-check-fd.patch
61 @@ -0,0 +1,33 @@
62 +From 769a0462befb9829594a76e675526aba8579317e Mon Sep 17 00:00:00 2001
63 +From: Mike Gilbert <floppym@g.o>
64 +Date: Sun, 27 Mar 2022 15:09:48 -0400
65 +Subject: [PATCH] sysdeps-unix: check fd before calling
66 + _dbus_fd_set_close_on_exec()
67 +
68 +If /proc/self/oom_score_adj does not exist, fd will invalid (-1).
69 +Attempting to set the CLOEXEC flag will obviously fail, and we lose the
70 +original errno value from open().
71 +
72 +Bug: https://bugs.gentoo.org/834725
73 +Signed-off-by: Mike Gilbert <floppym@g.o>
74 +---
75 + dbus/dbus-sysdeps-util-unix.c | 3 ++-
76 + 1 file changed, 2 insertions(+), 1 deletion(-)
77 +
78 +diff --git a/dbus/dbus-sysdeps-util-unix.c b/dbus/dbus-sysdeps-util-unix.c
79 +index 314ce64b..8f079cbf 100644
80 +--- a/dbus/dbus-sysdeps-util-unix.c
81 ++++ b/dbus/dbus-sysdeps-util-unix.c
82 +@@ -1633,7 +1633,8 @@ _dbus_reset_oom_score_adj (const char **error_str_p)
83 + if (fd < 0)
84 + {
85 + fd = open ("/proc/self/oom_score_adj", O_RDWR);
86 +- _dbus_fd_set_close_on_exec (fd);
87 ++ if (fd >= 0)
88 ++ _dbus_fd_set_close_on_exec (fd);
89 + }
90 +
91 + if (fd >= 0)
92 +--
93 +GitLab
94 +