Compare commits
12 Commits
Author | SHA1 | Date |
---|---|---|
Vojtech Vitek (V-Teq) | afe81e0669 | |
Vojtech Vitek (V-Teq) | 4225fb4701 | |
Vojtech Vitek (V-Teq) | 26a61a5762 | |
Vojtech Vitek (V-Teq) | 745c23edce | |
Vojtech Vitek (V-Teq) | 1af0c022fa | |
Vojtech Vitek (V-Teq) | b0bc5bc5ac | |
Vojtech Vitek (V-Teq) | 0902625405 | |
Vojtech Vitek (V-Teq) | 9468e5deb5 | |
Vojtech Vitek (V-Teq) | 19cf9a8c3c | |
Vojtech Vitek (V-Teq) | 3adf1d4105 | |
Vojtech Vitek (V-Teq) | 9ba2c6e9e9 | |
Vojtech Vitek (V-Teq) | 15c625d2a4 |
|
@ -0,0 +1,10 @@
|
|||
--- tcsh-6.17.00/sh.proc.c.orig 2011-02-03 12:31:14.000000000 -0700
|
||||
+++ tcsh-6.17.00/sh.proc.c 2011-02-03 12:32:00.000000000 -0700
|
||||
@@ -910,6 +910,7 @@
|
||||
|
||||
if (pcurrjob && (pcurrjob->p_flags & (PFOREGND | PSTOPPED)) == 0) {
|
||||
pp = pcurrjob;
|
||||
+ pcurrjob = 0;
|
||||
while (pp->p_procid != pp->p_jobid)
|
||||
pp = pp->p_friends;
|
||||
xprintf("[%d]", pp->p_index);
|
|
@ -0,0 +1,12 @@
|
|||
diff -up tcsh-6.17.00/sh.proc.c.bz607368 tcsh-6.17.00/sh.proc.c
|
||||
--- tcsh-6.17.00/sh.proc.c.bz607368 2011-04-28 14:14:24.000000000 +0900
|
||||
+++ tcsh-6.17.00/sh.proc.c 2011-04-28 14:14:55.000000000 +0900
|
||||
@@ -367,7 +367,7 @@ found:
|
||||
#ifdef notdef
|
||||
jobflags & PAEXITED ||
|
||||
#endif /* notdef */
|
||||
- !eq(dcwd->di_name, fp->p_cwd->di_name))) {
|
||||
+ fp->p_cwd == NULL || !eq(dcwd->di_name, fp->p_cwd->di_name))) {
|
||||
/* PWP: print a newline after ^C */
|
||||
if (jobflags & PINTERRUPTED) {
|
||||
xputchar('\r' | QUOTE);
|
|
@ -0,0 +1,36 @@
|
|||
From 76da82e1683c7b7f000081c4759ff4b742bf95f0 Mon Sep 17 00:00:00 2001
|
||||
From: "Vojtech Vitek (V-Teq)" <vvitek@redhat.com>
|
||||
Date: Sat, 29 Oct 2011 21:18:34 +0200
|
||||
Subject: [PATCH] Fix minor man page spelling mistakes
|
||||
|
||||
Changes proposed by John Bradshaw.
|
||||
rhbz#675137
|
||||
---
|
||||
tcsh.man | 4 ++--
|
||||
1 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/tcsh.man b/tcsh.man
|
||||
index e44e2c2..309071c 100644
|
||||
--- a/tcsh.man
|
||||
+++ b/tcsh.man
|
||||
@@ -1718,7 +1718,7 @@ rather than to the file to which the link points (+) *
|
||||
see if it has the specified relationship to the real user. If \fIfile\fR
|
||||
does not exist or is inaccessible or, for the operators indicated by `*',
|
||||
if the specified file type does not exist on the current system,
|
||||
-then all enquiries return false, i.e., `0'.
|
||||
+then all inquiries return false, i.e., `0'.
|
||||
.PP
|
||||
These operators may be combined for conciseness: `\-\fIxy file\fR' is
|
||||
equivalent to `\-\fIx file\fR && \-\fIy file\fR'. (+) For example, `\-fx' is true
|
||||
@@ -3555,7 +3555,7 @@ whenever the environment variable changes the shell changes the corresponding
|
||||
shell variable to match (unless the shell variable is read-only) and vice
|
||||
versa. Note that although \fBcwd\fR and \fBPWD\fR have identical meanings, they
|
||||
are not synchronized in this manner, and that the shell automatically
|
||||
-interconverts the different formats of \fBpath\fR and \fBPATH\fR.
|
||||
+converts between the different formats of \fBpath\fR and \fBPATH\fR.
|
||||
.TP 8
|
||||
.B addsuffix \fR(+)
|
||||
If set, filename completion adds `/' to the end of directories and a space
|
||||
--
|
||||
1.7.6.2
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
diff -up tcsh-6.17.00/tc.prompt.c.orig tcsh-6.17.00/tc.prompt.c
|
||||
--- tcsh-6.17.00/tc.prompt.c.orig 2010-06-17 12:40:40.422571577 +0200
|
||||
+++ tcsh-6.17.00/tc.prompt.c 2010-06-17 12:41:28.628519727 +0200
|
||||
@@ -526,6 +526,9 @@ tprintf(int what, const Char *fmt, const
|
||||
int njobs = -1;
|
||||
struct process *pp;
|
||||
|
||||
+ if (!proclist.p_next)
|
||||
+ njobs++;
|
||||
+
|
||||
for (pp = proclist.p_next; pp; pp = pp->p_next)
|
||||
njobs++;
|
||||
p = Itoa(njobs, 1, attributes);
|
|
@ -0,0 +1,141 @@
|
|||
diff -u -r3.164 -r3.165
|
||||
--- tcsh-6.17.00/sh.h 5 Feb 2011 16:14:20 -0000 3.164
|
||||
+++ tcsh-6.17.00/sh.h 14 Apr 2011 18:25:25 -0000 3.165
|
||||
@@ -578,6 +578,7 @@
|
||||
EXTERN int editing IZERO; /* doing filename expansion and line editing */
|
||||
EXTERN int noediting IZERO; /* initial $term defaulted to noedit */
|
||||
EXTERN int bslash_quote IZERO;/* PWP: tcsh-style quoting? (in sh.c) */
|
||||
+EXTERN int anyerror IZERO; /* propagate errors from pipelines/backq */
|
||||
EXTERN int compat_expr IZERO;/* csh-style expressions? */
|
||||
EXTERN int isoutatty IZERO; /* is SHOUT a tty */
|
||||
EXTERN int isdiagatty IZERO;/* is SHDIAG a tty */
|
||||
diff -u -r3.118 -r3.119
|
||||
--- tcsh-6.17.00/sh.proc.c 24 Mar 2011 14:06:59 -0000 3.118
|
||||
+++ tcsh-6.17.00/sh.proc.c 14 Apr 2011 18:25:25 -0000 3.119
|
||||
@@ -557,6 +557,11 @@
|
||||
reason = 0;
|
||||
fp = pp;
|
||||
do {
|
||||
+ /* In case of pipelines only the result of the last
|
||||
+ * command should be taken in account */
|
||||
+ if (!anyerror && !(fp->p_flags & PBRACE)
|
||||
+ && ((fp->p_flags & PPOU) || (fp->p_flags & PBACKQ)))
|
||||
+ continue;
|
||||
if (fp->p_reason)
|
||||
reason = fp->p_flags & (PSIGNALED | PINTERRUPTED) ?
|
||||
fp->p_reason | META : fp->p_reason;
|
||||
@@ -734,6 +739,8 @@
|
||||
pp->p_flags |= PBACKQ;
|
||||
if (t->t_dflg & F_HUP)
|
||||
pp->p_flags |= PHUP;
|
||||
+ if (t->t_dcom && t->t_dcom[0] && (*t->t_dcom[0] == '{'))
|
||||
+ pp->p_flags |= PBRACE;
|
||||
if (cmdmax == 0)
|
||||
morecommand(CMD_INIT);
|
||||
cmdp = cmdstr;
|
||||
diff -u -r3.14 -r3.15
|
||||
--- tcsh-6.17.00/sh.proc.h 7 May 2010 18:16:07 -0000 3.14
|
||||
+++ tcsh-6.17.00/sh.proc.h 14 Apr 2011 18:25:25 -0000 3.15
|
||||
@@ -103,6 +103,7 @@
|
||||
#define PNEEDNOTE (1<<15) /* notify as soon as practical */
|
||||
#define PBACKQ (1<<16) /* Process is `` evaluation */
|
||||
#define PHUP (1<<17) /* Process is marked for SIGHUP on exit */
|
||||
+#define PBRACE (1<<18) /* Process is {} evaluation */
|
||||
|
||||
/* defines for arguments to pprint */
|
||||
#define NUMBER 01
|
||||
diff -u -r3.81 -r3.82
|
||||
--- tcsh-6.17.00/sh.set.c 4 Feb 2011 18:00:26 -0000 3.81
|
||||
+++ tcsh-6.17.00/sh.set.c 14 Apr 2011 18:25:25 -0000 3.82
|
||||
@@ -106,6 +106,9 @@
|
||||
else if (eq(vp, STRloginsh)) {
|
||||
loginsh = 1;
|
||||
}
|
||||
+ else if (eq(vp, STRanyerror)) {
|
||||
+ anyerror = 1;
|
||||
+ }
|
||||
else if (eq(vp, STRsymlinks)) {
|
||||
Char *pn = varval(vp);
|
||||
|
||||
@@ -763,6 +766,8 @@
|
||||
HistLit = 0;
|
||||
if (adrof(STRloginsh) == 0)
|
||||
loginsh = 0;
|
||||
+ if (adrof(STRanyerror) == 0)
|
||||
+ anyerror = 0;
|
||||
if (adrof(STRwordchars) == 0)
|
||||
word_chars = STR_WORD_CHARS;
|
||||
if (adrof(STRedit) == 0)
|
||||
diff -u -r3.97 -r3.98
|
||||
--- tcsh-6.17.00/tc.const.c 27 Feb 2011 00:14:38 -0000 3.97
|
||||
+++ tcsh-6.17.00/tc.const.c 14 Apr 2011 18:25:26 -0000 3.98
|
||||
@@ -43,6 +43,7 @@
|
||||
#endif
|
||||
Char STRautomatic[] = { 'a', 'u', 't', 'o', 'm', 'a', 't', 'i', 'c',
|
||||
'\0' };
|
||||
+Char STRanyerror[] = { 'a', 'n', 'y', 'e', 'r', 'r', 'o', 'r', '\0' };
|
||||
Char STRhangup[] = { 'h', 'a', 'n', 'g', 'u', 'p', '\0' };
|
||||
Char STRaout[] = { 'a', '.', 'o', 'u', 't', '\0' };
|
||||
Char STRtty[] = { 't', 't', 'y', '\0' };
|
||||
diff -u -r3.226 -r3.227
|
||||
--- tcsh-6.17.00/tcsh.man 1 Feb 2011 19:56:50 -0000 3.226
|
||||
+++ tcsh-6.17.00/tcsh.man 14 Apr 2011 18:25:26 -0000 3.227
|
||||
@@ -4352,7 +4352,12 @@
|
||||
See also \fBloginsh\fR.
|
||||
.TP 8
|
||||
.B status
|
||||
-The status returned by the last command. If it terminated
|
||||
+The status returned by the last command, unless the variable
|
||||
+.B anyerror
|
||||
+is set, and any error in a pipeline or a backquote expansion will be
|
||||
+propagated (this was the default
|
||||
+.B csh
|
||||
+behavior). If it terminated
|
||||
abnormally, then 0200 is added to the status. Builtin commands
|
||||
which fail return exit status `1', all other builtin commands
|
||||
return status `0'.
|
||||
diff -u -r1.6 -r1.7
|
||||
--- tcsh-6.17.00/tests/lexical.at 6 May 2010 14:36:10 -0000 1.6
|
||||
+++ tcsh-6.17.00/tests/lexical.at 14 Apr 2011 18:25:26 -0000 1.7
|
||||
@@ -57,7 +57,7 @@
|
||||
set verbose
|
||||
echo `&|;<>()&||<<>>space tab end`
|
||||
]])
|
||||
-AT_CHECK([tcsh -f nosplit.csh], 1,
|
||||
+AT_CHECK([tcsh -f nosplit.csh], 0,
|
||||
[&|;<>()&||<<>>space tab end
|
||||
&|;<>()&||<<>>space tab end
|
||||
&|;<>()&||<<>>space tab end
|
||||
@@ -132,7 +132,7 @@
|
||||
AT_CHECK([tcsh -f -c 'echo "$OK"'], 1, , [OK: Undefined variable.
|
||||
])
|
||||
|
||||
-AT_CHECK([tcsh -f -c 'echo "`OK`"'], 1, [
|
||||
+AT_CHECK([tcsh -f -c 'echo "`OK`"'], 0, [
|
||||
],
|
||||
[OK: Command not found.
|
||||
])
|
||||
diff -u -r1.2 -r1.3
|
||||
--- tcsh-6.17.00/tests/subst.at 16 Feb 2006 03:12:00 -0000 1.2
|
||||
+++ tcsh-6.17.00/tests/subst.at 14 Apr 2011 18:25:26 -0000 1.3
|
||||
@@ -14,7 +14,7 @@
|
||||
echo `echo 1; \\
|
||||
echo 2`
|
||||
]])
|
||||
-AT_CHECK([tcsh -f backq.csh], 1,
|
||||
+AT_CHECK([tcsh -f backq.csh], 0,
|
||||
[4
|
||||
2
|
||||
1 2
|
||||
diff -u -r1.2 -r1.3
|
||||
--- tcsh-6.17.00/tests/syntax.at 16 Feb 2006 03:12:00 -0000 1.2
|
||||
+++ tcsh-6.17.00/tests/syntax.at 14 Apr 2011 18:25:26 -0000 1.3
|
||||
@@ -156,7 +156,7 @@
|
||||
[OK
|
||||
])
|
||||
|
||||
-AT_CHECK([tcsh -f -c '(echo $this_does_not_exist) |& cat'], 1,
|
||||
+AT_CHECK([tcsh -f -c '(echo $this_does_not_exist) |& cat'], 0,
|
||||
[this_does_not_exist: Undefined variable.
|
||||
])
|
||||
|
59
tcsh.spec
59
tcsh.spec
|
@ -3,7 +3,7 @@
|
|||
Summary: An enhanced version of csh, the C shell
|
||||
Name: tcsh
|
||||
Version: 6.17
|
||||
Release: 14%{?dist}
|
||||
Release: 17%{?dist}
|
||||
License: BSD
|
||||
Group: System Environment/Shells
|
||||
Source: ftp://ftp.astron.com/pub/tcsh/%{name}-%{version}.00.tar.gz
|
||||
|
@ -18,24 +18,32 @@ Patch9: tcsh-6.13.00-memoryuse.patch
|
|||
Patch11: tcsh-6.14.00-order.patch
|
||||
Patch12: tcsh-6.15.00-rs-color.patch
|
||||
Patch13: tcsh-6.17.00-mh-color.patch
|
||||
# The idea is good, but the patch must be rewritten to be accepted by upstream
|
||||
# (see tcsh mailing list for more information):
|
||||
Patch14: tcsh-6.17.00-glob-automount.patch
|
||||
# Accepted by upstream:
|
||||
Patch15: tcsh-6.17.00-history.patch
|
||||
Patch14: tcsh-6.17.00-history.patch
|
||||
# Accepted by upstream:
|
||||
Patch16: tcsh-6.17.00-printexitvalue.patch
|
||||
Patch17: tcsh-6.17.00-testsuite.patch
|
||||
# Accepted by upstream:
|
||||
Patch18: tcsh-6.17.00-extrafork.patch
|
||||
Patch15: tcsh-6.17.00-printexitvalue.patch
|
||||
Patch16: tcsh-6.17.00-testsuite.patch
|
||||
# Proposed to upstream (http://bugs.gw.com/view.php?id=149):
|
||||
Patch17: tcsh-6.17.00-negative_jobs.patch
|
||||
# Accepted by upstream (tcsh-6.17.03b http://bugs.gw.com/view.php?id=109):
|
||||
Patch19: tcsh-6.17.00-wait-intr.patch
|
||||
# Accepted by upstream (tcsh-6.17.03b http://bugs.gw.com/view.php?id=112):
|
||||
Patch21: tcsh-6.17.00-dont-set-empty-remotehost.patch
|
||||
# Patch by upstream (tcsh-6.17.01b http://mx.gw.com/pipermail/tcsh-bugs/2010-May/000673.html):
|
||||
Patch22: tcsh-6.17.00-dont-print-history-on-verbose.patch
|
||||
# Accepted by upstream:
|
||||
Patch23: tcsh-6.17.00-extrafork.patch
|
||||
# Proposed to upstream (http://bugs.gw.com/view.php?id=122):
|
||||
Patch24: tcsh-6.17.00-avoid-null-cwd.patch
|
||||
# Accepted by upstream (tcsh-6.17.05b http://mx.gw.com/pipermail/tcsh-bugs/2011-March/000727.html):
|
||||
Patch25: tcsh-6.17.00-avoid-infinite-loop-pendjob-xprintf.patch
|
||||
# Accepted by upstream (tcsh-6.17.03b http://bugs.gw.com/view.php?id=113):
|
||||
Patch23: tcsh-6.17.00-variable-names.patch
|
||||
Patch26: tcsh-6.17.00-variable-names.patch
|
||||
# Accepted by upstream (tcsh-6.17.06b http://bugs.gw.com/view.php?id=110)
|
||||
Patch27: tcsh-6.17.00-status-pipeline-backquote-list-of-cmds.patch
|
||||
# Proposed to upstream (http://bugs.gw.com/view.php?id=121)
|
||||
Patch28: tcsh-6.17.00-manpage-spelling.patch
|
||||
|
||||
Provides: csh = %{version}
|
||||
Requires(post): grep
|
||||
Requires(postun): coreutils, grep
|
||||
|
@ -64,15 +72,19 @@ like syntax.
|
|||
%patch11 -p1 -b .order
|
||||
%patch12 -p1 -b .rs-color
|
||||
%patch13 -p1 -b .mh-color
|
||||
%patch14 -p1 -b .glob-automount
|
||||
%patch15 -p1 -b .history
|
||||
%patch16 -p1 -b .printexitvalue
|
||||
%patch17 -p1 -b .testsuite
|
||||
%patch18 -p1 -b .extrafork
|
||||
%patch14 -p1 -b .history
|
||||
%patch15 -p1 -b .printexitvalue
|
||||
%patch16 -p1 -b .testsuite
|
||||
%patch17 -p1 -b .negative_jobs
|
||||
%patch19 -p1 -b .wait-intr
|
||||
%patch21 -p1 -b .dont-set-empty-remotehost
|
||||
%patch22 -p1 -b .dont-print-history-on-verbose
|
||||
%patch23 -p1 -b .variable-names
|
||||
%patch23 -p1 -b .extrafork
|
||||
%patch24 -p1 -b .avoid-null-cwd
|
||||
%patch25 -p1 -b .avoid-infinite-loop-pendjob-xprintf
|
||||
%patch26 -p1 -b .variable-names
|
||||
%patch27 -p1 -b .status-pipeline-backquote-list-of-cmds
|
||||
%patch28 -p1 -b .manpage-spelling
|
||||
|
||||
for i in Fixes WishList; do
|
||||
iconv -f iso-8859-1 -t utf-8 "$i" > "${i}_" && \
|
||||
|
@ -146,6 +158,21 @@ fi
|
|||
%{_mandir}/man1/*.1*
|
||||
|
||||
%changelog
|
||||
* Mon Oct 31 2011 Vojtech Vitek (V-Teq) <vvitek@redhat.com> - 6.17-17
|
||||
- Fix minor man page spelling mistakes (#675137)
|
||||
|
||||
* Thu Oct 27 2011 Vojtech Vitek (V-Teq) <vvitek@redhat.com> - 6.17-16
|
||||
- Fix status of pipelined/backquoted/list of commands (RHEL-6 #658190)
|
||||
- Do not dereference null pointer in cwd (RHEL-6 #700309)
|
||||
- Fix negative number of jobs with %%j formatting parameter in prompt
|
||||
- Clean-up patches numbers & order (prepare space for missing RHEL-6 patches)
|
||||
- Disable obsolete glob-automount.patch; The issue should have been
|
||||
(and is now) fixed in glibc (posix/glob.c)
|
||||
|
||||
* Thu Mar 24 2011 Vojtech Vitek (V-Teq) <vvitek@redhat.com> - 6.17-15
|
||||
- Avoid infinite loop pendjob()-xprintf() when stdout is closed
|
||||
Resolves: #690356
|
||||
|
||||
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.17-14
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
|
||||
|
||||
|
|
Loading…
Reference in New Issue