- updated to 2010-05-27
This commit is contained in:
parent
e3b3c9380a
commit
f8aa9c6019
@ -1,2 +1,2 @@
|
|||||||
ast-ksh.2010-03-09.tgz
|
ast-ksh.2010-05-27.tgz
|
||||||
INIT.2010-03-09.tgz
|
INIT.2010-05-27.tgz
|
||||||
|
@ -1,23 +0,0 @@
|
|||||||
diff -up ksh-20090630/src/cmd/ksh93/sh/jobs.c.jlist ksh-20090630/src/cmd/ksh93/sh/jobs.c
|
|
||||||
--- ksh-20090630/src/cmd/ksh93/sh/jobs.c.jlist 2009-04-30 00:07:32.000000000 +0200
|
|
||||||
+++ ksh-20090630/src/cmd/ksh93/sh/jobs.c 2009-08-27 08:51:48.028116714 +0200
|
|
||||||
@@ -1745,6 +1745,19 @@ static int job_chksave(register pid_t pi
|
|
||||||
jpold = jp;
|
|
||||||
jp = jp->next;
|
|
||||||
}
|
|
||||||
+ if(jp && (jp==jpold || count<0))
|
|
||||||
+ {
|
|
||||||
+ Sfio_t *log = sfopen((Sfio_t*)0,"/tmp/kshlog","a");
|
|
||||||
+ if(log)
|
|
||||||
+ {
|
|
||||||
+ fchmod(sffileno(log),S_IRUSR|S_IRGRP|S_IROTH|S_IWUSR|S_IWGRP|S_IWOTH);
|
|
||||||
+ sfprintf(log,"chksave loop jp==jpold=%d jpold=%p jp->pid=%d pid=%d count=%d\n",jp==jpold,jpold,jp->pid,pid,bck.count);
|
|
||||||
+ sfclose(log);
|
|
||||||
+ sfsync(log);
|
|
||||||
+ errormsg(SH_DICT,ERROR_warn(0),"job list infinite loop -- this should not happen");
|
|
||||||
+ abort();
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
if(jp)
|
|
||||||
{
|
|
||||||
r = 0;
|
|
@ -1,11 +0,0 @@
|
|||||||
--- a/src/cmd/ksh93/sh/jobs.c 2010-03-10 23:57:41.000000000 +0530
|
|
||||||
+++ b/src/cmd/ksh93/sh/jobs.c 2010-04-20 18:12:15.000000000 +0530
|
|
||||||
@@ -1341,7 +1341,7 @@ int job_wait(register pid_t pid)
|
|
||||||
sfprintf(sfstderr,"ksh: job line %4d: wait pid=%d critical=%d flags=%o\n",__LINE__,getpid(),job.in_critical,pw->p_flag);
|
|
||||||
#endif /* DEBUG*/
|
|
||||||
errno = 0;
|
|
||||||
- if(sh.coutpipe>=0 && sh.cpid==lastpid)
|
|
||||||
+ if(sh.coutpipe>=0 && sh.cpid && sh.cpid==lastpid )
|
|
||||||
{
|
|
||||||
sh_close(sh.coutpipe);
|
|
||||||
sh_close(sh.cpipe[1]);
|
|
@ -1,14 +0,0 @@
|
|||||||
diff -up ksh-20100309/src/cmd/ksh93/bltins/whence.c.fixwh ksh-20100309/src/cmd/ksh93/bltins/whence.c
|
|
||||||
--- ksh-20100309/src/cmd/ksh93/bltins/whence.c.fixwh 2008-09-19 16:13:40.000000000 +0200
|
|
||||||
+++ ksh-20100309/src/cmd/ksh93/bltins/whence.c 2010-04-29 12:03:22.744013139 +0200
|
|
||||||
@@ -234,7 +234,10 @@ static int whence(Shell_t *shp,char **ar
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if(flags&Q_FLAG)
|
|
||||||
+ {
|
|
||||||
r |= !cp;
|
|
||||||
+ pp = 0;
|
|
||||||
+ }
|
|
||||||
else if(cp)
|
|
||||||
{
|
|
||||||
if(flags&V_FLAG)
|
|
@ -1,11 +0,0 @@
|
|||||||
diff -up ksh-20100309/src/cmd/ksh93/sh/path.c.pathcrash ksh-20100309/src/cmd/ksh93/sh/path.c
|
|
||||||
--- ksh-20100309/src/cmd/ksh93/sh/path.c.pathcrash 2010-05-05 14:05:41.670681132 +0200
|
|
||||||
+++ ksh-20100309/src/cmd/ksh93/sh/path.c 2010-05-05 14:05:41.707584330 +0200
|
|
||||||
@@ -1437,6 +1437,7 @@ static Pathcomp_t *path_addcomp(Pathcomp
|
|
||||||
}
|
|
||||||
for(pp=first, oldpp=0; pp; oldpp=pp, pp=pp->next);
|
|
||||||
pp = newof((Pathcomp_t*)0,Pathcomp_t,1,len+1);
|
|
||||||
+ pp->shp = sh_getinterp();
|
|
||||||
pp->refcount = 1;
|
|
||||||
memcpy((char*)(pp+1),name,len+1);
|
|
||||||
pp->name = (char*)(pp+1);
|
|
@ -1,15 +0,0 @@
|
|||||||
The ed_viread method is used for reading when locale has an encoding that uses
|
|
||||||
wide characters (utf8 for example). So we need to cook the raw'ed terminal
|
|
||||||
before exit, otherwise we end up with a terminal that cannot echo.
|
|
||||||
|
|
||||||
--- a/src/cmd/ksh93/sh/fault.c 2010-01-18 21:41:18.000000000 +0530
|
|
||||||
+++ b/src/cmd/ksh93/sh/fault.c 2010-03-10 21:23:56.000000000 +0530
|
|
||||||
@@ -614,7 +614,7 @@ void sh_done(void *ptr, register int sig
|
|
||||||
sh_accend();
|
|
||||||
#endif /* SHOPT_ACCT */
|
|
||||||
#if SHOPT_VSH || SHOPT_ESH
|
|
||||||
- if(sh_isoption(SH_EMACS)||sh_isoption(SH_VI)||sh_isoption(SH_GMACS))
|
|
||||||
+ if(mbwide()||sh_isoption(SH_EMACS)||sh_isoption(SH_VI)||sh_isoption(SH_GMACS))
|
|
||||||
tty_cooked(-1);
|
|
||||||
#endif
|
|
||||||
#ifdef JOBS
|
|
29
ksh.spec
29
ksh.spec
@ -1,12 +1,12 @@
|
|||||||
%define releasedate 2010-03-09
|
%define releasedate 2010-05-27
|
||||||
|
|
||||||
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: CPL
|
License: CPL
|
||||||
Version: 20100309
|
Version: 20100527
|
||||||
Release: 6%{?dist}
|
Release: 1%{?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
|
||||||
Source3: kshrc.rhs
|
Source3: kshrc.rhs
|
||||||
@ -15,21 +15,6 @@ Source4: dotkshrc
|
|||||||
#don't use not wanted/needed builtins - Fedora specific
|
#don't use not wanted/needed builtins - Fedora specific
|
||||||
Patch1: ksh-20070328-builtins.patch
|
Patch1: ksh-20070328-builtins.patch
|
||||||
|
|
||||||
#debugging, 435159 - check if there is looped list
|
|
||||||
Patch2: ksh-20090630-jlist.patch
|
|
||||||
|
|
||||||
#sent upstream, 572291 - tty settings not restored after timed out read for utf-8 locale
|
|
||||||
Patch3: ksh-20100309-restoretty.patch
|
|
||||||
|
|
||||||
#sent upstream, rhbz#584704
|
|
||||||
Patch4: ksh-20100309-compsubst.patch
|
|
||||||
|
|
||||||
#sent upstream, rhbz#587127, for ksh <2010-03-19
|
|
||||||
Patch5: ksh-20100309-fixwhence.patch
|
|
||||||
|
|
||||||
#from upstream, rhbz#578582, for ksh <? 2010-04-13
|
|
||||||
Patch6: ksh-20100309-pathcrash.patch
|
|
||||||
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
Conflicts: pdksh
|
Conflicts: pdksh
|
||||||
Requires: coreutils, glibc-common, diffutils
|
Requires: coreutils, glibc-common, diffutils
|
||||||
@ -47,11 +32,6 @@ with "sh" (the Bourne Shell).
|
|||||||
%setup -q -c
|
%setup -q -c
|
||||||
%setup -q -T -D -a 1
|
%setup -q -T -D -a 1
|
||||||
%patch1 -p1 -b .builtins
|
%patch1 -p1 -b .builtins
|
||||||
%patch2 -p1 -b .jlist
|
|
||||||
%patch3 -p1 -b .restoretty
|
|
||||||
%patch4 -p1 -b .compsubst
|
|
||||||
%patch5 -p1 -b .fixwhence
|
|
||||||
%patch6 -p1 -b .pathcrash
|
|
||||||
|
|
||||||
#/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
|
||||||
@ -107,6 +87,9 @@ fi
|
|||||||
rm -rf $RPM_BUILD_ROOT
|
rm -rf $RPM_BUILD_ROOT
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Jun 10 2010 Michal Hlavinka <mhlavink@redhat.com> - 20100527-1
|
||||||
|
- updated to 2010-05-27
|
||||||
|
|
||||||
* Mon May 31 2010 Michal Hlavinka <mhlavink@redhat.com> - 20100309-6
|
* Mon May 31 2010 Michal Hlavinka <mhlavink@redhat.com> - 20100309-6
|
||||||
- add pathmunge to /etc/kshrc
|
- add pathmunge to /etc/kshrc
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user