gh-144648: Improve libproc usage in _remote_debugging (#144649)

This commit is contained in:
Joshua Root
2026-02-10 19:29:55 +11:00
committed by GitHub
parent 704b915494
commit d2d245942e
2 changed files with 4 additions and 2 deletions
@@ -0,0 +1 @@
Allowed _remote_debugging to build on more OS versions by using proc_listpids() rather than proc_listallpids().
+3 -2
View File
@@ -273,6 +273,7 @@ done:
#if defined(__APPLE__) && TARGET_OS_OSX
#include <libproc.h>
#include <sys/proc_info.h>
static int
@@ -283,7 +284,7 @@ get_child_pids_platform(pid_t target_pid, int recursive, pid_array_t *result)
pid_t *ppids = NULL;
/* Get count of all PIDs */
int n_pids = proc_listallpids(NULL, 0);
int n_pids = proc_listpids(PROC_ALL_PIDS, 0, NULL, 0);
if (n_pids <= 0) {
PyErr_SetString(PyExc_OSError, "Failed to get process count");
goto done;
@@ -298,7 +299,7 @@ get_child_pids_platform(pid_t target_pid, int recursive, pid_array_t *result)
}
/* Get actual PIDs */
int actual = proc_listallpids(pid_list, buffer_size * sizeof(pid_t));
int actual = proc_listpids(PROC_ALL_PIDS, 0, pid_list, buffer_size * sizeof(pid_t));
if (actual <= 0) {
PyErr_SetString(PyExc_OSError, "Failed to list PIDs");
goto done;