View | Details | Raw Unified | Return to bug 28109
Collapse All | Expand All

(-)contrib/tcsh/sh.proc.c (-4 / +14 lines)
Lines 1524-1529 Link Here
1524
{
1524
{
1525
    register int signum, len = 0;
1525
    register int signum, len = 0;
1526
    register char *name;
1526
    register char *name;
1527
    Char *sigptr;
1527
    extern int T_Cols;
1528
    extern int T_Cols;
1528
    extern int nsig;
1529
    extern int nsig;
1529
1530
Lines 1544-1560 Link Here
1544
	    xputchar('\n');
1545
	    xputchar('\n');
1545
	    return;
1546
	    return;
1546
	}
1547
	}
1547
	if (Isdigit(v[0][1])) {
1548
	sigptr = &v[0][1];
1548
	    signum = atoi(short2str(v[0] + 1));
1549
	if (v[0][1] == 's') {
1550
	    if (v[1]) {
1551
		v++;
1552
		sigptr = &v[0][0];
1553
	    } else {
1554
		stderror(ERR_NAME | ERR_TOOFEW);
1555
	    }
1556
	}
1557
	if (Isdigit(*sigptr)) {
1558
	    signum = atoi(short2str(sigptr));
1549
	    if (signum < 0 || signum > (MAXSIG-1))
1559
	    if (signum < 0 || signum > (MAXSIG-1))
1550
		stderror(ERR_NAME | ERR_BADSIG);
1560
		stderror(ERR_NAME | ERR_BADSIG);
1551
	}
1561
	}
1552
	else {
1562
	else {
1553
	    for (signum = 0; signum <= nsig; signum++)
1563
	    for (signum = 0; signum <= nsig; signum++)
1554
		if (mesg[signum].iname &&
1564
		if (mesg[signum].iname &&
1555
		    eq(&v[0][1], str2short(mesg[signum].iname)))
1565
		    eq(sigptr, str2short(mesg[signum].iname)))
1556
		    goto gotsig;
1566
		    goto gotsig;
1557
	    setname(short2str(&v[0][1]));
1567
	    setname(short2str(sigptr));
1558
	    stderror(ERR_NAME | ERR_UNKSIG);
1568
	    stderror(ERR_NAME | ERR_UNKSIG);
1559
	}
1569
	}
1560
gotsig:
1570
gotsig:
(-)contrib/tcsh/tcsh.man (-2 / +5 lines)
Lines 2851-2858 Link Here
2851
.B kill \fR[\fB\-\fIsignal\fR] \fB%\fIjob\fR|\fIpid\fR ...
2851
.B kill \fR[\fB\-\fIsignal\fR] \fB%\fIjob\fR|\fIpid\fR ...
2852
.PD 0
2852
.PD 0
2853
.TP 8
2853
.TP 8
2854
.B kill \fR[\fB\-s \fIsignal\fR] \fB%\fIjob\fR|\fIpid\fR ...
2855
.TP 8
2854
.B kill \-l
2856
.B kill \-l
2855
The first form sends the specified \fIsignal\fR (or, if none is given,
2857
The first and second forms sends the specified \fIsignal\fR (or, if none
2858
is given,
2856
the TERM (terminate) signal) to the specified jobs or processes.
2859
the TERM (terminate) signal) to the specified jobs or processes.
2857
\fIjob\fR may be a number, a string, `', `%', `+' or `\-' as described
2860
\fIjob\fR may be a number, a string, `', `%', `+' or `\-' as described
2858
under \fBJobs\fR.
2861
under \fBJobs\fR.
Lines 2862-2868 Link Here
2862
to the current job.  If the signal being sent is TERM (terminate)
2865
to the current job.  If the signal being sent is TERM (terminate)
2863
or HUP (hangup), then the job or process is sent a
2866
or HUP (hangup), then the job or process is sent a
2864
CONT (continue) signal as well.
2867
CONT (continue) signal as well.
2865
The second form lists the signal names.
2868
The third form lists the signal names.
2866
.PD
2869
.PD
2867
.ig \" Obsolete tcsh command
2870
.ig \" Obsolete tcsh command
2868
.TP 8
2871
.TP 8

Return to bug 28109