Bug 337675 - improper automatic nsISupportsWeakReference handling for java-based xpcom objects. XULRunner only. r=bsmedberg

Original committer: pedemont%us.ibm.com
Original revision: 1.45
Original date: 2006/06/09 13:30:24
This commit is contained in:
pedemont%us.ibm.com 2006-09-27 15:19:14 +00:00
Родитель 64837a90e6
Коммит 9f2df662ab
1 изменённых файлов: 1 добавлений и 8 удалений

Просмотреть файл

@ -820,7 +820,7 @@ GetNewOrUsedJavaObject(JNIEnv* env, nsISupports* aXPCOMObject,
nsresult nsresult
GetNewOrUsedXPCOMObject(JNIEnv* env, jobject aJavaObject, const nsIID& aIID, GetNewOrUsedXPCOMObject(JNIEnv* env, jobject aJavaObject, const nsIID& aIID,
nsISupports** aResult, PRBool* aIsXPTCStub) nsISupports** aResult)
{ {
NS_PRECONDITION(aResult != nsnull, "null ptr"); NS_PRECONDITION(aResult != nsnull, "null ptr");
if (!aResult) if (!aResult)
@ -849,16 +849,9 @@ GetNewOrUsedXPCOMObject(JNIEnv* env, jobject aJavaObject, const nsIID& aIID,
rv = rootObject->QueryInterface(aIID, (void**) aResult); rv = rootObject->QueryInterface(aIID, (void**) aResult);
NS_ENSURE_SUCCESS(rv, rv); NS_ENSURE_SUCCESS(rv, rv);
if (aIsXPTCStub) {
*aIsXPTCStub = PR_FALSE;
}
return NS_OK; return NS_OK;
} }
if (aIsXPTCStub) {
*aIsXPTCStub = PR_TRUE;
}
nsJavaXPTCStub* stub; nsJavaXPTCStub* stub;
rv = gJavaToXPTCStubMap->Find(env, aJavaObject, aIID, &stub); rv = gJavaToXPTCStubMap->Find(env, aJavaObject, aIID, &stub);
NS_ENSURE_SUCCESS(rv, rv); NS_ENSURE_SUCCESS(rv, rv);