diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/w32proc.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/w32proc.c b/src/w32proc.c index e9860a66468..ca2096aaa9d 100644 --- a/src/w32proc.c +++ b/src/w32proc.c | |||
| @@ -800,7 +800,7 @@ new_child (void) | |||
| 800 | if (child_proc_count == MAX_CHILDREN) | 800 | if (child_proc_count == MAX_CHILDREN) |
| 801 | { | 801 | { |
| 802 | int i = 0; | 802 | int i = 0; |
| 803 | child_process *dead_cp; | 803 | child_process *dead_cp = NULL; |
| 804 | 804 | ||
| 805 | DebPrint (("new_child: No vacant slots, looking for dead processes\n")); | 805 | DebPrint (("new_child: No vacant slots, looking for dead processes\n")); |
| 806 | for (cp = child_procs + (child_proc_count-1); cp >= child_procs; cp--) | 806 | for (cp = child_procs + (child_proc_count-1); cp >= child_procs; cp--) |
| @@ -829,13 +829,15 @@ new_child (void) | |||
| 829 | if (i == 0) | 829 | if (i == 0) |
| 830 | dead_cp = cp; | 830 | dead_cp = cp; |
| 831 | else | 831 | else |
| 832 | { | 832 | break; |
| 833 | cp = dead_cp; | ||
| 834 | goto Initialize; | ||
| 835 | } | ||
| 836 | i++; | 833 | i++; |
| 837 | } | 834 | } |
| 838 | } | 835 | } |
| 836 | if (dead_cp) | ||
| 837 | { | ||
| 838 | cp = dead_cp; | ||
| 839 | goto Initialize; | ||
| 840 | } | ||
| 839 | } | 841 | } |
| 840 | if (child_proc_count == MAX_CHILDREN) | 842 | if (child_proc_count == MAX_CHILDREN) |
| 841 | return NULL; | 843 | return NULL; |