diff --git a/ksh.changes b/ksh.changes index 8270d68..f1464ba 100644 --- a/ksh.changes +++ b/ksh.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Fri Feb 15 14:40:41 UTC 2013 - werner@suse.de + +- Avoid segmentation fault on typeset on ENV variable (bnc#803613) + ------------------------------------------------------------------- Thu Feb 7 13:56:58 UTC 2013 - werner@suse.de diff --git a/ksh.spec b/ksh.spec index a3db03b..d06aa79 100644 --- a/ksh.spec +++ b/ksh.spec @@ -112,7 +112,7 @@ Patch24: ksh93-builtin.dif # is part of ksh93u+ 2012-06-28 # PATCH-EXTEND-UPSTREAM astksh_builtin_poll20120806_001.diff [bnc#779888] Patch27: astksh_builtin_poll20120806_001.diff -# PATCH-FIX-UPSTREAM ksh93-env.dif [bnc#785266] +# PATCH-FIX-UPSTREAM ksh93-env.dif [bnc#785266, bnc#803613] Patch28: ksh93-env.dif # PATCH-FIX-UPSTREAM ksh93-zerofill.dif [bnc#785360] Patch29: ksh93-zerofill.dif @@ -366,6 +366,8 @@ fi RPM_OPT_FLAGS="${RPM_OPT_FLAGS//-O[s0-9]/-O}" cflags -mno-powerpc64 RPM_OPT_FLAGS HOSTTYPE=linux.powerpc + _PACKAGE_HOSTTYPE_=linux.powerpc + export _PACKAGE_HOSTTYPE_ ;; ppc64|powerpc64) RPM_OPT_FLAGS="${RPM_OPT_FLAGS//-O[s0-9]/-O}" diff --git a/ksh93-env.dif b/ksh93-env.dif index e992d35..89b679a 100644 --- a/ksh93-env.dif +++ b/ksh93-env.dif @@ -1,3 +1,14 @@ +--- src/cmd/ksh93/sh/init.c ++++ src/cmd/ksh93/sh/init.c 2013-02-15 13:29:57.129444048 +0000 +@@ -336,6 +336,8 @@ static void put_restricted(register Namv + int path_scoped = 0, fpath_scoped=0; + Pathcomp_t *pp; + char *name = nv_name(np); ++ if (!shp) ++ shp = sh_getinterp(); + if(!(flags&NV_RDONLY) && sh_isoption(SH_RESTRICTED)) + errormsg(SH_DICT,ERROR_exit(1),e_restricted,nv_name(np)); + if(np==PATHNOD || (path_scoped=(strcmp(name,PATHNOD->nvname)==0))) --- src/cmd/ksh93/sh/name.c +++ src/cmd/ksh93/sh/name.c 2012-10-16 12:12:43.000000000 +0000 @@ -2162,7 +2162,7 @@ static void attstore(register Namval_t *