You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by br...@apache.org on 2013/11/27 05:44:49 UTC
svn commit: r1545922 - in
/subversion/trunk/subversion/bindings/javahl/native/jniwrapper:
jni_base.cpp jni_globalref.hpp
Author: brane
Date: Wed Nov 27 04:44:49 2013
New Revision: 1545922
URL: http://svn.apache.org/r1545922
Log:
Allow the jniwrapper global reference wrappers to work with null
objects or classes.
* subversion/bindings/javahl/native/jniwrapper/jni_globalref.hpp
(GlobalObject::GlobalObject): Create global refs more carefully.
* subversion/bindings/javahl/native/jniwrapper/jni_base.cpp
(GlobalObject::~GlobalObject): Do not try to delete null references.
Modified:
subversion/trunk/subversion/bindings/javahl/native/jniwrapper/jni_base.cpp
subversion/trunk/subversion/bindings/javahl/native/jniwrapper/jni_globalref.hpp
Modified: subversion/trunk/subversion/bindings/javahl/native/jniwrapper/jni_base.cpp
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/native/jniwrapper/jni_base.cpp?rev=1545922&r1=1545921&r2=1545922&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/native/jniwrapper/jni_base.cpp (original)
+++ subversion/trunk/subversion/bindings/javahl/native/jniwrapper/jni_base.cpp Wed Nov 27 04:44:49 2013
@@ -127,7 +127,8 @@ GlobalObject& GlobalObject::operator=(jo
GlobalObject::~GlobalObject()
{
- Env().DeleteGlobalRef(m_obj);
+ if (m_obj)
+ Env().DeleteGlobalRef(m_obj);
}
Modified: subversion/trunk/subversion/bindings/javahl/native/jniwrapper/jni_globalref.hpp
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/native/jniwrapper/jni_globalref.hpp?rev=1545922&r1=1545921&r2=1545922&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/native/jniwrapper/jni_globalref.hpp (original)
+++ subversion/trunk/subversion/bindings/javahl/native/jniwrapper/jni_globalref.hpp Wed Nov 27 04:44:49 2013
@@ -40,7 +40,7 @@ class GlobalObject
{
public:
explicit GlobalObject(Env env, jobject obj)
- : m_obj(env.NewGlobalRef(obj))
+ : m_obj(obj ? env.NewGlobalRef(obj) : NULL)
{}
~GlobalObject();