summaryrefslogtreecommitdiffstats
path: root/WebCore/bridge/objc/objc_runtime.mm
diff options
context:
space:
mode:
authorSteve Block <steveblock@google.com>2010-04-27 16:31:00 +0100
committerSteve Block <steveblock@google.com>2010-05-11 14:42:12 +0100
commitdcc8cf2e65d1aa555cce12431a16547e66b469ee (patch)
tree92a8d65cd5383bca9749f5327fb5e440563926e6 /WebCore/bridge/objc/objc_runtime.mm
parentccac38a6b48843126402088a309597e682f40fe6 (diff)
downloadexternal_webkit-dcc8cf2e65d1aa555cce12431a16547e66b469ee.zip
external_webkit-dcc8cf2e65d1aa555cce12431a16547e66b469ee.tar.gz
external_webkit-dcc8cf2e65d1aa555cce12431a16547e66b469ee.tar.bz2
Merge webkit.org at r58033 : Initial merge by git
Change-Id: If006c38561af287c50cd578d251629b51e4d8cd1
Diffstat (limited to 'WebCore/bridge/objc/objc_runtime.mm')
-rw-r--r--WebCore/bridge/objc/objc_runtime.mm22
1 files changed, 10 insertions, 12 deletions
diff --git a/WebCore/bridge/objc/objc_runtime.mm b/WebCore/bridge/objc/objc_runtime.mm
index 772695c..f845a00 100644
--- a/WebCore/bridge/objc/objc_runtime.mm
+++ b/WebCore/bridge/objc/objc_runtime.mm
@@ -27,6 +27,7 @@
#include "objc_runtime.h"
#include "JSDOMBinding.h"
+#include "ObjCRuntimeObject.h"
#include "WebScriptObject.h"
#include "objc_instance.h"
#include "runtime_array.h"
@@ -216,34 +217,31 @@ void ObjcFallbackObjectImp::put(ExecState*, const Identifier&, JSValue, PutPrope
static JSValue JSC_HOST_CALL callObjCFallbackObject(ExecState* exec, JSObject* function, JSValue thisValue, const ArgList& args)
{
- if (!thisValue.inherits(&RuntimeObjectImp::s_info))
+ if (!thisValue.inherits(&ObjCRuntimeObject::s_info))
return throwError(exec, TypeError);
JSValue result = jsUndefined();
- RuntimeObjectImp* imp = static_cast<RuntimeObjectImp*>(asObject(thisValue));
- Instance* instance = imp->getInternalInstance();
+ ObjCRuntimeObject* runtimeObject = static_cast<ObjCRuntimeObject*>(asObject(thisValue));
+ ObjcInstance* objcInstance = runtimeObject->getInternalObjCInstance();
- if (!instance)
- return RuntimeObjectImp::throwInvalidAccessError(exec);
+ if (!objcInstance)
+ return RuntimeObject::throwInvalidAccessError(exec);
- instance->begin();
+ objcInstance->begin();
- ObjcInstance* objcInstance = static_cast<ObjcInstance*>(instance);
id targetObject = objcInstance->getObject();
if ([targetObject respondsToSelector:@selector(invokeUndefinedMethodFromWebScript:withArguments:)]){
- ObjcClass* objcClass = static_cast<ObjcClass*>(instance->getClass());
+ ObjcClass* objcClass = static_cast<ObjcClass*>(objcInstance->getClass());
OwnPtr<ObjcMethod> fallbackMethod(new ObjcMethod(objcClass->isa(), @selector(invokeUndefinedMethodFromWebScript:withArguments:)));
const Identifier& nameIdentifier = static_cast<ObjcFallbackObjectImp*>(function)->propertyName();
RetainPtr<CFStringRef> name(AdoptCF, CFStringCreateWithCharacters(0, nameIdentifier.data(), nameIdentifier.size()));
fallbackMethod->setJavaScriptName(name.get());
- MethodList methodList;
- methodList.append(fallbackMethod.get());
- result = instance->invokeMethod(exec, methodList, args);
+ result = objcInstance->invokeObjcMethod(exec, fallbackMethod.get(), args);
}
- instance->end();
+ objcInstance->end();
return result;
}