summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--Src/jobs.c4
2 files changed, 6 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 6cabd20c1..3a2d0dcb3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2004-02-17 Peter Stephenson <pws@csr.com>
+
+ * 19427: Src/jobs.c: last job in table wasn't reported with `jobs'.
+
2004-02-16 Oliver Kiddle <opk@zsh.org>
* unposted: Completion/Unix/Command/_apachectl: complete also for
diff --git a/Src/jobs.c b/Src/jobs.c
index be44158c6..0188989df 100644
--- a/Src/jobs.c
+++ b/Src/jobs.c
@@ -1488,14 +1488,14 @@ bin_fg(char *name, char **argv, Options ops, int func)
int curmaxjob, ignorejob;
if (unset(MONITOR) && oldmaxjob) {
jobptr = oldjobtab;
- curmaxjob = oldmaxjob;
+ curmaxjob = oldmaxjob ? oldmaxjob - 1 : 0;
ignorejob = 0;
} else {
jobptr = jobtab;
curmaxjob = maxjob;
ignorejob = thisjob;
}
- for (job = 0; job != curmaxjob; job++, jobptr++)
+ for (job = 0; job <= curmaxjob; job++, jobptr++)
if (job != ignorejob && jobptr->stat) {
if ((!OPT_ISSET(ops,'r') && !OPT_ISSET(ops,'s')) ||
(OPT_ISSET(ops,'r') && OPT_ISSET(ops,'s')) ||