Dr. Werner Fink 2011-07-04 15:44:29 +00:00 committed by Git OBS Bridge
parent 8774407a03
commit d678d6138a
3 changed files with 19 additions and 0 deletions

View File

@ -1,3 +1,8 @@
-------------------------------------------------------------------
Mon Jul 4 15:19:20 UTC 2011 - werner@suse.de
- Avoid crash on unset of function within the same function
-------------------------------------------------------------------
Tue Jun 14 11:36:28 UTC 2011 - werner@suse.de

View File

@ -77,6 +77,7 @@ Patch22: ksh93-eintr.dif
Patch23: ksh93-array.dif
Patch24: ksh93-pipe.dif
Patch25: ksh93-argv.dif
Patch26: ksh93-unset-f.dif
%global use_suid_exe 0
%global use_locale 1
%global debug_memleak 0
@ -153,6 +154,7 @@ find share/ -type d -a -empty | xargs -r rm -vrf
%patch23
%patch24
%patch25
%patch26
%build
TMPDIR=$(mktemp -d /tmp/ksh-build.XXXXXX) || exit 1

12
ksh93-unset-f.dif Normal file
View File

@ -0,0 +1,12 @@
--- src/cmd/ksh93/sh/xec.c
+++ src/cmd/ksh93/sh/xec.c 2011-07-04 15:09:52.252426415 +0000
@@ -2780,7 +2780,8 @@ int sh_funscope(int argn, char *argv[],i
jmpval = sigsetjmp(buff.buff,0);
if(!fun)
{
- shp->st.filename = fp->node->nvalue.rp->fname;
+ if (fp->node->nvalue.rp)
+ shp->st.filename = fp->node->nvalue.rp->fname;
shp->st.funname = nv_name(fp->node);
shp->last_root = nv_dict(DOTSHNOD);
nv_putval(SH_PATHNAMENOD,shp->st.filename,NV_NOFREE);