From b115ab4e22a9602465bb42d42711db27fb69a357 Mon Sep 17 00:00:00 2001 From: "pedemont%us.ibm.com" Date: Wed, 27 Sep 2006 15:17:18 +0000 Subject: [PATCH] Merge duplicate code. Original committer: pedemont%us.ibm.com Original revision: 1.22 Original date: 2005/01/20 22:07:26 git-svn-id: svn://10.0.0.236/trunk@212594 18797224-902f-48f8-a5cc-f745e15eee43 --- .../java/xpcom/src/nsJavaXPTCStub.cpp | 39 +++++-------------- 1 file changed, 10 insertions(+), 29 deletions(-) diff --git a/mozilla/extensions/java/xpcom/src/nsJavaXPTCStub.cpp b/mozilla/extensions/java/xpcom/src/nsJavaXPTCStub.cpp index 8d135f900fd..a1437d0ffb9 100644 --- a/mozilla/extensions/java/xpcom/src/nsJavaXPTCStub.cpp +++ b/mozilla/extensions/java/xpcom/src/nsJavaXPTCStub.cpp @@ -821,36 +821,17 @@ nsJavaXPTCStub::SetupJavaParams(const nsXPTParamInfo &aParamInfo, jobject java_stub = nsnull; if (xpcom_obj) { - java_stub = gBindings->GetJavaObject(mJavaEnv, xpcom_obj); + nsID iid; + rv = GetIIDForMethodParam(mIInfo, aMethodInfo, aParamInfo, aMethodIndex, + aDispatchParams, PR_FALSE, iid); + if (NS_FAILED(rv)) + break; - if (java_stub == nsnull) { - // wrap xpcom instance - nsID iid; - rv = GetIIDForMethodParam(mIInfo, aMethodInfo, aParamInfo, - aMethodIndex, aDispatchParams, - PR_FALSE, iid); - if (NS_FAILED(rv)) - break; - - JavaXPCOMInstance* inst; - rv = CreateJavaXPCOMInstance((nsISupports*) xpcom_obj, &iid, &inst); - if (NS_FAILED(rv)) - break; - - // create java stub - char* iface_name; - rv = inst->InterfaceInfo()->GetName(&iface_name); - if (NS_FAILED(rv)) - break; - java_stub = CreateJavaWrapper(mJavaEnv, iface_name); - - if (java_stub) { - // Associate XPCOM object w/ Java stub - rv = gBindings->AddBinding(mJavaEnv, java_stub, inst); - if (NS_FAILED(rv)) - break; - } - } + // Get matching Java object for given xpcom object + rv = gBindings->GetJavaObject(mJavaEnv, xpcom_obj, iid, PR_FALSE, + &java_stub); + if (NS_FAILED(rv)) + break; } if (!aParamInfo.IsOut()) { // 'in'