diff --git a/mozilla/extensions/java/xpcom/src/nsJavaWrapper.cpp b/mozilla/extensions/java/xpcom/src/nsJavaWrapper.cpp index 18d8d09f965..29657e9066e 100644 --- a/mozilla/extensions/java/xpcom/src/nsJavaWrapper.cpp +++ b/mozilla/extensions/java/xpcom/src/nsJavaWrapper.cpp @@ -45,7 +45,8 @@ #include "nsCRT.h" #include "prmem.h" -#define JAVAPROXY_NATIVE(func) Java_org_mozilla_xpcom_XPCOMJavaProxy_##func +#define JAVAPROXY_NATIVE(func) \ + Java_org_mozilla_xpcom_internal_XPCOMJavaProxy_##func static nsID nullID = {0, 0, 0, {0, 0, 0, 0, 0, 0, 0, 0}}; @@ -1379,7 +1380,7 @@ QueryMethodInfo(nsIInterfaceInfo* aIInfo, const char* aMethodName, } /** - * org.mozilla.xpcom.XPCOMJavaProxy.callXPCOMMethod + * org.mozilla.xpcom.XPCOMJavaProxy.internal.callXPCOMMethod */ extern "C" JX_EXPORT jobject JNICALL JAVAPROXY_NATIVE(callXPCOMMethod) (JNIEnv *env, jclass that, jobject aJavaProxy, @@ -1709,10 +1710,11 @@ GetXPCOMInstFromProxy(JNIEnv* env, jobject aJavaObject, void** aResult) } /** - * org.mozilla.xpcom.XPCOMJavaProxy.finalizeProxy + * org.mozilla.xpcom.internal.XPCOMJavaProxy.finalizeProxyNative */ extern "C" JX_EXPORT void JNICALL -JAVAPROXY_NATIVE(finalizeProxy) (JNIEnv *env, jclass that, jobject aJavaProxy) +JAVAPROXY_NATIVE(finalizeProxyNative) (JNIEnv *env, jclass that, + jobject aJavaProxy) { #ifdef DEBUG_JAVAXPCOM PRUint32 xpcom_addr = 0; diff --git a/mozilla/extensions/java/xpcom/src/nsJavaXPCOMBindingUtils.cpp b/mozilla/extensions/java/xpcom/src/nsJavaXPCOMBindingUtils.cpp index e0809902a46..46b2dbaf846 100644 --- a/mozilla/extensions/java/xpcom/src/nsJavaXPCOMBindingUtils.cpp +++ b/mozilla/extensions/java/xpcom/src/nsJavaXPCOMBindingUtils.cpp @@ -224,7 +224,7 @@ InitializeJavaGlobals(JNIEnv *env) goto init_error; } - if (!(clazz = env->FindClass("org/mozilla/xpcom/XPCOMJavaProxy")) || + if (!(clazz = env->FindClass("org/mozilla/xpcom/internal/XPCOMJavaProxy")) || !(xpcomJavaProxyClass = (jclass) env->NewGlobalRef(clazz)) || !(createProxyMID = env->GetStaticMethodID(clazz, "createProxy", "(Ljava/lang/Class;J)Ljava/lang/Object;")) || @@ -234,7 +234,7 @@ InitializeJavaGlobals(JNIEnv *env) "getNativeXPCOMInstance", "(Ljava/lang/Object;)J"))) { - NS_WARNING("Problem creating org.mozilla.xpcom.XPCOMJavaProxy globals"); + NS_WARNING("Problem creating org.mozilla.xpcom.internal.XPCOMJavaProxy globals"); goto init_error; } @@ -283,11 +283,14 @@ init_error: void FreeJavaGlobals(JNIEnv* env) { - PR_Lock(gJavaXPCOMLock); + PRLock* tempLock = nsnull; + if (gJavaXPCOMLock) { + PR_Lock(gJavaXPCOMLock); - // null out global lock so no one else can use it - PRLock* tempLock = gJavaXPCOMLock; - gJavaXPCOMLock = nsnull; + // null out global lock so no one else can use it + tempLock = gJavaXPCOMLock; + gJavaXPCOMLock = nsnull; + } gJavaXPCOMInitialized = PR_FALSE; @@ -354,8 +357,10 @@ FreeJavaGlobals(JNIEnv* env) xpcomJavaProxyClass = nsnull; } - PR_Unlock(tempLock); - PR_DestroyLock(tempLock); + if (tempLock) { + PR_Unlock(tempLock); + PR_DestroyLock(tempLock); + } }