diff --git a/mozilla/extensions/java/xpcom/src/nsJavaInterfaces.cpp b/mozilla/extensions/java/xpcom/src/nsJavaInterfaces.cpp index ed6e0d2f470..2b0e86f5ef2 100644 --- a/mozilla/extensions/java/xpcom/src/nsJavaInterfaces.cpp +++ b/mozilla/extensions/java/xpcom/src/nsJavaInterfaces.cpp @@ -69,18 +69,15 @@ InitEmbedding_Impl(JNIEnv* env, jobject aMozBinDirectory, } // create nsAppFileLocProviderProxy from given Java object - nsAppFileLocProviderProxy* provider = nsnull; + nsCOMPtr provider; if (aAppFileLocProvider) { - provider = new nsAppFileLocProviderProxy(aAppFileLocProvider); - if (!provider) - return NS_ERROR_OUT_OF_MEMORY; + rv = NS_NewAppFileLocProviderProxy(aAppFileLocProvider, + getter_AddRefs(provider)); + NS_ENSURE_SUCCESS(rv, rv); } // init Gecko rv = NS_InitEmbedding(directory, provider); - if (provider) { - delete provider; - } NS_ENSURE_SUCCESS(rv, rv); // init Event Queue