On 08.03.2015 02:22, rhuijben_at_apache.org wrote:
> Author: rhuijben
> Date: Sun Mar 8 01:22:15 2015
> New Revision: 1664939
>
> URL: http://svn.apache.org/r1664939
> Log:
> Following up on r1664938, add some debug code to make 'Java error leaks'
> visible in maintainer/test mode.
>
> * subversion/bindings/javahl/native/JNIUtil.cpp
> (WrappedException): Track whether the exception is fetched. Use DBG output
> if it isn't.
>
> Modified:
> subversion/trunk/subversion/bindings/javahl/native/JNIUtil.cpp
>
> Modified: subversion/trunk/subversion/bindings/javahl/native/JNIUtil.cpp
> URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/native/JNIUtil.cpp?rev=1664939&r1=1664938&r2=1664939&view=diff
> ==============================================================================
> --- subversion/trunk/subversion/bindings/javahl/native/JNIUtil.cpp (original)
> +++ subversion/trunk/subversion/bindings/javahl/native/JNIUtil.cpp Sun Mar 8 01:22:15 2015
> @@ -1079,6 +1079,9 @@ class WrappedException
> {
> JNIEnv *m_env;
> jthrowable m_exception;
> +#ifdef SVN_DEBUG
> + bool m_fetched;
> +#endif
> public:
> WrappedException(JNIEnv *env)
> {
> @@ -1092,6 +1095,8 @@ public:
>
> // As adding a reference in exception state fails
> m_exception = static_cast<jthrowable>(env->NewGlobalRef(exceptionObj));
> +
> + m_fetched = false;
> }
This breaks non-maintainer-mode.
Also, have you tested how your changes work with the new-style JavaHL
bits that use the jniwrapper code?
-- Brane
Received on 2015-03-08 08:27:16 CET