mirror of https://github.com/xzeldon/htop.git
fixes PGRP and SESN columns in case of big pids. Patch #3567904.
This commit is contained in:
parent
f44a8f2009
commit
259e1a2938
26
Process.c
26
Process.c
|
@ -208,7 +208,7 @@ const char *Process_fieldNames[] = {
|
||||||
};
|
};
|
||||||
|
|
||||||
const char *Process_fieldTitles[] = {
|
const char *Process_fieldTitles[] = {
|
||||||
"", " PID ", "Command ", "S ", " PPID ", " PGRP ", " SESN ",
|
"", " PID ", "Command ", "S ", " PPID ", " PGRP ", " SESN ",
|
||||||
" TTY ", " TPGID ", "- ", "- ", "- ", "- ", "- ",
|
" TTY ", " TPGID ", "- ", "- ", "- ", "- ", "- ",
|
||||||
" UTIME+ ", " STIME+ ", " CUTIME+ ", " CSTIME+ ", "PRI ", " NI ", "- ",
|
" UTIME+ ", " STIME+ ", " CUTIME+ ", " CSTIME+ ", "PRI ", " NI ", "- ",
|
||||||
"START ", "- ", "- ", "- ", "- ", "- ", "- ",
|
"START ", "- ", "- ", "- ", "- ", "- ", "- ",
|
||||||
|
@ -245,17 +245,21 @@ void Process_getMaxPid() {
|
||||||
fscanf(file, "%32d", &maxPid);
|
fscanf(file, "%32d", &maxPid);
|
||||||
fclose(file);
|
fclose(file);
|
||||||
if (maxPid > 99999) {
|
if (maxPid > 99999) {
|
||||||
Process_fieldTitles[PID] = " PID ";
|
Process_fieldTitles[PID] = " PID ";
|
||||||
Process_fieldTitles[PPID] = " PPID ";
|
Process_fieldTitles[PPID] = " PPID ";
|
||||||
Process_fieldTitles[TPGID] = " TPGID ";
|
Process_fieldTitles[TPGID] = " TPGID ";
|
||||||
Process_fieldTitles[TGID] = " TGID ";
|
Process_fieldTitles[TGID] = " TGID ";
|
||||||
|
Process_fieldTitles[PGRP] = " PGRP ";
|
||||||
|
Process_fieldTitles[SESSION] = " SESN ";
|
||||||
Process_pidFormat = "%7u ";
|
Process_pidFormat = "%7u ";
|
||||||
Process_tpgidFormat = "%7d ";
|
Process_tpgidFormat = "%7d ";
|
||||||
} else {
|
} else {
|
||||||
Process_fieldTitles[PID] = " PID ";
|
Process_fieldTitles[PID] = " PID ";
|
||||||
Process_fieldTitles[PPID] = " PPID ";
|
Process_fieldTitles[PPID] = " PPID ";
|
||||||
Process_fieldTitles[TPGID] = "TPGID ";
|
Process_fieldTitles[TPGID] = "TPGID ";
|
||||||
Process_fieldTitles[TGID] = " TGID ";
|
Process_fieldTitles[TGID] = " TGID ";
|
||||||
|
Process_fieldTitles[PGRP] = " PGRP ";
|
||||||
|
Process_fieldTitles[SESSION] = " SESN ";
|
||||||
Process_pidFormat = "%5u ";
|
Process_pidFormat = "%5u ";
|
||||||
Process_tpgidFormat = "%5d ";
|
Process_tpgidFormat = "%5d ";
|
||||||
}
|
}
|
||||||
|
@ -381,8 +385,8 @@ static void Process_writeField(Process* this, RichString* str, ProcessField fiel
|
||||||
switch (field) {
|
switch (field) {
|
||||||
case PID: snprintf(buffer, n, Process_pidFormat, this->pid); break;
|
case PID: snprintf(buffer, n, Process_pidFormat, this->pid); break;
|
||||||
case PPID: snprintf(buffer, n, Process_pidFormat, this->ppid); break;
|
case PPID: snprintf(buffer, n, Process_pidFormat, this->ppid); break;
|
||||||
case PGRP: snprintf(buffer, n, "%5u ", this->pgrp); break;
|
case PGRP: snprintf(buffer, n, Process_pidFormat, this->pgrp); break;
|
||||||
case SESSION: snprintf(buffer, n, "%5u ", this->session); break;
|
case SESSION: snprintf(buffer, n, Process_pidFormat, this->session); break;
|
||||||
case TTY_NR: snprintf(buffer, n, "%5u ", this->tty_nr); break;
|
case TTY_NR: snprintf(buffer, n, "%5u ", this->tty_nr); break;
|
||||||
case TGID: snprintf(buffer, n, Process_pidFormat, this->tgid); break;
|
case TGID: snprintf(buffer, n, Process_pidFormat, this->tgid); break;
|
||||||
case TPGID: snprintf(buffer, n, Process_tpgidFormat, this->tpgid); break;
|
case TPGID: snprintf(buffer, n, Process_tpgidFormat, this->tpgid); break;
|
||||||
|
|
Loading…
Reference in New Issue