do not hang after return code 12
This commit is contained in:
parent
1f85ad675d
commit
c7f72d5f3b
2
.gitignore
vendored
2
.gitignore
vendored
@ -42,3 +42,5 @@ INIT.2010-07-01.tgz
|
|||||||
/INIT.2012-02-02.tgz
|
/INIT.2012-02-02.tgz
|
||||||
/ast-ksh.2012-02-14.tgz
|
/ast-ksh.2012-02-14.tgz
|
||||||
/INIT.2012-02-14.tgz
|
/INIT.2012-02-14.tgz
|
||||||
|
/ast-ksh.2012-02-29.tgz
|
||||||
|
/INIT.2012-02-29.tgz
|
||||||
|
@ -1,16 +0,0 @@
|
|||||||
diff -up ksh-20120214/src/cmd/ksh93/sh/macro.c.tildafix ksh-20120214/src/cmd/ksh93/sh/macro.c
|
|
||||||
--- ksh-20120214/src/cmd/ksh93/sh/macro.c.tildafix 2012-03-13 10:09:36.895655554 +0100
|
|
||||||
+++ ksh-20120214/src/cmd/ksh93/sh/macro.c 2012-03-13 10:11:54.751591156 +0100
|
|
||||||
@@ -2719,7 +2719,12 @@ skip:
|
|
||||||
if(!logins_tree)
|
|
||||||
logins_tree = dtopen(&_Nvdisc,Dtbag);
|
|
||||||
if(np=nv_search(string,logins_tree,NV_ADD))
|
|
||||||
+ {
|
|
||||||
+ c = shp->subshell;
|
|
||||||
+ shp->subshell = 0;
|
|
||||||
nv_putval(np, pw->pw_dir,0);
|
|
||||||
+ shp->subshell = c;
|
|
||||||
+ }
|
|
||||||
return(pw->pw_dir);
|
|
||||||
}
|
|
||||||
|
|
21
ksh-20120229-rc12hang.patch
Normal file
21
ksh-20120229-rc12hang.patch
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
diff -up ksh-20120229/src/cmd/ksh93/sh/xec.c.rc12hang ksh-20120229/src/cmd/ksh93/sh/xec.c
|
||||||
|
--- ksh-20120229/src/cmd/ksh93/sh/xec.c.rc12hang 2012-03-02 17:37:09.000000000 +0100
|
||||||
|
+++ ksh-20120229/src/cmd/ksh93/sh/xec.c 2012-03-19 11:29:41.002964239 +0100
|
||||||
|
@@ -1623,7 +1623,7 @@ int sh_exec(register const Shnode_t *t,
|
||||||
|
else
|
||||||
|
job_wait(parent);
|
||||||
|
if(shp->topfd > topfd)
|
||||||
|
- sh_iorestore(shp,topfd,sh.exitval);
|
||||||
|
+ sh_iorestore(shp,topfd,0);
|
||||||
|
if(usepipe && tsetio && subdup)
|
||||||
|
iounpipe(shp);
|
||||||
|
if(!sh_isoption(SH_MONITOR))
|
||||||
|
@@ -3079,7 +3079,7 @@ pid_t _sh_fork(Shell_t *shp,register pid
|
||||||
|
if(!tsetio || !subdup)
|
||||||
|
{
|
||||||
|
if(shp->topfd > restorefd)
|
||||||
|
- sh_iorestore(shp,restorefd,sh.exitval);
|
||||||
|
+ sh_iorestore(shp,restorefd,0);
|
||||||
|
iounpipe(shp);
|
||||||
|
}
|
||||||
|
}
|
15
ksh.spec
15
ksh.spec
@ -1,11 +1,11 @@
|
|||||||
%global releasedate 2012-02-14
|
%global releasedate 2012-02-29
|
||||||
|
|
||||||
Name: ksh
|
Name: ksh
|
||||||
Summary: The Original ATT Korn Shell
|
Summary: The Original ATT Korn Shell
|
||||||
URL: http://www.kornshell.com/
|
URL: http://www.kornshell.com/
|
||||||
Group: System Environment/Shells
|
Group: System Environment/Shells
|
||||||
License: EPL
|
License: EPL
|
||||||
Version: 20120214
|
Version: 20120229
|
||||||
Release: 2%{?dist}
|
Release: 2%{?dist}
|
||||||
Source0: http://www.research.att.com/~gsf/download/tgz/ast-ksh.%{releasedate}.tgz
|
Source0: http://www.research.att.com/~gsf/download/tgz/ast-ksh.%{releasedate}.tgz
|
||||||
Source1: http://www.research.att.com/~gsf/download/tgz/INIT.%{releasedate}.tgz
|
Source1: http://www.research.att.com/~gsf/download/tgz/INIT.%{releasedate}.tgz
|
||||||
@ -20,8 +20,7 @@ Patch1: ksh-20070328-builtins.patch
|
|||||||
#fix regression test suite to be usable during packagebuild - Fedora/RHEL specific
|
#fix regression test suite to be usable during packagebuild - Fedora/RHEL specific
|
||||||
Patch2: ksh-20100826-fixregr.patch
|
Patch2: ksh-20100826-fixregr.patch
|
||||||
|
|
||||||
# for ksh <= 2012-03-09, fix tilda expansion, rhbz#802565
|
Patch3: ksh-20120229-rc12hang.patch
|
||||||
Patch3: ksh-20120214-tildafix.patch
|
|
||||||
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
Conflicts: pdksh
|
Conflicts: pdksh
|
||||||
@ -43,7 +42,7 @@ with "sh" (the Bourne Shell).
|
|||||||
%setup -q -T -D -a 1
|
%setup -q -T -D -a 1
|
||||||
%patch1 -p1 -b .builtins
|
%patch1 -p1 -b .builtins
|
||||||
%patch2 -p1 -b .fixregr
|
%patch2 -p1 -b .fixregr
|
||||||
%patch3 -p1 -b .tildafix
|
%patch3 -p1 -b .rc12hang
|
||||||
|
|
||||||
#/dev/fd test does not work because of mock
|
#/dev/fd test does not work because of mock
|
||||||
sed -i 's|ls /dev/fd|ls /proc/self/fd|' src/cmd/ksh93/features/options
|
sed -i 's|ls /dev/fd|ls /proc/self/fd|' src/cmd/ksh93/features/options
|
||||||
@ -129,6 +128,12 @@ fi
|
|||||||
rm -rf $RPM_BUILD_ROOT
|
rm -rf $RPM_BUILD_ROOT
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Mar 19 2012 Michal Hlavinka <mhlavink@redhat.com> - 20120229-2
|
||||||
|
- do not hang after return code 12
|
||||||
|
|
||||||
|
* Wed Mar 14 2012 Michal Hlavinka <mhlavink@redhat.com> - 20120229-1
|
||||||
|
- ksh updated to 2012-02-29
|
||||||
|
|
||||||
* Tue Mar 13 2012 Michal Hlavinka <mhlavink@redhat.com> - 20120214-2
|
* Tue Mar 13 2012 Michal Hlavinka <mhlavink@redhat.com> - 20120214-2
|
||||||
- fix tilda expansion in scripts
|
- fix tilda expansion in scripts
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user