diff --git a/Subtrees/beast/modules/beast_core/memory/SharedPtr.h b/Subtrees/beast/modules/beast_core/memory/SharedPtr.h index fc7613138a..a8e10bbaa3 100644 --- a/Subtrees/beast/modules/beast_core/memory/SharedPtr.h +++ b/Subtrees/beast/modules/beast_core/memory/SharedPtr.h @@ -225,7 +225,7 @@ public: } private: - // Acquire a reference to u for the caller if not null. + // Acquire a reference to u for the caller. // template static T* acquire (U* u) noexcept @@ -235,12 +235,11 @@ private: return u; } - // Release a reference to t if not null. - // - static void release (T* t) noexcept + static void release (T* t) { if (t != nullptr) - t->decReferenceCount (); + if (t->decReferenceCount (false)) + ContainerDeletePolicy ::destroy (t); } // Swap ownership of the currently referenced object.