From dee4eb7727472d708052b2f054bc7ca164b884c7 Mon Sep 17 00:00:00 2001 From: "pedemont%us.ibm.com" Date: Wed, 27 Sep 2006 15:09:51 +0000 Subject: [PATCH] Remove nsWriteSegmentFun - no longer needed. Original committer: pedemont%us.ibm.com Original revision: 1.10 Original date: 2004/10/27 22:03:45 git-svn-id: svn://10.0.0.236/trunk@212505 18797224-902f-48f8-a5cc-f745e15eee43 --- .../java/xpcom/src/nsJavaInterfaces.cpp | 57 ------------------- 1 file changed, 57 deletions(-) diff --git a/mozilla/extensions/java/xpcom/src/nsJavaInterfaces.cpp b/mozilla/extensions/java/xpcom/src/nsJavaInterfaces.cpp index e1a9201d13d..fa5777529d8 100644 --- a/mozilla/extensions/java/xpcom/src/nsJavaInterfaces.cpp +++ b/mozilla/extensions/java/xpcom/src/nsJavaInterfaces.cpp @@ -227,63 +227,6 @@ GECKO_NATIVE(getServiceManager) (JNIEnv *env, jclass) return java_stub; } -// JNI wrapper for calling an nsWriteSegmentFun function -extern "C" JNIEXPORT jint JNICALL -XPCOM_NATIVE(nsWriteSegmentFun) (JNIEnv *env, jclass that, jint aWriterFunc, - jobject aInStream, jint aClosure, - jbyteArray aFromSegment, jint aToOffset, - jint aCount) -{ - nsresult rc; - - void* inst = GetMatchingXPCOMObject(env, aInStream); - if (inst == nsnull) { - // If there is not corresponding XPCOM object, then that means that the - // parameter is non-generated class (that is, it is not one of our - // Java stubs that represent an exising XPCOM object). So we need to - // create an XPCOM stub, that can route any method calls to the class. - - // Get interface info for class - nsCOMPtr iim = XPTI_GetInterfaceInfoManager(); - nsCOMPtr iinfo; - iim->GetInfoForIID(&NS_GET_IID(nsIInputStream), getter_AddRefs(iinfo)); - - // Create XPCOM stub - nsJavaXPTCStub* xpcomStub = new nsJavaXPTCStub(env, aInStream, iinfo); - NS_ADDREF(xpcomStub); - inst = SetAsXPTCStub(xpcomStub); - AddJavaXPCOMBinding(env, aInStream, inst); - } - - nsIInputStream* instream; - if (IsXPTCStub(inst)) - instream = (nsIInputStream*) GetXPTCStubAddr(inst); - else { - JavaXPCOMInstance* xpcomInst = (JavaXPCOMInstance*) inst; - instream = (nsIInputStream*) xpcomInst->GetInstance(); - } - - jbyte* fromSegment = nsnull; - jboolean isCopy = JNI_FALSE; - if (aFromSegment) { - fromSegment = env->GetByteArrayElements(aFromSegment, &isCopy); - } - - PRUint32 write_count; - nsWriteSegmentFun writer = (nsWriteSegmentFun) aWriterFunc; - rc = writer(instream, (void*) aClosure, (const char*) fromSegment, aToOffset, - aCount, &write_count); - if (NS_FAILED(rc)) { - ThrowXPCOMException(env, rc); - return 0; - } - - if (isCopy) { - env->ReleaseByteArrayElements(aFromSegment, fromSegment, 0); - } - return write_count; -} - extern "C" JNIEXPORT void JNICALL XPCOM_NATIVE(CallXPCOMMethodVoid) (JNIEnv *env, jclass that, jobject aJavaObject, jint aMethodIndex, jobjectArray aParams)