summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGiampaolo Rodola <g.rodola@gmail.com>2017-06-03 11:48:11 +0200
committerGiampaolo Rodola <g.rodola@gmail.com>2017-06-03 11:48:11 +0200
commit1c99c9f896e66a94fbb637768dcbb60ec0eff5a9 (patch)
tree803cfa96e747b49f47e767643f4beced69fa34af
parent7bea2dcb2e8c6c47ce57e71af46f1f44a4633940 (diff)
downloadpsutil-1044-osx-zombies.tar.gz
fix threads()1044-osx-zombies
-rw-r--r--psutil/_psutil_osx.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/psutil/_psutil_osx.c b/psutil/_psutil_osx.c
index 92d48dd4..450f1db0 100644
--- a/psutil/_psutil_osx.c
+++ b/psutil/_psutil_osx.c
@@ -1003,10 +1003,13 @@ psutil_proc_threads(PyObject *self, PyObject *args) {
if (! PyArg_ParseTuple(args, "l", &pid))
goto error;
- // task_for_pid() requires special privileges
+ // task_for_pid() requires root privileges
err = task_for_pid(mach_task_self(), (pid_t)pid, &task);
if (err != KERN_SUCCESS) {
- psutil_raise_for_pid(pid, "task_for_pid() failed");
+ if (psutil_pid_exists(pid) == 0)
+ NoSuchProcess();
+ else
+ AccessDenied();
goto error;
}