Author: hwright Date: Mon May 31 19:36:53 2010 New Revision: 949842 URL: http://svn.apache.org/viewvc?rev=949842&view=rev Log: Fix a double free in the JavaHL bindings.
Patch by: Byeongcheol Lee <[email protected]> * subversion/bindings/javahl/native/CopySources.cpp (array): Replace JNIStringHolder() with two calls to GetStringUTFChars() and DeleteLocalRef(). Modified: subversion/trunk/subversion/bindings/javahl/native/CopySources.cpp Modified: subversion/trunk/subversion/bindings/javahl/native/CopySources.cpp URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/native/CopySources.cpp?rev=949842&r1=949841&r2=949842&view=diff ============================================================================== --- subversion/trunk/subversion/bindings/javahl/native/CopySources.cpp (original) +++ subversion/trunk/subversion/bindings/javahl/native/CopySources.cpp Mon May 31 19:36:53 2010 @@ -116,11 +116,12 @@ CopySources::array(SVN::Pool &pool) if (JNIUtil::isJavaExceptionThrown()) return NULL; - JNIStringHolder path(jpath); + const char *path = env->GetStringUTFChars(jpath, NULL); if (JNIUtil::isJavaExceptionThrown()) return NULL; - src->path = apr_pstrdup(p, (const char *) path); + src->path = apr_pstrdup(p, path); + env->ReleaseStringUTFChars(jpath, path); SVN_JNI_ERR(JNIUtil::preprocessPath(src->path, pool.pool()), NULL); env->DeleteLocalRef(jpath);
