diff options
Diffstat (limited to 'JavaScriptCore/runtime/StructureChain.cpp')
-rw-r--r-- | JavaScriptCore/runtime/StructureChain.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/JavaScriptCore/runtime/StructureChain.cpp b/JavaScriptCore/runtime/StructureChain.cpp index 85049b1..6e8a0ee 100644 --- a/JavaScriptCore/runtime/StructureChain.cpp +++ b/JavaScriptCore/runtime/StructureChain.cpp @@ -51,7 +51,10 @@ bool StructureChain::isCacheable() const uint32_t i = 0; while (m_vector[i]) { - if (m_vector[i++]->isDictionary()) + // Both classes of dictionary structure may change arbitrarily so we can't cache them + if (m_vector[i]->isDictionary()) + return false; + if (!m_vector[i++]->typeInfo().hasDefaultGetPropertyNames()) return false; } return true; |