summaryrefslogtreecommitdiff
path: root/media/mtp/MtpDataPacket.cpp
diff options
context:
space:
mode:
author Mike Lockwood <lockwood@android.com> 2011-04-24 18:40:17 -0700
committer Mike Lockwood <lockwood@android.com> 2011-05-04 10:41:21 -0400
commita792c804025e25eb8a110d1db63f26bbd09e0e6b (patch)
treeb96c5b751fd713b363731e996761c8799c02ed64 /media/mtp/MtpDataPacket.cpp
parentaf50821bace87aa83c7faba7bf139cfcaccf317a (diff)
DO NOT MERGE MTP: Implement GetThumb command
This allows the PC to access thumbnails in JPEG files over MTP/PTP Bug: 3219495 Change-Id: I565be1fb84e8a204f2be11342b5b952e8965afdf Signed-off-by: Mike Lockwood <lockwood@android.com>
Diffstat (limited to 'media/mtp/MtpDataPacket.cpp')
-rw-r--r--media/mtp/MtpDataPacket.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/media/mtp/MtpDataPacket.cpp b/media/mtp/MtpDataPacket.cpp
index 0b0c80d11d8c..817eac055f72 100644
--- a/media/mtp/MtpDataPacket.cpp
+++ b/media/mtp/MtpDataPacket.cpp
@@ -388,6 +388,16 @@ int MtpDataPacket::writeDataHeader(int fd, uint32_t length) {
int ret = ::write(fd, mBuffer, MTP_CONTAINER_HEADER_SIZE);
return (ret < 0 ? ret : 0);
}
+
+int MtpDataPacket::writeData(int fd, void* data, uint32_t length) {
+ MtpPacket::putUInt32(MTP_CONTAINER_LENGTH_OFFSET, length + MTP_CONTAINER_HEADER_SIZE);
+ MtpPacket::putUInt16(MTP_CONTAINER_TYPE_OFFSET, MTP_CONTAINER_TYPE_DATA);
+ int ret = ::write(fd, mBuffer, MTP_CONTAINER_HEADER_SIZE);
+ if (ret == MTP_CONTAINER_HEADER_SIZE)
+ ret = ::write(fd, data, length);
+ return (ret < 0 ? ret : 0);
+}
+
#endif // MTP_DEVICE
#ifdef MTP_HOST