diff --git a/src/new.cpp b/src/new.cpp index 35f481db0..8013d89ae 100644 --- a/src/new.cpp +++ b/src/new.cpp @@ -135,7 +135,8 @@ _LIBCPP_WEAK void operator delete(void* ptr) _NOEXCEPT { - ::free(ptr); + if (ptr) + ::free(ptr); } _LIBCPP_WEAK @@ -256,10 +257,11 @@ _LIBCPP_WEAK void operator delete(void* ptr, std::align_val_t) _NOEXCEPT { + if (ptr) #if defined(_LIBCPP_MSVCRT_LIKE) - ::_aligned_free(ptr); + ::_aligned_free(ptr); #else - ::free(ptr); + ::free(ptr); #endif }