| Index: Source/wtf/Partitions.cpp
|
| diff --git a/Source/wtf/Partitions.cpp b/Source/wtf/Partitions.cpp
|
| index 8ad9931e127445ccdaa81da22289d7688721d64d..6c2b8da2495d5171ecdeaf3eaea1e2c5bf022635 100644
|
| --- a/Source/wtf/Partitions.cpp
|
| +++ b/Source/wtf/Partitions.cpp
|
| @@ -37,7 +37,8 @@
|
|
|
| namespace WTF {
|
|
|
| -bool Partitions::s_initialized;
|
| +int Partitions::s_initializationLock = 0;
|
| +bool Partitions::s_initialized = false;
|
|
|
| PartitionAllocatorGeneric Partitions::m_fastMallocAllocator;
|
| PartitionAllocatorGeneric Partitions::m_bufferAllocator;
|
| @@ -47,6 +48,8 @@ HistogramEnumerationFunction Partitions::m_histogramEnumeration = nullptr;
|
|
|
| void Partitions::initialize()
|
| {
|
| + spinLockLock(&s_initializationLock);
|
| +
|
| if (!s_initialized) {
|
| m_fastMallocAllocator.init();
|
| m_bufferAllocator.init();
|
| @@ -54,6 +57,8 @@ void Partitions::initialize()
|
| m_layoutAllocator.init();
|
| s_initialized = true;
|
| }
|
| +
|
| + spinLockUnlock(&s_initializationLock);
|
| }
|
|
|
| void Partitions::setHistogramEnumeration(HistogramEnumerationFunction histogramEnumeration)
|
|
|