Hi,
one our user reported regression in ksh. Call from within ( cmd1; cmd2; ) list
changes environment.
I've simplified scripts to following reproducers to:
a)
RET=$(ksh -c '( function fx { export X=123; } ; fx; ); echo $X')
[ -z "$RET" ] && echo "works fine" || echo "bug present"
2010-03-09 is last working version, 2010-05-27 and newer (latest stable
included) are broken
b)
RET=$(ksh -c 'echo "/bin/true; function fx { export X=123; } ; fx;"
>/tmp/kshtest; ( . /tmp/kshtest >/dev/null ); echo $X; rm -f /tmp/kshtest')
[ -z "$RET" ] && echo "works fine" || echo "bug present"
2010-05-27 is last working version, 2010-06-21 and newer (latest stable
included) are broken
In short, the problem is, that something like this
( export X=123; ) #this is not reproducer
creates X variable even outside ( ) scope.
Michal
_______________________________________________
ast-developers mailing list
[email protected]
https://mailman.research.att.com/mailman/listinfo/ast-developers