summaryrefslogtreecommitdiff
path: root/subversion/bindings/javahl/native/CommitMessage.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'subversion/bindings/javahl/native/CommitMessage.cpp')
-rw-r--r--subversion/bindings/javahl/native/CommitMessage.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/subversion/bindings/javahl/native/CommitMessage.cpp b/subversion/bindings/javahl/native/CommitMessage.cpp
index a947f97..51bd83d 100644
--- a/subversion/bindings/javahl/native/CommitMessage.cpp
+++ b/subversion/bindings/javahl/native/CommitMessage.cpp
@@ -65,6 +65,7 @@ CommitMessage::getCommitMessage(const char **log_msg,
const apr_array_header_t *commit_items,
apr_pool_t *pool)
{
+ *log_msg = NULL;
*tmp_file = NULL;
JNIEnv *env = JNIUtil::getEnv();
@@ -72,7 +73,7 @@ CommitMessage::getCommitMessage(const char **log_msg,
static jmethodID midCallback = 0;
if (midCallback == 0)
{
- jclass clazz2 = env->FindClass(JAVA_PACKAGE"/callback/CommitMessageCallback");
+ jclass clazz2 = env->FindClass(JAVAHL_CLASS("/callback/CommitMessageCallback"));
if (JNIUtil::isJavaExceptionThrown())
return SVN_NO_ERROR;
@@ -93,6 +94,9 @@ CommitMessage::getCommitMessage(const char **log_msg,
jobject jitem = CreateJ::CommitItem(item);
+ if (!jitem)
+ return SVN_NO_ERROR; /* Exception thrown */
+
// store the Java object into the array
jitems.push_back(jitem);
}
@@ -102,7 +106,7 @@ CommitMessage::getCommitMessage(const char **log_msg,
midCallback,
CreateJ::Set(jitems));
if (JNIUtil::isJavaExceptionThrown())
- return SVN_NO_ERROR;
+ POP_AND_RETURN_EXCEPTION_AS_SVNERROR();
if (jmessage != NULL)
{