7 Bug-Reported-by: osicka@post.cz
8 Bug-Reference-ID: <228.177-19682-1132061412-1179356692@post.cz>
9 Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-05/msg00061.html
13 In certain cases, bash can lose the saved status of a background job, though
14 it should still be reported by `wait'. Bash can also loop infinitely after
15 creating and waiting for 4096 jobs.
19 *** ../bash-20070510/jobs.c Thu Mar 8 16:05:50 2007
20 --- jobs.c Fri May 18 11:40:14 2007
25 while (js.j_firstj != old)
27 if (js.j_firstj >= js.j_jobslots)
29 ! if (jobs[js.j_firstj])
35 + if (old >= js.j_jobslots)
36 + old = js.j_jobslots - 1;
37 while (js.j_firstj != old)
39 if (js.j_firstj >= js.j_jobslots)
41 ! if (jobs[js.j_firstj] || js.j_firstj == old) /* needed if old == 0 */
48 while (js.j_lastj != old)
51 js.j_lastj = js.j_jobslots - 1;
52 ! if (jobs[js.j_lastj])
60 while (js.j_lastj != old)
63 js.j_lastj = js.j_jobslots - 1;
64 ! if (jobs[js.j_lastj] || js.j_lastj == old) /* needed if old == js.j_jobslots */
71 ! return (js.j_lastj);
78 ! itrace("compact_jobs_list: returning %d", (js.j_lastj || jobs[js.j_lastj]) ? js.j_lastj + 1 : 0);
81 ! return ((js.j_lastj || jobs[js.j_lastj]) ? js.j_lastj + 1 : 0);
84 *** ../bash-3.2/patchlevel.h Thu Apr 13 08:31:04 2006
85 --- patchlevel.h Mon Oct 16 14:22:54 2006
88 looks for to find the patch level (for the sccs version string). */
90 ! #define PATCHLEVEL 17
92 #endif /* _PATCHLEVEL_H_ */
94 looks for to find the patch level (for the sccs version string). */
96 ! #define PATCHLEVEL 18
98 #endif /* _PATCHLEVEL_H_ */