summaryrefslogtreecommitdiffstats
path: root/media/jni
diff options
context:
space:
mode:
authorMike Lockwood <lockwood@android.com>2011-05-09 20:16:05 -0700
committerMike Lockwood <lockwood@android.com>2011-05-16 14:29:45 -0400
commit51690544aaeee82b1c50232cd57d50038b77f0c4 (patch)
tree15c07b891ca2c1b8e0fdd2471b6d0855162d66dd /media/jni
parent2f6a3885533a52758c2cd4f81f6123a712be8ae6 (diff)
downloadframeworks_base-51690544aaeee82b1c50232cd57d50038b77f0c4.zip
frameworks_base-51690544aaeee82b1c50232cd57d50038b77f0c4.tar.gz
frameworks_base-51690544aaeee82b1c50232cd57d50038b77f0c4.tar.bz2
MTP: Have GetStorageInfo command return correct storage type for removable storage
Change-Id: I09b548483c12080e7d77970babcae2eef379f2f4 Signed-off-by: Mike Lockwood <lockwood@android.com>
Diffstat (limited to 'media/jni')
-rw-r--r--media/jni/android_mtp_MtpServer.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/media/jni/android_mtp_MtpServer.cpp b/media/jni/android_mtp_MtpServer.cpp
index c55189f..4f6bb15 100644
--- a/media/jni/android_mtp_MtpServer.cpp
+++ b/media/jni/android_mtp_MtpServer.cpp
@@ -47,6 +47,7 @@ static jfieldID field_MtpStorage_storageId;
static jfieldID field_MtpStorage_path;
static jfieldID field_MtpStorage_description;
static jfieldID field_MtpStorage_reserveSpace;
+static jfieldID field_MtpStorage_removable;
static Mutex sMutex;
@@ -245,11 +246,13 @@ android_mtp_MtpServer_add_storage(JNIEnv *env, jobject thiz, jobject jstorage)
jstring path = (jstring)env->GetObjectField(jstorage, field_MtpStorage_path);
jstring description = (jstring)env->GetObjectField(jstorage, field_MtpStorage_description);
jlong reserveSpace = env->GetLongField(jstorage, field_MtpStorage_reserveSpace);
+ jboolean removable = env->GetBooleanField(jstorage, field_MtpStorage_removable);
const char *pathStr = env->GetStringUTFChars(path, NULL);
const char *descriptionStr = env->GetStringUTFChars(description, NULL);
- MtpStorage* storage = new MtpStorage(storageID, pathStr, descriptionStr, reserveSpace);
+ MtpStorage* storage = new MtpStorage(storageID, pathStr, descriptionStr,
+ reserveSpace, removable);
thread->addStorage(storage);
env->ReleaseStringUTFChars(path, pathStr);
@@ -318,7 +321,12 @@ int register_android_mtp_MtpServer(JNIEnv *env)
}
field_MtpStorage_reserveSpace = env->GetFieldID(clazz, "mReserveSpace", "J");
if (field_MtpStorage_reserveSpace == NULL) {
- LOGE("Can't find MtpStorage.mStorageId");
+ LOGE("Can't find MtpStorage.mReserveSpace");
+ return -1;
+ }
+ field_MtpStorage_removable = env->GetFieldID(clazz, "mRemovable", "Z");
+ if (field_MtpStorage_removable == NULL) {
+ LOGE("Can't find MtpStorage.mRemovable");
return -1;
}
clazz_MtpStorage = (jclass)env->NewGlobalRef(clazz);