Cygwin: Correct /proc/*/stat for processes without ctty
Report 0 instead of 268435455 (i.e. 0xFFFFFFF) in the tty field of /proc/*/stat for processes without a controlling terminal. This is what the procps utility expects when selecting or excluding such processes.
This commit is contained in:
parent
67459ce679
commit
59b8ee7d70
|
@ -1092,9 +1092,11 @@ format_process_stat (void *data, char *&destbuf)
|
|||
int nice = 0;
|
||||
/* ctty maj is 31:16, min is 15:0; tty_nr s/b maj 15:8, min 31:20, 7:0;
|
||||
maj is 31:16 >> 16 & fff << 8; min is 15:0 >> 8 & ff << 20 | & ff */
|
||||
int tty_nr = (((p->ctty >> 8) & 0xff) << 20)
|
||||
| (((p->ctty >> 16) & 0xfff) << 8)
|
||||
| (p->ctty & 0xff);
|
||||
int tty_nr = 0;
|
||||
if (p->ctty > 0)
|
||||
tty_nr = (((p->ctty >> 8) & 0xff) << 20)
|
||||
| (((p->ctty >> 16) & 0xfff) << 8)
|
||||
| (p->ctty & 0xff);
|
||||
|
||||
if (p->process_state & PID_EXITED)
|
||||
strcpy (cmd, "<defunct>");
|
||||
|
|
Loading…
Reference in New Issue