summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Mike Lockwood <lockwood@google.com> 2014-06-02 18:25:28 +0000
committer Android Git Automerger <android-git-automerger@android.com> 2014-06-02 18:25:28 +0000
commit750e78bb7626e2e0d5c8feed4a6e4fbe7fe9b5da (patch)
tree7b9c575ad96bf745f7ed73a0aaa396b2d4045032
parentdaa0ee137d43850c834b1ead3f871ceaa49814a7 (diff)
parent27eb205e21e7715764084085f382d690e0406c63 (diff)
am 27eb205e: Merge "MtpDatabase JNI: Fixed a memory-leak in getObjectPropertyValue()."
* commit '27eb205e21e7715764084085f382d690e0406c63': MtpDatabase JNI: Fixed a memory-leak in getObjectPropertyValue().
-rw-r--r--media/jni/android_mtp_MtpDatabase.cpp6
1 files changed, 2 insertions, 4 deletions
diff --git a/media/jni/android_mtp_MtpDatabase.cpp b/media/jni/android_mtp_MtpDatabase.cpp
index 7df56f497068..f9cc481c3c01 100644
--- a/media/jni/android_mtp_MtpDatabase.cpp
+++ b/media/jni/android_mtp_MtpDatabase.cpp
@@ -431,16 +431,14 @@ MtpResponseCode MyMtpDatabase::getObjectPropertyValue(MtpObjectHandle handle,
case MTP_TYPE_STR:
{
jstring stringValue = (jstring)env->GetObjectArrayElement(stringValuesArray, 0);
+ const char* str = (stringValue ? env->GetStringUTFChars(stringValue, NULL) : NULL);
if (stringValue) {
- const char* str = env->GetStringUTFChars(stringValue, NULL);
- if (str == NULL) {
- return MTP_RESPONSE_GENERAL_ERROR;
- }
packet.putString(str);
env->ReleaseStringUTFChars(stringValue, str);
} else {
packet.putEmptyString();
}
+ env->DeleteLocalRef(stringValue);
break;
}
default: