diff options
author | Elliott Hughes <enh@google.com> | 2014-06-27 15:50:43 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2014-06-27 15:50:43 +0000 |
commit | da7f04394acea1101dab429d1056f4ca47b65a22 (patch) | |
tree | 30db949a15713638f8d57d7d09726329cd9b438b | |
parent | 0e2c05c1f7df89147e74dc6c937ec7c413429c9c (diff) | |
parent | 3fa23a6b14e3eb3260090007012281b8b556739d (diff) | |
download | android_libnativehelper-da7f04394acea1101dab429d1056f4ca47b65a22.tar.gz android_libnativehelper-da7f04394acea1101dab429d1056f4ca47b65a22.tar.bz2 android_libnativehelper-da7f04394acea1101dab429d1056f4ca47b65a22.zip |
am 3fa23a6b: Merge "Fixing PrintWriter not being disposed"
* commit '3fa23a6b14e3eb3260090007012281b8b556739d':
Fixing PrintWriter not being disposed
-rw-r--r-- | JNIHelp.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/JNIHelp.cpp b/JNIHelp.cpp index fd5884a..fcad2f4 100644 --- a/JNIHelp.cpp +++ b/JNIHelp.cpp @@ -172,16 +172,16 @@ static bool getStackTrace(C_JNIEnv* env, jthrowable exception, std::string& resu return false; } - jobject printWriter = - (*env)->NewObject(e, printWriterClass.get(), printWriterCtor, stringWriter.get()); - if (printWriter == NULL) { + scoped_local_ref<jobject> printWriter(env, + (*env)->NewObject(e, printWriterClass.get(), printWriterCtor, stringWriter.get())); + if (printWriter.get() == NULL) { return false; } scoped_local_ref<jclass> exceptionClass(env, (*env)->GetObjectClass(e, exception)); // can't fail jmethodID printStackTraceMethod = (*env)->GetMethodID(e, exceptionClass.get(), "printStackTrace", "(Ljava/io/PrintWriter;)V"); - (*env)->CallVoidMethod(e, exception, printStackTraceMethod, printWriter); + (*env)->CallVoidMethod(e, exception, printStackTraceMethod, printWriter.get()); if ((*env)->ExceptionCheck(e)) { return false; |