diff --git a/media/java/android/mtp/MtpDevice.java b/media/java/android/mtp/MtpDevice.java index aa99248485c8a..d0ef37c77055c 100644 --- a/media/java/android/mtp/MtpDevice.java +++ b/media/java/android/mtp/MtpDevice.java @@ -358,9 +358,10 @@ public final class MtpDevice { /** * Returns object size in 64-bit integer. * - * The object size stored in MtpObjectInfo is unsigned 32-bit integer. - * The methods reads 64-bit object size from the object property so that it can fetch 4GB+ - * object size correctly. + * Though MtpObjectInfo#getCompressedSize returns the object size in 32-bit unsigned integer, + * this method returns the object size in 64-bit integer from the object property. Thus it can + * fetch 4GB+ object size correctly. If the device does not support objectSize property, it + * throws IOException. * @hide */ public long getObjectSizeLong(int handle, int format) throws IOException { diff --git a/media/jni/android_mtp_MtpDevice.cpp b/media/jni/android_mtp_MtpDevice.cpp index f7c6770054892..6e434b2756a58 100644 --- a/media/jni/android_mtp_MtpDevice.cpp +++ b/media/jni/android_mtp_MtpDevice.cpp @@ -701,6 +701,8 @@ static void android_mtp_MtpDevice_discard_event_request(JNIEnv *env, jobject thi device->discardEventRequest(seq); } +// Returns object size in 64-bit integer. If the MTP device does not support the property, it +// throws IOException. static jlong android_mtp_MtpDevice_get_object_size_long( JNIEnv *env, jobject thiz, jint handle, jint format) { MtpDevice* const device = get_device_from_object(env, thiz);