Ignore:
Timestamp:
Aug 20, 2004, 2:57:16 PM (21 years ago)
Author:
rjw
Message:

WebKit:

Implemented new JNI abstraction. We no longer invoke Java methods
directly with JNI, rather we call into the plugin. This allows the
plugin to dispatch the call to the appropriate VM thread. This
change should (will?) fix a whole class of threading related problems with
the Java VM.

Reviewed by Hyatt.

  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge getAppletInView:]):

WebCore:

Implemented new JNI abstraction. We no longer invoke Java methods
directly with JNI, rather we call into the plugin. This allows the
plugin to dispatch the call to the appropriate VM thread. This
change should (will?) fix a whole class of threading related problems with
the Java VM.

Reviewed by Hyatt.

  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::getAppletInstanceForView):
  • kwq/WebCoreBridge.mm: (rootForView): (-[WebCoreBridge executionContextForView:]):

JavaScriptCore:

Implemented new JNI abstraction. We no longer invoke Java methods
directly with JNI, rather we call into the plugin. This allows the
plugin to dispatch the call to the appropriate VM thread. This
change should (will?) fix a whole class of threading related problems with
the Java VM.

Reviewed by Hyatt.

  • JavaScriptCore.pbproj/project.pbxproj:
  • bindings/c/c_instance.h: (KJS::Bindings::CInstance::setExecutionContext): (KJS::Bindings::CInstance::executionContext):
  • bindings/jni/jni_instance.cpp: (JavaInstance::JavaInstance): (JavaInstance::invokeMethod): (JavaInstance::setExecutionContext): (JavaInstance::executionContext):
  • bindings/jni/jni_instance.h:
  • bindings/jni/jni_jsobject.cpp: (JSObject::convertJObjectToValue):
  • bindings/jni/jni_runtime.cpp: (JavaField::JavaField): (JavaArray::convertJObjectToArray): (JavaField::valueFromInstance): (JavaArray::JavaArray): (JavaArray::valueAt):
  • bindings/jni/jni_runtime.h: (KJS::Bindings::JavaArray::operator=): (KJS::Bindings::JavaArray::executionContext):
  • bindings/jni/jni_utility.h:
  • bindings/objc/objc_instance.h: (KJS::Bindings::ObjcInstance::setExecutionContext): (KJS::Bindings::ObjcInstance::executionContext):
  • bindings/runtime.cpp: (Instance::createBindingForLanguageInstance):
  • bindings/runtime.h:
  • bindings/runtime_root.h: (KJS::Bindings::RootObject::nativeHandle):
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/bindings/runtime.cpp

    r6620 r7316  
    101101{
    102102    if (language == Instance::JavaLanguage)
    103         return new Bindings::JavaInstance ((jobject)instance);
     103        return new Bindings::JavaInstance ((jobject)instance, 0);
    104104    else if (language == Instance::ObjectiveCLanguage)
    105105        return new Bindings::ObjcInstance ((struct objc_object *)instance);
Note: See TracChangeset for help on using the changeset viewer.