X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fshared%2Fcgroup-show.c;h=c862ee91f6091bcb52213500c1a385725b71d747;hb=03da8f9459b005d5515d2c34152d43bc63f64c79;hp=979fa8fddf6e776fa1db2b70e261e36f866f6582;hpb=b47d419c25ecc735615a1088060c1ec8bef1e41f;p=elogind.git diff --git a/src/shared/cgroup-show.c b/src/shared/cgroup-show.c index 979fa8fdd..c862ee91f 100644 --- a/src/shared/cgroup-show.c +++ b/src/shared/cgroup-show.c @@ -44,8 +44,6 @@ static void show_pid_array(int pids[], unsigned n_pids, const char *prefix, unsi unsigned i, m, pid_width; pid_t biggest = 0; - assert(n_pids > 0); - /* Filter duplicates */ m = 0; for (i = 0; i < n_pids; i++) { @@ -65,7 +63,7 @@ static void show_pid_array(int pids[], unsigned n_pids, const char *prefix, unsi pid_width = DECIMAL_STR_WIDTH(biggest); /* And sort */ - qsort(pids, n_pids, sizeof(pid_t), compare); + qsort_safe(pids, n_pids, sizeof(pid_t), compare); if (flags & OUTPUT_FULL_WIDTH) n_columns = 0; @@ -80,10 +78,12 @@ static void show_pid_array(int pids[], unsigned n_pids, const char *prefix, unsi get_process_cmdline(pids[i], n_columns, true, &t); - printf("%s%s%*lu %s\n", - prefix, - draw_special_char(extra ? DRAW_TRIANGULAR_BULLET : - ((more || i < n_pids-1) ? DRAW_TREE_BRANCH : DRAW_TREE_RIGHT)), + if (extra) + printf("%s%s ", prefix, draw_special_char(DRAW_TRIANGULAR_BULLET)); + else + printf("%s%s", prefix, draw_special_char(((more || i < n_pids-1) ? DRAW_TREE_BRANCH : DRAW_TREE_RIGHT))); + + printf("%*lu %s\n", pid_width, (unsigned long) pids[i], strna(t)); @@ -180,10 +180,10 @@ int show_cgroup_by_path(const char *path, const char *prefix, unsigned n_columns if (last) { printf("%s%s%s\n", prefix, draw_special_char(DRAW_TREE_BRANCH), - path_get_file_name(last)); + basename(last)); if (!p1) { - p1 = strappend(prefix, draw_special_char(DRAW_TREE_VERT)); + p1 = strappend(prefix, draw_special_char(DRAW_TREE_VERTICAL)); if (!p1) return -ENOMEM; } @@ -204,7 +204,7 @@ int show_cgroup_by_path(const char *path, const char *prefix, unsigned n_columns if (last) { printf("%s%s%s\n", prefix, draw_special_char(DRAW_TREE_RIGHT), - path_get_file_name(last)); + basename(last)); if (!p2) { p2 = strappend(prefix, " ");