Unreviewed, add scope.release() to propertyIsEnumerable functions.
authorutatane.tea@gmail.com <utatane.tea@gmail.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 20 May 2017 22:40:41 +0000 (22:40 +0000)
committerutatane.tea@gmail.com <utatane.tea@gmail.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 20 May 2017 22:40:41 +0000 (22:40 +0000)
https://bugs.webkit.org/show_bug.cgi?id=172411

* runtime/JSGlobalObjectFunctions.cpp:
(JSC::globalFuncPropertyIsEnumerable):
* runtime/ObjectPrototype.cpp:
(JSC::objectProtoFuncPropertyIsEnumerable):

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

Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/runtime/JSGlobalObjectFunctions.cpp
Source/JavaScriptCore/runtime/ObjectPrototype.cpp

index 67d3e0d..401d7e2 100644 (file)
@@ -1,5 +1,15 @@
 2017-05-20  Yusuke Suzuki  <utatane.tea@gmail.com>
 
+        Unreviewed, add scope.release() to propertyIsEnumerable functions.
+        https://bugs.webkit.org/show_bug.cgi?id=172411
+
+        * runtime/JSGlobalObjectFunctions.cpp:
+        (JSC::globalFuncPropertyIsEnumerable):
+        * runtime/ObjectPrototype.cpp:
+        (JSC::objectProtoFuncPropertyIsEnumerable):
+
+2017-05-20  Yusuke Suzuki  <utatane.tea@gmail.com>
+
         [JSC] Drop MapBase
         https://bugs.webkit.org/show_bug.cgi?id=172417
 
index f6a52c3..ad23225 100644 (file)
@@ -807,6 +807,7 @@ EncodedJSValue JSC_HOST_CALL globalFuncPropertyIsEnumerable(ExecState* exec)
     auto propertyName = exec->uncheckedArgument(1).toPropertyKey(exec);
     RETURN_IF_EXCEPTION(scope, encodedJSValue());
 
+    scope.release();
     PropertyDescriptor descriptor;
     bool enumerable = object->getOwnPropertyDescriptor(exec, propertyName, descriptor) && descriptor.enumerable();
     return JSValue::encode(jsBoolean(enumerable));
index b8b35c6..66c488e 100644 (file)
@@ -270,6 +270,8 @@ EncodedJSValue JSC_HOST_CALL objectProtoFuncPropertyIsEnumerable(ExecState* exec
 
     JSObject* thisObject = exec->thisValue().toThis(exec, StrictMode).toObject(exec);
     RETURN_IF_EXCEPTION(scope, encodedJSValue());
+
+    scope.release();
     PropertyDescriptor descriptor;
     bool enumerable = thisObject->getOwnPropertyDescriptor(exec, propertyName, descriptor) && descriptor.enumerable();
     return JSValue::encode(jsBoolean(enumerable));