diff options
author | Christian Göttsche <cgzones@googlemail.com> | 2021-12-09 18:14:49 +0100 |
---|---|---|
committer | BenBE <BenBE@geshi.org> | 2022-03-06 19:56:25 +0100 |
commit | b6c0667eae104521e71ab9c4f4a785e386bce3e5 (patch) | |
tree | dccf8433514566af1339db7f3405a2c1d0cb4389 /linux/LinuxProcessList.c | |
parent | 3ba695293c981af034d243605a30dac6cb55f880 (diff) |
Linux: dynamically adjust column width of CGROUP C(ompressed)CGROUP
Diffstat (limited to 'linux/LinuxProcessList.c')
-rw-r--r-- | linux/LinuxProcessList.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/linux/LinuxProcessList.c b/linux/LinuxProcessList.c index 9be97681..6d0d7992 100644 --- a/linux/LinuxProcessList.c +++ b/linux/LinuxProcessList.c @@ -902,16 +902,27 @@ static void LinuxProcessList_readCGroupFile(LinuxProcess* process, openat_arg_t bool changed = !process->cgroup || !String_eq(process->cgroup, output); + Process_updateFieldWidth(CGROUP, strlen(output)); free_and_xStrdup(&process->cgroup, output); - if (!changed) + if (!changed) { + if(process->cgroup_short) { + Process_updateFieldWidth(CCGROUP, strlen(process->cgroup_short)); + } else { + //CCGROUP is alias to normal CGROUP if shortening fails + Process_updateFieldWidth(CCGROUP, strlen(process->cgroup)); + } return; + } char* cgroup_short = CGroup_filterName(process->cgroup); if (cgroup_short) { + Process_updateFieldWidth(CCGROUP, strlen(cgroup_short)); free_and_xStrdup(&process->cgroup_short, cgroup_short); free(cgroup_short); } else { + //CCGROUP is alias to normal CGROUP if shortening fails + Process_updateFieldWidth(CCGROUP, strlen(process->cgroup)); free(process->cgroup_short); process->cgroup_short = NULL; } |