diff options
Diffstat (limited to 'devel/electron23/files/patch-base_process_process__handle__freebsd.cc')
-rw-r--r-- | devel/electron23/files/patch-base_process_process__handle__freebsd.cc | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/devel/electron23/files/patch-base_process_process__handle__freebsd.cc b/devel/electron23/files/patch-base_process_process__handle__freebsd.cc new file mode 100644 index 000000000000..5cc930471cea --- /dev/null +++ b/devel/electron23/files/patch-base_process_process__handle__freebsd.cc @@ -0,0 +1,25 @@ +--- base/process/process_handle_freebsd.cc.orig 2022-04-21 18:48:31 UTC ++++ base/process/process_handle_freebsd.cc +@@ -3,6 +3,7 @@ + // found in the LICENSE file. + + #include "base/process/process_handle.h" ++#include "base/files/file_util.h" + + #include <limits.h> + #include <stddef.h> +@@ -15,10 +16,13 @@ namespace base { + + ProcessId GetParentProcessId(ProcessHandle process) { + struct kinfo_proc info; +- size_t length; ++ size_t length = sizeof(struct kinfo_proc); + int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, process }; + + if (sysctl(mib, std::size(mib), &info, &length, NULL, 0) < 0) ++ return -1; ++ ++ if (length < sizeof(struct kinfo_proc)) + return -1; + + return info.ki_ppid; |