Media: Fix MtpDevice call
The signature was changed last minute. Update the media side.
Bug: 26284424
Change-Id: Ia8fb665221f60d3eadd2c32831a12aa21c6c5e9c
diff --git a/media/jni/android_mtp_MtpDevice.cpp b/media/jni/android_mtp_MtpDevice.cpp
index 3fd0b8e..14c15e5 100644
--- a/media/jni/android_mtp_MtpDevice.cpp
+++ b/media/jni/android_mtp_MtpDevice.cpp
@@ -375,15 +375,17 @@
}
JavaArrayWriter writer(env, array);
- const int64_t result = device->readPartialObject(
- objectID, offset, size, JavaArrayWriter::writeTo, &writer);
-
- if (result >= 0) {
- return static_cast<jint>(result);
- } else {
+ uint32_t written_size;
+ bool success = device->readPartialObject(
+ objectID, offset, size, &written_size, JavaArrayWriter::writeTo, &writer);
+ if (!success) {
jniThrowException(env, "java/io/IOException", "Failed to read data.");
return -1;
}
+ // Note: assumption here is that a negative value will be treated as unsigned on the Java
+ // level.
+ // TODO: Make sure that actually holds.
+ return static_cast<jint>(written_size);
}
static jbyteArray