diff --git a/src/new.cpp b/src/new.cpp index 33693da7a..586c4fefd 100644 --- a/src/new.cpp +++ b/src/new.cpp @@ -1,6 +1,7 @@ #include // std::size_t #include "server.h" #include "new.h" +#include #ifdef SANITIZE void *operator new(size_t size, enum MALLOC_CLASS mclass) @@ -21,6 +22,11 @@ void *operator new(size_t size, enum MALLOC_CLASS mclass) return zmalloc(size, mclass); } +void *operator new(std::size_t size, const std::nothrow_t &) +{ + return zmalloc(size, MALLOC_LOCAL); +} + void operator delete(void * p) noexcept { zfree(p); @@ -31,4 +37,4 @@ void operator delete(void *p, std::size_t) noexcept zfree(p); } -#endif \ No newline at end of file +#endif