summaryrefslogtreecommitdiffstats
path: root/vespamalloc
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2023-03-20 11:35:18 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2023-03-20 11:35:18 +0000
commita957c648ab6d1ba61ee81da7aa466b05c795b808 (patch)
tree60f47357d5d6d8e443cbf6724b60cf434472933f /vespamalloc
parent605fde0ceb8a8d1732efc18e61c3a0e8b657037b (diff)
Verify magic at destruction.
Diffstat (limited to 'vespamalloc')
-rw-r--r--vespamalloc/src/vespamalloc/malloc/overload.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/vespamalloc/src/vespamalloc/malloc/overload.h b/vespamalloc/src/vespamalloc/malloc/overload.h
index abfe376b38b..725ca761ec1 100644
--- a/vespamalloc/src/vespamalloc/malloc/overload.h
+++ b/vespamalloc/src/vespamalloc/malloc/overload.h
@@ -11,11 +11,17 @@
class CreateAllocator
{
public:
- CreateAllocator() : _initialized(0x192A3B4C) {
+ static constexpr unsigned CONSTRUCTED = 0x192A3B4C;
+ static constexpr unsigned DESTRUCTED = 0xd1d2d3d4;
+ CreateAllocator() : _initialized(CONSTRUCTED) {
vespamalloc::createAllocator();
}
+ ~CreateAllocator() {
+ assert(_initialized == CONSTRUCTED);
+ _initialized = DESTRUCTED;
+ }
private:
- [[maybe_unused]] unsigned _initialized;
+ unsigned _initialized;
};
static CreateAllocator _CreateAllocator __attribute__ ((init_priority (543)));