summaryrefslogtreecommitdiffstats
path: root/media/mtp
diff options
context:
space:
mode:
authorMike Lockwood <lockwood@android.com>2011-10-13 11:38:20 -0400
committerMike Lockwood <lockwood@android.com>2011-10-13 11:38:20 -0400
commit0cc79c66329b9ffa7d7bdfafa5d245a11fd3660d (patch)
tree4a958a8de02017bb7a7e8d057bab0101a77837c5 /media/mtp
parentbbdb412041a1e593c95c29c84d5ddbb8906787e4 (diff)
downloadframeworks_av-0cc79c66329b9ffa7d7bdfafa5d245a11fd3660d.zip
frameworks_av-0cc79c66329b9ffa7d7bdfafa5d245a11fd3660d.tar.gz
frameworks_av-0cc79c66329b9ffa7d7bdfafa5d245a11fd3660d.tar.bz2
MtpServer: Pass 0xFFFFFFFF for file size when receiving files >= 4GB in size
Bug: 5432487 Change-Id: Ie86e72d9d85476941eab6a9d271948b8fdde6926 Signed-off-by: Mike Lockwood <lockwood@android.com>
Diffstat (limited to 'media/mtp')
-rw-r--r--media/mtp/MtpServer.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/media/mtp/MtpServer.cpp b/media/mtp/MtpServer.cpp
index a9b539b..dc6c011 100644
--- a/media/mtp/MtpServer.cpp
+++ b/media/mtp/MtpServer.cpp
@@ -947,7 +947,12 @@ MtpResponseCode MtpServer::doSendObject() {
if (mSendObjectFileSize - initialData > 0) {
mfr.offset = initialData;
- mfr.length = mSendObjectFileSize - initialData;
+ if (mSendObjectFileSize == 0xFFFFFFFF) {
+ // tell driver to read until it receives a short packet
+ mfr.length = 0xFFFFFFFF;
+ } else {
+ mfr.length = mSendObjectFileSize - initialData;
+ }
LOGV("receiving %s\n", (const char *)mSendObjectFilePath);
// transfer the file