Index: src/runtime.cc |
diff --git a/src/runtime.cc b/src/runtime.cc |
index 0ce58366d2c5441734325fa79a9702eac56c6860..4bd6eb6fd0c9924496f2e48719a7069a3d735069 100644 |
--- a/src/runtime.cc |
+++ b/src/runtime.cc |
@@ -615,6 +615,14 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_GetHandler) { |
} |
+RUNTIME_FUNCTION(MaybeObject*, Runtime_Fix) { |
+ ASSERT(args.length() == 1); |
+ CONVERT_CHECKED(JSProxy, proxy, args[0]); |
+ proxy->Fix(); |
+ return proxy; |
+} |
+ |
+ |
RUNTIME_FUNCTION(MaybeObject*, Runtime_ClassOf) { |
NoHandleAllocation ha; |
ASSERT(args.length() == 1); |
@@ -4307,11 +4315,11 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_HasProperty) { |
NoHandleAllocation na; |
ASSERT(args.length() == 2); |
- // Only JS objects can have properties. |
- if (args[0]->IsJSObject()) { |
- JSObject* object = JSObject::cast(args[0]); |
+ // Only JS receivers can have properties. |
+ if (args[0]->IsJSReceiver()) { |
+ JSReceiver* receiver = JSReceiver::cast(args[0]); |
CONVERT_CHECKED(String, key, args[1]); |
- if (object->HasProperty(key)) return isolate->heap()->true_value(); |
+ if (receiver->HasProperty(key)) return isolate->heap()->true_value(); |
} |
return isolate->heap()->false_value(); |
} |