| Index: Source/wtf/Partitions.cpp
|
| diff --git a/Source/wtf/Partitions.cpp b/Source/wtf/Partitions.cpp
|
| index 8ad9931e127445ccdaa81da22289d7688721d64d..d30fcf207d0c9b0aad8e48cd5200f4b1932d48df 100644
|
| --- a/Source/wtf/Partitions.cpp
|
| +++ b/Source/wtf/Partitions.cpp
|
| @@ -37,7 +37,8 @@
|
|
|
| namespace WTF {
|
|
|
| -bool Partitions::s_initialized;
|
| +int Partitions::s_lock = 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_lock);
|
| +
|
| if (!s_initialized) {
|
| m_fastMallocAllocator.init();
|
| m_bufferAllocator.init();
|
| @@ -54,6 +57,8 @@ void Partitions::initialize()
|
| m_layoutAllocator.init();
|
| s_initialized = true;
|
| }
|
| +
|
| + spinLockUnlock(&s_lock);
|
| }
|
|
|
| void Partitions::setHistogramEnumeration(HistogramEnumerationFunction histogramEnumeration)
|
|
|