Man; I should have sent it to them when we first saw it.... I'll add this
to our patch and send it upstream.

---------- Forwarded message ----------
From: Chet Ramey <[email protected]>
Date: Fri, Aug 5, 2016 at 3:22 PM
Subject: Re: Test exit status misinterpreted in scripts when buit without
job control
To: Dan Cross <[email protected]>
Cc: [email protected], [email protected]


On 8/4/16 5:04 PM, Dan Cross wrote:

>     Thanks for the report.  I took a quick look at this, and it's not
disabling
>     job control that does it: it's disabling both job control and nls.
>     Disabling either one while leaving the other enabled doesn't produce
this
>     error (which only happens in the case where you run a script with the
>     execute bit set without a #! line after running an executable that
causes
>     the shell to call waitpid()).  It's a strange set of circumstances.
>     I'll see what I can find.
>
>
> Thanks, Chet. FYI, I tried building for the research kernel with NLS
> enabled and am still seeing the problem.

It turns out that the set of circumstances I listed above is essential,
and order-specific.  I tested in a slightly different order when I built
a version without nls and job control, and that was the sequence that
triggers the bug.  It's very specific.

Anyway, I fixed it and the fix will be in the next release.  If you
want to move forward, you can apply the attached workaround, which is not
the change I made in the current development version.

Chet

--
``The lyf so short, the craft so long to lerne.'' - Chaucer
                 ``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, UTech, CWRU    [email protected]    http://cnswww.cns.cwru.edu/~
chet/

-- 
You received this message because you are subscribed to the Google Groups 
"Akaros" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
For more options, visit https://groups.google.com/d/optout.
*** execute_cmd.c~      2016-06-22 14:46:01.000000000 -0400
--- execute_cmd.c       2016-08-05 15:20:09.190086126 -0400
***************
*** 5148,5151 ****
--- 5148,5153 ----
    set_sigchld_handler ();
    init_job_stats ();
+ #else
+   stop_making_children ();
  #endif /* JOB_CONTROL */
  

Reply via email to