Accepting request 26264 from shells

Copy from shells/ksh based on submit request 26264 from user WernerFink

OBS-URL: https://build.opensuse.org/request/show/26264
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/ksh?expand=0&rev=35
This commit is contained in:
OBS User autobuild 2009-12-11 16:31:33 +00:00 committed by Git OBS Bridge
parent d75cf85c1d
commit 07e4718955
2 changed files with 1 additions and 22 deletions

View File

@ -29,7 +29,7 @@ Group: System/Shells
PreReq: /bin/ln /bin/rm /etc/bash.bashrc /bin/true PreReq: /bin/ln /bin/rm /etc/bash.bashrc /bin/true
AutoReqProv: on AutoReqProv: on
Version: 93t Version: 93t
Release: 16 Release: 17
Summary: Korn Shell Summary: Korn Shell
BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source: INIT.2009-12-06.tar.bz2 Source: INIT.2009-12-06.tar.bz2

View File

@ -1,21 +0,0 @@
| From: David Korn <dgk@research.att.com>
| To: werner@suse.de
| Subject: Re: Re: [ast-users] Crash with SIGPIPE trap...
|
| OK, now I get what is causing this. Here is a simpler fix
| that I think should work. If the stream is in a pool, then
| this just purges the top level so that it doesn't write to
| that level.
|
--- src/cmd/ksh93/sh/fault.c
+++ src/cmd/ksh93/sh/fault.c 2009-08-24 15:52:21.770401660 +0200
@@ -413,6 +413,9 @@ void sh_chktrap(void)
sh.sigflag[sig] &= ~SH_SIGTRAP;
if(trap=sh.st.trapcom[sig])
{
+ Sfio_t *fp;
+ if (sig==SIGPIPE && (fp=sfpool((Sfio_t*)0,sh.outpool,SF_WRITE)))
+ sfpurge(fp);
sh.oldexit = SH_EXITSIG|sig;
sh_trap(trap,0);
}