This commit is contained in:
parent
a444951d99
commit
1285f22b6a
@ -1,3 +1,8 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon May 5 13:23:13 CEST 2008 - werner@suse.de
|
||||
|
||||
- Fix patch for option handling of echo builtin (bnc#385986)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Mar 25 12:22:48 CET 2008 - werner@suse.de
|
||||
|
||||
|
5
ksh.spec
5
ksh.spec
@ -22,7 +22,7 @@ Group: System/Shells
|
||||
PreReq: /bin/ln /bin/rm /etc/bash.bashrc /bin/true
|
||||
AutoReqProv: on
|
||||
Version: 93s
|
||||
Release: 98
|
||||
Release: 107
|
||||
Summary: Korn Shell
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: INIT.2008-02-02.tar.bz2
|
||||
@ -59,6 +59,7 @@ Authors:
|
||||
Phong Vo <kpv@research.att.com>
|
||||
|
||||
%package -n ksh-devel
|
||||
License: Common Public License Version 1.0 (CPL1.0)
|
||||
Summary: Korn Shell development environment
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: ksh = %{version}-%{release}
|
||||
@ -319,6 +320,8 @@ fi
|
||||
%{_includedir}/ast/
|
||||
|
||||
%changelog
|
||||
* Mon May 05 2008 werner@suse.de
|
||||
- Fix patch for option handling of echo builtin (bnc#385986)
|
||||
* Tue Mar 25 2008 werner@suse.de
|
||||
- Add missing link to file list
|
||||
* Mon Mar 17 2008 werner@suse.de
|
||||
|
30
ksh93.dif
30
ksh93.dif
@ -1,5 +1,5 @@
|
||||
--- src/cmd/ksh93/bltins/print.c
|
||||
+++ src/cmd/ksh93/bltins/print.c 2007-12-20 19:01:26.144481714 +0100
|
||||
+++ src/cmd/ksh93/bltins/print.c 2008-05-05 11:20:21.000000000 +0000
|
||||
@@ -103,7 +103,11 @@ static int outexceptf(Sfio_t* iop, int m
|
||||
{
|
||||
static char bsd_univ;
|
||||
@ -13,41 +13,53 @@
|
||||
prdata.raw = prdata.echon = 0;
|
||||
prdata.sh = (Shell_t*)extra;
|
||||
NOT_USED(argc);
|
||||
@@ -116,7 +120,40 @@ static int outexceptf(Sfio_t* iop, int m
|
||||
@@ -116,7 +120,52 @@ static int outexceptf(Sfio_t* iop, int m
|
||||
prdata.sh->universe = 1;
|
||||
}
|
||||
if(!bsd_univ)
|
||||
+ {
|
||||
+# if defined(__linux__)
|
||||
+ char *opt = argv[1];
|
||||
+ while ((opt = argv[1]) && (*opt++ == '-'))
|
||||
+ while ((opt = argv[1]) && (*opt == '-'))
|
||||
+ {
|
||||
+ int c, inc = 0;
|
||||
+ int c;
|
||||
+
|
||||
+ opt++;
|
||||
+
|
||||
+ for (c = 0; opt[c]; c++)
|
||||
+# if !SHOPT_ECHOE
|
||||
+ if (strchr("neE", opt[c]) == 0)
|
||||
+# else
|
||||
+ if (strchr("n", opt[c]) == 0)
|
||||
+# endif /* SHOPT_ECHOE */
|
||||
+ break;
|
||||
+
|
||||
+ if (*opt == 0 || opt[c])
|
||||
+ break;
|
||||
+
|
||||
+ while ((c = *opt++))
|
||||
+ {
|
||||
+ switch (c) {
|
||||
+ case 'n':
|
||||
+ prdata.echon = 1;
|
||||
+ inc++;
|
||||
+ break;
|
||||
+# if !SHOPT_ECHOE
|
||||
+ case 'e':
|
||||
+ prdata.raw = 0;
|
||||
+ inc++;
|
||||
+ break;
|
||||
+ case 'E':
|
||||
+ prdata.raw = 1;
|
||||
+ inc++;
|
||||
+ break;
|
||||
+# endif /* SHOPT_ECHOE */
|
||||
+ default:
|
||||
+ goto out;
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+ if (!inc)
|
||||
+ break;
|
||||
+
|
||||
+ argv++;
|
||||
+ }
|
||||
+ out:
|
||||
+# endif
|
||||
return(b_print(0,argv,&prdata));
|
||||
+ }
|
||||
|
Loading…
x
Reference in New Issue
Block a user