Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: Segfault in =( ) substitution



On Fri, Dec 21, 2012 at 05:01:26PM +0800, Han Pingtian wrote:
> 
> commit ad92cb3203e5d95be91019633e8f1f5835b12794
> Author: Peter Stephenson <pws@xxxxxxxxxxxxxxxxxxxxx>
> Date:   Thu Oct 11 16:36:14 2012 +0000
> 
>     30724: shell code optimisd to use execsimple() doesn't have a valid
>     thisjob
> 
>     diff --git a/ChangeLog b/ChangeLog
>     index 9768aa8..5a69f01 100644
>     --- a/ChangeLog
>     +++ b/ChangeLog
>     @@ -1,3 +1,8 @@
>     +2012-10-11  Peter Stephenson  <pws@xxxxxxx>
>     +
>     +       * 30724: Src/exec.c, Src/jobs.c: shell code optimised to use
>     +       execsimple() doesn't have a valid thisjob.
>     +
>      2012-10-09  Peter Stephenson  <pws@xxxxxxx>
> 
> ... ...

And it looks like I cannot reproduce the crash reported in 30723 with
the build without this commit at all. Maybe the problem of 30723 isn't
caused by reasons we trusted at that time? 

I first checkout a 'detached HEAD' by 'git checkout 34ed3ea', where the
34ed3ea commit is just before ad92cb3 commit. And it looks the build
works just fine:

localhost% cat ./t.sh
precmd () {
   {}
}
localhost% source t.sh
localhost% type -f precmd
precmd () {
        {

        }
}
localhost% sleep 50 &; sleep 30
[1] 10503
^Z
zsh: suspended  sleep 30
localhost%
[1]  - done       sleep 50
localhost%

Please correct me if I'm missing something here. Thanks.



Messages sorted by: Reverse Date, Date, Thread, Author