aboutsummaryrefslogtreecommitdiff
path: root/devel/electron23/files/patch-base_process_process__handle__freebsd.cc
diff options
context:
space:
mode:
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.cc25
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;