REGRESSION (r208711-r208722): ASSERTION FAILED: hasInlineStorage()
authorfpizlo@apple.com <fpizlo@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 15 Nov 2016 17:32:53 +0000 (17:32 +0000)
committerfpizlo@apple.com <fpizlo@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 15 Nov 2016 17:32:53 +0000 (17:32 +0000)
https://bugs.webkit.org/show_bug.cgi?id=164775

Reviewed by Mark Lam and Keith Miller.

We were calling inlineStorage() which asserts that inline storage is not empty. But we
were calling it in a context where it could be empty and that's fine. So, we now call
inlineStorageUnsafe().

* runtime/JSObject.h:
(JSC::JSFinalObject::JSFinalObject):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@208734 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/runtime/JSObject.h

index 1841764..f5b5d33 100644 (file)
@@ -1,3 +1,17 @@
+2016-11-15  Filip Pizlo  <fpizlo@apple.com>
+
+        REGRESSION (r208711-r208722): ASSERTION FAILED: hasInlineStorage()
+        https://bugs.webkit.org/show_bug.cgi?id=164775
+
+        Reviewed by Mark Lam and Keith Miller.
+        
+        We were calling inlineStorage() which asserts that inline storage is not empty. But we
+        were calling it in a context where it could be empty and that's fine. So, we now call
+        inlineStorageUnsafe().
+
+        * runtime/JSObject.h:
+        (JSC::JSFinalObject::JSFinalObject):
+
 2016-11-14  Csaba Osztrogon√°c  <ossy@webkit.org>
 
         [ARM] Unreviewed buildfix after r208720.
index 7f7ab98..b4097a4 100644 (file)
@@ -1112,7 +1112,7 @@ private:
     explicit JSFinalObject(VM& vm, Structure* structure, Butterfly* butterfly = nullptr)
         : JSObject(vm, structure, butterfly)
     {
-        memset(inlineStorage(), 0, structure->inlineCapacity() * sizeof(EncodedJSValue));
+        memset(inlineStorageUnsafe(), 0, structure->inlineCapacity() * sizeof(EncodedJSValue));
     }
 };