1 |
commit: b3cd383722ae22bc2567f1b4f8a875e79dd56bca |
2 |
Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org> |
3 |
AuthorDate: Wed May 9 11:31:34 2018 +0000 |
4 |
Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org> |
5 |
CommitDate: Wed May 9 11:31:50 2018 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b3cd3837 |
7 |
|
8 |
app-shells/dash: Fixed subshell regression. |
9 |
|
10 |
See https://patchwork.kernel.org/patch/10382199/ |
11 |
|
12 |
Closes: https://bugs.gentoo.org/655320 |
13 |
Package-Manager: Portage-2.3.36, Repoman-2.3.9 |
14 |
|
15 |
.../dash/{dash-0.5.10.ebuild => dash-0.5.10-r1.ebuild} | 5 ++++- |
16 |
app-shells/dash/files/dash-0.5.10-subshells.patch | 16 ++++++++++++++++ |
17 |
2 files changed, 20 insertions(+), 1 deletion(-) |
18 |
|
19 |
diff --git a/app-shells/dash/dash-0.5.10.ebuild b/app-shells/dash/dash-0.5.10-r1.ebuild |
20 |
similarity index 95% |
21 |
rename from app-shells/dash/dash-0.5.10.ebuild |
22 |
rename to app-shells/dash/dash-0.5.10-r1.ebuild |
23 |
index 72821681d9b..97e4202bc4d 100644 |
24 |
--- a/app-shells/dash/dash-0.5.10.ebuild |
25 |
+++ b/app-shells/dash/dash-0.5.10-r1.ebuild |
26 |
@@ -27,7 +27,10 @@ DEPEND="${RDEPEND} |
27 |
virtual/pkgconfig |
28 |
libedit? ( static? ( dev-libs/libedit[static-libs] ) )" |
29 |
|
30 |
-PATCHES=( "${FILESDIR}"/${PN}-0.5.9.1-format-security.patch ) |
31 |
+PATCHES=( |
32 |
+ "${FILESDIR}"/${PN}-0.5.9.1-format-security.patch |
33 |
+ "${FILESDIR}"/${P}-subshells.patch |
34 |
+) |
35 |
|
36 |
src_prepare() { |
37 |
if [[ -n "${DEB_PATCH}" ]] ; then |
38 |
|
39 |
diff --git a/app-shells/dash/files/dash-0.5.10-subshells.patch b/app-shells/dash/files/dash-0.5.10-subshells.patch |
40 |
new file mode 100644 |
41 |
index 00000000000..5943db11e69 |
42 |
--- /dev/null |
43 |
+++ b/app-shells/dash/files/dash-0.5.10-subshells.patch |
44 |
@@ -0,0 +1,16 @@ |
45 |
+https://bugs.gentoo.org/655320 |
46 |
+https://patchwork.kernel.org/patch/10382199/ |
47 |
+ |
48 |
+--- dash-0.5.10/src/jobs.c |
49 |
++++ dash-0.5.10/src/jobs.c |
50 |
+@@ -975,8 +975,8 @@ |
51 |
+ int st; |
52 |
+ |
53 |
+ TRACE(("waitforjob(%%%d) called\n", jp ? jobno(jp) : 0)); |
54 |
+- while ((jp && jp->state == JOBRUNNING) || gotsigchld) |
55 |
+- dowait(DOWAIT_BLOCK, jp); |
56 |
++ while (jp ? jp->state == JOBRUNNING : gotsigchld) |
57 |
++ dowait(jp ? DOWAIT_BLOCK : DOWAIT_NORMAL, jp); |
58 |
+ if (!jp) |
59 |
+ return exitstatus; |
60 |
+ st = getstatus(jp); |