diff options
author | Elliott Hughes <enh@google.com> | 2011-04-08 17:42:34 -0700 |
---|---|---|
committer | Elliott Hughes <enh@google.com> | 2011-04-08 17:42:34 -0700 |
commit | 15dd15fd572df6b6f785dff75f66e9b99f40322a (patch) | |
tree | 101754d3ee5b9903fbe513b308646c8eaccab8af /media/jni/android_mtp_MtpDatabase.cpp | |
parent | 6cab9a6e3fc660ca9c2b32e01f86c71da222c181 (diff) | |
download | frameworks_base-15dd15fd572df6b6f785dff75f66e9b99f40322a.zip frameworks_base-15dd15fd572df6b6f785dff75f66e9b99f40322a.tar.gz frameworks_base-15dd15fd572df6b6f785dff75f66e9b99f40322a.tar.bz2 |
Tidy up exception throwing in the media native code.
(I'm going through all of frameworks/base in multiple passes. This pass is just
for exception throwing.)
Change-Id: Ia14a5c720edae86ac780023be88e676aa1b3315d
Diffstat (limited to 'media/jni/android_mtp_MtpDatabase.cpp')
-rw-r--r-- | media/jni/android_mtp_MtpDatabase.cpp | 31 |
1 files changed, 13 insertions, 18 deletions
diff --git a/media/jni/android_mtp_MtpDatabase.cpp b/media/jni/android_mtp_MtpDatabase.cpp index 2f88fd1..06708da 100644 --- a/media/jni/android_mtp_MtpDatabase.cpp +++ b/media/jni/android_mtp_MtpDatabase.cpp @@ -182,28 +182,23 @@ MyMtpDatabase::MyMtpDatabase(JNIEnv *env, jobject client) mLongBuffer(NULL), mStringBuffer(NULL) { - jintArray intArray; - jlongArray longArray; - jcharArray charArray; - // create buffers for out arguments // we don't need to be thread-safe so this is OK - intArray = env->NewIntArray(3); - if (!intArray) - goto out_of_memory; + jintArray intArray = env->NewIntArray(3); + if (!intArray) { + return; // Already threw. + } mIntBuffer = (jintArray)env->NewGlobalRef(intArray); - longArray = env->NewLongArray(2); - if (!longArray) - goto out_of_memory; + jlongArray longArray = env->NewLongArray(2); + if (!longArray) { + return; // Already threw. + } mLongBuffer = (jlongArray)env->NewGlobalRef(longArray); - charArray = env->NewCharArray(256); - if (!charArray) - goto out_of_memory; + jcharArray charArray = env->NewCharArray(256); + if (!charArray) { + return; // Already threw. + } mStringBuffer = (jcharArray)env->NewGlobalRef(charArray); - return; - -out_of_memory: - env->ThrowNew(env->FindClass("java/lang/OutOfMemoryError"), NULL); } void MyMtpDatabase::cleanup(JNIEnv *env) { @@ -823,7 +818,7 @@ MtpResponseCode MyMtpDatabase::getObjectFilePath(MtpObjectHandle handle, outFileLength = longValues[0]; outFormat = longValues[1]; env->ReleaseLongArrayElements(mLongBuffer, longValues, 0); - + checkAndClearExceptionFromCallback(env, __FUNCTION__); return result; } |