Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1845)

Unified Diff: base/allocator/allocator_shim_override_cpp_symbols.h

Issue 2658723007: Hook up allocator shim on mac. (Closed)
Patch Set: Rebase. Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: base/allocator/allocator_shim_override_cpp_symbols.h
diff --git a/base/allocator/allocator_shim_override_cpp_symbols.h b/base/allocator/allocator_shim_override_cpp_symbols.h
index 616716fb96f0dda2bc94d18ab18616c5e9acc3f3..8fc15c697a9d932066a64b9b0881fb19f21043ac 100644
--- a/base/allocator/allocator_shim_override_cpp_symbols.h
+++ b/base/allocator/allocator_shim_override_cpp_symbols.h
@@ -14,6 +14,46 @@
#include "base/allocator/allocator_shim_internals.h"
+#if defined(OS_MACOSX)
Primiano Tucci (use gerrit) 2017/01/28 05:10:02 just checking: do we actually need these? IIRC the
erikchen 2017/01/31 02:21:22 We don't, the implementation of libc++.dylib forwa
+
+SHIM_ALWAYS_EXPORT void* operator new(size_t size) {
+ return ShimCppNew(size);
+}
+
+SHIM_ALWAYS_EXPORT void operator delete(void* ptr)__THROW {
+ return ShimCppDelete(ptr);
+}
+
+SHIM_ALWAYS_EXPORT void* operator new[](size_t size) {
+ return ShimCppNew(size);
+}
+
+SHIM_ALWAYS_EXPORT void operator delete[](void* ptr) __THROW {
+ return ShimCppDelete(ptr);
+}
+
+SHIM_ALWAYS_EXPORT void* operator new(size_t size,
+ const std::nothrow_t&) __THROW {
+ return ShimCppNew(size);
+}
+
+SHIM_ALWAYS_EXPORT void* operator new[](size_t size,
+ const std::nothrow_t&) __THROW {
+ return ShimCppNew(size);
+}
+
+SHIM_ALWAYS_EXPORT void operator delete(void* ptr,
+ const std::nothrow_t&)__THROW {
+ ShimCppDelete(ptr);
+}
+
+SHIM_ALWAYS_EXPORT void operator delete[](void* ptr,
+ const std::nothrow_t&) __THROW {
+ ShimCppDelete(ptr);
+}
+
+#else // !OS_MACOSX
+
SHIM_ALWAYS_EXPORT void* operator new(size_t size)
SHIM_ALIAS_SYMBOL(ShimCppNew);
@@ -40,3 +80,5 @@ SHIM_ALWAYS_EXPORT void operator delete(void* p, const std::nothrow_t&) __THROW
SHIM_ALWAYS_EXPORT void operator delete[](void* p,
const std::nothrow_t&) __THROW
SHIM_ALIAS_SYMBOL(ShimCppDelete);
+
+#endif // OS_MACOSX

Powered by Google App Engine
This is Rietveld 408576698