| Index: Source/heap/Heap.h
|
| diff --git a/Source/heap/Heap.h b/Source/heap/Heap.h
|
| index e970e62b0c80b1f165a749d4ecaab3bb9f18cd1b..a4a83205f0f8deb986deee177075657add0c3084 100644
|
| --- a/Source/heap/Heap.h
|
| +++ b/Source/heap/Heap.h
|
| @@ -1341,6 +1341,13 @@ struct ThreadingTrait<HashMap<Key, Value, HeapAllocator, T, U, V> > {
|
| && (ThreadingTrait<Value>::Affinity == MainThreadOnly) ? MainThreadOnly : AnyThread;
|
| };
|
|
|
| +template<typename First, typename Second>
|
| +struct ThreadingTrait<WTF::KeyValuePair<First, Second> > {
|
| + static const ThreadAffinity Affinity =
|
| + (ThreadingTrait<First>::Affinity == MainThreadOnly)
|
| + && (ThreadingTrait<Second>::Affinity == MainThreadOnly) ? MainThreadOnly : AnyThread;
|
| +};
|
| +
|
| template<typename T, typename U, typename V>
|
| struct ThreadingTrait<HashSet<T, HeapAllocator, U, V> > {
|
| static const ThreadAffinity Affinity = ThreadingTrait<T>::Affinity;
|
|
|