diff options
Diffstat (limited to 'src/3rdparty/webkit/JavaScriptCore/runtime/CallData.cpp')
-rw-r--r-- | src/3rdparty/webkit/JavaScriptCore/runtime/CallData.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/3rdparty/webkit/JavaScriptCore/runtime/CallData.cpp b/src/3rdparty/webkit/JavaScriptCore/runtime/CallData.cpp index f13be43..b33c8ba 100644 --- a/src/3rdparty/webkit/JavaScriptCore/runtime/CallData.cpp +++ b/src/3rdparty/webkit/JavaScriptCore/runtime/CallData.cpp @@ -31,9 +31,32 @@ #endif #include "JSFunction.h" +#include "JSGlobalObject.h" + +#ifdef QT_BUILD_SCRIPT_LIB +#include "Debugger.h" +#include "DebuggerCallFrame.h" +#endif namespace JSC { +#ifdef QT_BUILD_SCRIPT_LIB +JSValue JSC::NativeFuncWrapper::operator() (ExecState* exec, JSObject* jsobj, JSValue thisValue, const ArgList& argList) const +{ + Debugger* debugger = exec->lexicalGlobalObject()->debugger(); + if (debugger) + debugger->callEvent(DebuggerCallFrame(exec), -1, -1); + + JSValue returnValue = ptr(exec, jsobj, thisValue, argList); + + if (debugger) + debugger->functionExit(returnValue, -1); + + return returnValue; +} +#endif + + JSValue call(ExecState* exec, JSValue functionObject, CallType callType, const CallData& callData, JSValue thisValue, const ArgList& args) { if (callType == CallTypeHost) { |