summaryrefslogtreecommitdiffstats
path: root/JavaScriptCore/runtime/PropertySlot.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'JavaScriptCore/runtime/PropertySlot.cpp')
-rw-r--r--JavaScriptCore/runtime/PropertySlot.cpp10
1 files changed, 3 insertions, 7 deletions
diff --git a/JavaScriptCore/runtime/PropertySlot.cpp b/JavaScriptCore/runtime/PropertySlot.cpp
index a0a2f48..fd16c0c 100644
--- a/JavaScriptCore/runtime/PropertySlot.cpp
+++ b/JavaScriptCore/runtime/PropertySlot.cpp
@@ -26,19 +26,15 @@
namespace JSC {
-JSValue PropertySlot::functionGetter(ExecState* exec, const Identifier&, const PropertySlot& slot)
+JSValue PropertySlot::functionGetter(ExecState* exec) const
{
// Prevent getter functions from observing execution if an exception is pending.
if (exec->hadException())
return exec->exception();
CallData callData;
- CallType callType = slot.m_data.getterFunc->getCallData(callData);
- if (callType == CallTypeHost)
- return callData.native.function(exec, slot.m_data.getterFunc, slot.slotBase(), exec->emptyList());
- ASSERT(callType == CallTypeJS);
- // FIXME: Can this be done more efficiently using the callData?
- return asFunction(slot.m_data.getterFunc)->call(exec, slot.slotBase(), exec->emptyList());
+ CallType callType = m_data.getterFunc->getCallData(callData);
+ return call(exec, m_data.getterFunc, callType, callData, thisValue(), exec->emptyList());
}
} // namespace JSC