From 416397e14858c75a9bf20d05f7729595e03943df Mon Sep 17 00:00:00 2001 From: Rob Landley Date: Mon, 15 Jan 2018 21:46:45 -0600 Subject: Fix "ps -T 1234" to show thread belonging to that PID. --- toys/posix/ps.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'toys') diff --git a/toys/posix/ps.c b/toys/posix/ps.c index fd9b54bc..7741dcd3 100644 --- a/toys/posix/ps.c +++ b/toys/posix/ps.c @@ -680,8 +680,11 @@ static int get_ps(struct dirtree *new) memset(slot, 0, sizeof(tb->slot)); tb->slot[SLOT_tid] = *slot = atol(new->name); - if (TT.threadparent && TT.threadparent->extra) - if (*slot == *(((struct carveup *)TT.threadparent->extra)->slot)) return 0; + if (TT.threadparent && TT.threadparent->extra) { + *slot = *(((struct carveup *)TT.threadparent->extra)->slot); + // Parent also shows up as a thread, discard duplicate + if (*slot == tb->slot[SLOT_tid]) return 0; + } fd = dirtree_parentfd(new); len = 2048; -- cgit v1.2.3