From: havner Date: Fri, 18 Feb 2005 13:14:43 +0000 (+0000) Subject: - makes bash work on 2.4 with new glibc (WCONTINUED is unhandled by 2.4) X-Git-Tag: auto/th/bash-3_0-5~2 X-Git-Url: http://git.pld-linux.org/?p=packages%2Fbash.git;a=commitdiff_plain;h=7526fd867d66a5f11b3b641b193bb1b083e6fa04 - makes bash work on 2.4 with new glibc (WCONTINUED is unhandled by 2.4) Changed files: bash-WCONTINUED.patch -> 1.1 --- diff --git a/bash-WCONTINUED.patch b/bash-WCONTINUED.patch new file mode 100644 index 0000000..a51901e --- /dev/null +++ b/bash-WCONTINUED.patch @@ -0,0 +1,26 @@ +--- bash-3.0/jobs.c.jobs 2004-09-08 16:07:25.081427747 +0100 ++++ bash-3.0/jobs.c 2004-09-08 16:18:06.698604033 +0100 +@@ -2475,6 +2475,7 @@ + PROCESS *child; + pid_t pid; + int call_set_current, last_stopped_job, job, children_exited, waitpid_flags; ++ static int wcontinued_not_supported = 0; + + call_set_current = children_exited = 0; + last_stopped_job = NO_JOB; +@@ -2488,7 +2489,15 @@ + : 0; + if (sigchld || block == 0) + waitpid_flags |= WNOHANG; ++ retry: ++ if (wcontinued_not_supported) ++ waitpid_flags &= ~WCONTINUED; + pid = WAITPID (-1, &status, waitpid_flags); ++ if (errno == EINVAL) ++ { ++ wcontinued_not_supported = 1; ++ goto retry; ++ } + + /* The check for WNOHANG is to make sure we decrement sigchld only + if it was non-zero before we called waitpid. */