96b32a814c
* chore: bump chromium in DEPS to 2930eb12d56988c2c80bad2797ab036fe493d4e1 * chore: update patches * Revert "disable robotjs-based tests" This reverts commite56adafc1f
. * Revert "skip dbus tests (#18409)" This reverts commitaea042cc83
. * Revert "skip more dbus tests" This reverts commit68dbef48da
. * chore: bump chromium in DEPS to fd62da5601399b92effaa32a943fcd96143c8605 * chore: bump chromium in DEPS to 99f87ca22ee6e7ec953defe694771cb68f47a596 * chore: bump chromium in DEPS to d88778435b4cd9a510a63385b6d4ba24674b9774 * chore: update patches * chore: update ssl_security_state_tab_helper.patch * Remove content_packaged_services https://chromium-review.googlesource.com/c/chromium/src/+/1604203 * chore: fix false positive lint error * views: wireup widget name to crash data https://chromium-review.googlesource.com/c/chromium/src/+/1626640 * chore: bump chromium in DEPS to ab588d36191964c4bca8de5c320534d95606c861 * roll patches
46 lines
1.8 KiB
Diff
46 lines
1.8 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Shelley Vohr <shelley.vohr@gmail.com>
|
|
Date: Mon, 22 Oct 2018 10:47:11 -0700
|
|
Subject: add_realloc.patch
|
|
|
|
Blink overrides ArrayBuffer's allocator with its own one, while Node simply
|
|
uses malloc and free, so we need to use v8's allocator in Node. As part of the
|
|
10.6.0 upgrade, we needed to make SerializerDelegate accept an allocator
|
|
argument in its constructor, and override ReallocateBufferMemory and
|
|
FreeBufferMemory to use the allocator. We cannot simply allocate and then memcpy
|
|
when we override ReallocateBufferMemory, so we therefore need to implement
|
|
Realloc on the v8 side.
|
|
|
|
diff --git a/include/v8.h b/include/v8.h
|
|
index c54b088404229dccf015e20b6a5bab19d3d94e69..cc603dc4aae69de4b09f06ed0bca48cdae8eebd3 100644
|
|
--- a/include/v8.h
|
|
+++ b/include/v8.h
|
|
@@ -4624,6 +4624,13 @@ class V8_EXPORT ArrayBuffer : public Object {
|
|
*/
|
|
virtual void* AllocateUninitialized(size_t length) = 0;
|
|
|
|
+ /**
|
|
+ * Free the memory block of size |length|, pointed to by |data|.
|
|
+ * That memory must be previously allocated by |Allocate| and not yet freed
|
|
+ * with a call to |Free| or |Realloc|
|
|
+ */
|
|
+ virtual void* Realloc(void* data, size_t length);
|
|
+
|
|
/**
|
|
* Free the memory block of size |length|, pointed to by |data|.
|
|
* That memory is guaranteed to be previously allocated by |Allocate|.
|
|
diff --git a/src/api/api.cc b/src/api/api.cc
|
|
index 74fc41ae4935044bc23c11a511abd5342d8f8e5d..a4e275c19097a9083606707d969791194e9b23d0 100644
|
|
--- a/src/api/api.cc
|
|
+++ b/src/api/api.cc
|
|
@@ -515,6 +515,10 @@ void V8::SetSnapshotDataBlob(StartupData* snapshot_blob) {
|
|
i::V8::SetSnapshotBlob(snapshot_blob);
|
|
}
|
|
|
|
+void* v8::ArrayBuffer::Allocator::Realloc(void* data, size_t length) {
|
|
+ UNIMPLEMENTED();
|
|
+}
|
|
+
|
|
namespace {
|
|
|
|
class ArrayBufferAllocator : public v8::ArrayBuffer::Allocator {
|