NdkMediaDataSource: fix getAvailableSize
Bug: 119127316
Test: NativeDecoderTest#testExtractorCachedDurationNative
Change-Id: I92b751f23d2598ea6c46ab79b80f9731f60b55e9
diff --git a/media/ndk/NdkMediaDataSource.cpp b/media/ndk/NdkMediaDataSource.cpp
index 3c10024..1abee93 100644
--- a/media/ndk/NdkMediaDataSource.cpp
+++ b/media/ndk/NdkMediaDataSource.cpp
@@ -59,6 +59,7 @@
AMediaDataSource_setGetSize(mDataSource, dataSource->getSize);
AMediaDataSource_setClose(mDataSource, dataSource->close);
AMediaDataSource_setUserdata(mDataSource, dataSource->userdata);
+ AMediaDataSource_setGetAvailableSize(mDataSource, dataSource->getAvailableSize);
mDataSource->mImpl = dataSource->mImpl;
mDataSource->mFlags = dataSource->mFlags;
}
diff --git a/media/ndk/NdkMediaDataSourceCallbacks.cpp b/media/ndk/NdkMediaDataSourceCallbacks.cpp
index f40387f..86a57da 100644
--- a/media/ndk/NdkMediaDataSourceCallbacks.cpp
+++ b/media/ndk/NdkMediaDataSourceCallbacks.cpp
@@ -43,8 +43,8 @@
ssize_t DataSource_getAvailableSize(void *userdata, off64_t offset) {
off64_t size = -1;
DataSource *source = static_cast<DataSource *>(userdata);
- status_t err = source->getAvailableSize(offset, &size);
- return err == OK ? size : -1;
+ source->getAvailableSize(offset, &size);
+ return size;
}
} // namespace android