pkgsrc/lang/mozjs78/patches/patch-js_src_vm_ArrayBufferObject.cpp
nia 6ae378ef6d mozjs78: Fix configure where the readline library isn't builtin.
This commit also moves the location of WRKSRC so that no patches are
applied to files in parent directories of WRKSRC.
2020-12-05 12:03:25 +00:00

24 lines
815 B
C++

$NetBSD: patch-js_src_vm_ArrayBufferObject.cpp,v 1.1 2020/12/05 12:03:26 nia Exp $
PaX MPROTECT safety for NetBSD
--- js/src/vm/ArrayBufferObject.cpp.orig 2020-11-04 10:52:03.000000000 +0000
+++ js/src/vm/ArrayBufferObject.cpp
@@ -164,9 +164,17 @@ void* js::MapBufferMemory(size_t mappedS
return nullptr;
}
#else // XP_WIN
+
+#ifdef PROT_MPROTECT
+ void* data =
+ MozTaggedAnonymousMmap(nullptr, mappedSize,
+ PROT_MPROTECT(PROT_EXEC | PROT_WRITE | PROT_READ),
+ MAP_PRIVATE | MAP_ANON, -1, 0, "wasm-reserved");
+#else
void* data =
MozTaggedAnonymousMmap(nullptr, mappedSize, PROT_NONE,
MAP_PRIVATE | MAP_ANON, -1, 0, "wasm-reserved");
+#endif
if (data == MAP_FAILED) {
return nullptr;
}