diff options
-rw-r--r-- | libbb/find_pid_by_name.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/libbb/find_pid_by_name.c b/libbb/find_pid_by_name.c index abbf293e8..fe13f7211 100644 --- a/libbb/find_pid_by_name.c +++ b/libbb/find_pid_by_name.c | |||
@@ -90,7 +90,11 @@ pid_t* FAST_FUNC find_pid_by_name(const char *procName) | |||
90 | /* or we require argv0 to match (essential for matching reexeced /proc/self/exe)*/ | 90 | /* or we require argv0 to match (essential for matching reexeced /proc/self/exe)*/ |
91 | || (p->argv0 && strcmp(bb_basename(p->argv0), procName) == 0) | 91 | || (p->argv0 && strcmp(bb_basename(p->argv0), procName) == 0) |
92 | /* or we require /proc/PID/exe link to match */ | 92 | /* or we require /proc/PID/exe link to match */ |
93 | || (p->exe && strcmp(bb_basename(p->exe), procName) == 0) | 93 | || (p->exe && strcmp( |
94 | procName[0] == '/' ? p->exe /* support "pidof /path/to/binary" case too */ | ||
95 | : bb_basename(p->exe), | ||
96 | procName | ||
97 | ) == 0) | ||
94 | ) { | 98 | ) { |
95 | pidList = xrealloc_vector(pidList, 2, i); | 99 | pidList = xrealloc_vector(pidList, 2, i); |
96 | pidList[i++] = p->pid; | 100 | pidList[i++] = p->pid; |