Index: mojo/apps/js/v8_environment.cc |
diff --git a/mojo/apps/js/v8_environment.cc b/mojo/apps/js/v8_environment.cc |
index 1b4ee834a247e7dc7a9611873a57aad553503f3e..a7b16bf8806258a4419d8904c62983e1d001bc82 100644 |
--- a/mojo/apps/js/v8_environment.cc |
+++ b/mojo/apps/js/v8_environment.cc |
@@ -7,6 +7,7 @@ |
#include <stdlib.h> |
#include <string.h> |
+#include "mojo/public/bindings/js/v8_array_buffer.h" |
#include "mojo/public/system/macros.h" |
#include "v8/include/v8.h" |
@@ -15,18 +16,6 @@ namespace apps { |
namespace { |
-class ArrayBufferAllocator : public v8::ArrayBuffer::Allocator { |
- virtual void* Allocate(size_t length) MOJO_OVERRIDE { |
- return calloc(1, length); |
- } |
- virtual void* AllocateUninitialized(size_t length) MOJO_OVERRIDE { |
- return malloc(length); |
- } |
- virtual void Free(void* data, size_t length) MOJO_OVERRIDE { |
- free(data); |
- } |
-}; |
- |
bool GenerateEntropy(unsigned char* buffer, size_t amount) { |
// TODO(abarth): Mojo needs a source of entropy. |
// https://code.google.com/p/chromium/issues/detail?id=316387 |
@@ -38,7 +27,7 @@ const char kFlags[] = "--use_strict --harmony"; |
} |
void InitializeV8() { |
- v8::V8::SetArrayBufferAllocator(new ArrayBufferAllocator()); |
+ v8::V8::SetArrayBufferAllocator(js::ArrayBufferAllocator::SharedInstance()); |
v8::V8::InitializeICU(); |
v8::V8::SetFlagsFromString(kFlags, strlen(kFlags)); |
v8::V8::SetEntropySource(&GenerateEntropy); |