Thiru Kandasamy <thiru@collab.net>


Found
r860726, r860722, r860678

r860726 | dlr | 2006-07-13 18:00:36 -0500 (Thu, 13 Jul 2006)

JavaHL: Improve handling of the Subversion client's configuration
directory during native library initialization, and API manipulation.

Depends on r20648's bug fix to svn_config_ensure().


[ in subversion/bindings/java/javahl/ ]

* native/SVNClient.cpp
  (setConfigDirectory): When changing the config directory, ensure
   that the config area and templates exist in the new location.

* native/SVNClient.h
  (setConfigDirectory): Document behavior.

* native/JNIUtil.cpp
  (JNIGlobalInit): Remove code block which called svn_config_ensure()
   during library initialization, and errored out on failure.

* src/org/tigris/subversion/javahl/SVNClientInterface.java
  (setConfigDirectory): Document change in behavior.

* src/org/tigris/subversion/javahl/SVNClient.java
  (SVNClient): Call setConfigDirectory() to trigger svn_config_ensure().


Found by: Thiru Kandasamy <thiru@collab.net>
Review by: djames


r860722 | dlr | 2006-07-13 17:12:08 -0500 (Thu, 13 Jul 2006)

Fix broken API contract and numerous error leaks in
svn_config_ensure().  The broken API contract resulted an error like
the following when $HOME isn't accessible:

  svn: Can't check path '/home/thiru/.subversion': Permission denied

* subversion/libsvn_subr/config_file.c
  (svn_config_ensure): If we're unable to read the path specified by
   the CONFIG_DIR parameter, stop processing but don't return the
   SVN-wrapped APR "Permission denied" error.  Also, plug numerous
   error leaks.

* subversion/include/svn_config.h
  (svn_config_ensure): Make doc string comprehensible.

Found by: Thiru Kandasamy <thiru@collab.net>
Review by: djames


r860678 | dlr | 2006-07-12 16:13:38 -0500 (Wed, 12 Jul 2006)

* subversion/bindings/java/javahl/native/JNIUtil.cpp
  (JNIUtil::JNIGlobalInit): Add FIXME note about NativeResources class
   initialization failing when $HOME is not writable.

Found by: Thiru Kumar <thiru@collab.net>