.
OBS-URL: https://build.opensuse.org/package/show/shells/ksh?expand=0&rev=97
This commit is contained in:
parent
d35793240d
commit
5b6d55b93b
@ -1,3 +1,8 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Feb 14 15:36:22 UTC 2012 - werner@suse.de
|
||||
|
||||
- Fix a nasty crash in IFS handling
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 10 17:11:36 UTC 2012 - werner@suse.de
|
||||
|
||||
|
5
ksh.spec
5
ksh.spec
@ -19,11 +19,10 @@
|
||||
|
||||
Name: ksh
|
||||
%global date 2012-02-02
|
||||
%global use_suid_exe 0
|
||||
%if %suse_version > 1210
|
||||
%global use_suid_exe 1
|
||||
%global use_opt_bins 1
|
||||
%else
|
||||
%global use_suid_exe 0
|
||||
%global use_opt_bins 0
|
||||
%endif
|
||||
%if !0%{?qemu_user_space_build:1}
|
||||
@ -469,6 +468,7 @@ fi
|
||||
if test $((IGNORED & SIGPIPE)) -eq 0 ; then
|
||||
${SHELL} -c 'g="false"; trap "print -u2 PIPED; \$g && exit 0 ; g=true" PIPE ; while true ; do echo hello ; done' | head -n 10
|
||||
fi
|
||||
${SHELL} -c 'function g { IFS= ; }; function f { typeset IFS; (g); : $V ; }; f; f'
|
||||
LANG=en_US.UTF-8
|
||||
strace $MEMORY -o '!%{S:31}' ${SHELL} %{S:10} 400
|
||||
strace $MEMORY -o '!%{S:31}' ${SHELL} %{S:10} 4000
|
||||
@ -482,6 +482,7 @@ fi
|
||||
if test $((IGNORED & SIGPIPE)) -eq 0 ; then
|
||||
${SHELL} -c 'g="false"; trap "print -u2 PIPED; \$g && exit 0 ; g=true" PIPE ; while true ; do echo hello ; done' | head -n 10
|
||||
fi
|
||||
${SHELL} -c 'function g { IFS= ; }; function f { typeset IFS; (g); : $V ; }; f; f'
|
||||
LANG=POSIX
|
||||
killall -q -s 9 ${SHELL} || true
|
||||
popd
|
||||
|
20
ksh93.dif
20
ksh93.dif
@ -487,3 +487,23 @@
|
||||
chmodf = lchmod;
|
||||
goto commit;
|
||||
#else
|
||||
--- src/cmd/ksh93/sh/init.c
|
||||
+++ src/cmd/ksh93/sh/init.c 2012-02-16 13:03:34.073933754 +0000
|
||||
@@ -512,9 +512,14 @@ static void put_ifs(register Namval_t* n
|
||||
ip->ifsnp = 0;
|
||||
if(!val)
|
||||
{
|
||||
- fp = nv_stack(np, NIL(Namfun_t*));
|
||||
- if(fp && !fp->nofree)
|
||||
- free((void*)fp);
|
||||
+ Namfun_t *xp = nv_stack(np, NIL(Namfun_t*));
|
||||
+ if(xp)
|
||||
+ {
|
||||
+ if(xp == fp)
|
||||
+ xp->nofree = 1;
|
||||
+ if(xp->nofree == 0)
|
||||
+ free((void*)xp);
|
||||
+ }
|
||||
}
|
||||
if(val != np->nvalue.cp)
|
||||
nv_putv(np, val, flags, fp);
|
||||
|
Loading…
Reference in New Issue
Block a user