Apply patch for Java to fix direct use of a weak global reference in directors sometimes causing seg faults especially on Android.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13834 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
William S Fulton 2012-09-13 19:02:02 +00:00
commit b38722e8ee
3 changed files with 6 additions and 3 deletions

View file

@ -149,7 +149,7 @@ namespace Swig {
void swig_disconnect_director_self(const char *disconn_method) {
JNIEnvWrapper jnienv(this) ;
JNIEnv *jenv = jnienv.getJNIEnv() ;
jobject jobj = swig_self_.peek();
jobject jobj = swig_self_.get(jenv);
#if defined(DEBUG_DIRECTOR_OWNED)
std::cout << "Swig::Director::disconnect_director_self(" << jobj << ")" << std::endl;
#endif
@ -162,6 +162,7 @@ namespace Swig {
jenv->CallVoidMethod(jobj, disconn_meth);
}
}
jenv->DeleteLocalRef(jobj);
}
public: