685 |
|
return NULL; |
686 |
|
} |
687 |
|
|
688 |
< |
do { |
688 |
> |
while (1) { |
689 |
|
num = pstat_getproc(pstat_procinfo, sizeof pstat_procinfo[0], |
690 |
|
PROCESS_BATCH, procidx); |
691 |
+ |
if (num == -1) { |
692 |
+ |
sg_set_error_with_errno(SG_ERROR_PSTAT, |
693 |
+ |
"pstat_getproc"); |
694 |
+ |
return NULL; |
695 |
+ |
} else if (num == 0) { |
696 |
+ |
break; |
697 |
+ |
} |
698 |
|
|
699 |
|
for (i = 0; i < num; i++) { |
700 |
|
struct pst_status *pi = &pstat_procinfo[i]; |
747 |
|
|
748 |
|
proc_state_size++; |
749 |
|
} |
750 |
< |
procidx = pstat_procinfo[n - 1].pst_idx + 1; |
751 |
< |
} while (num > 0); |
750 |
> |
procidx = pstat_procinfo[num - 1].pst_idx + 1; |
751 |
> |
} |
752 |
|
#endif |
753 |
|
|
754 |
|
#ifdef CYGWIN |