diff options
| author | Mike Lockwood <lockwood@android.com> | 2010-08-09 14:49:28 -0400 |
|---|---|---|
| committer | Mike Lockwood <lockwood@android.com> | 2010-08-09 14:49:28 -0400 |
| commit | 97c8d9046ea9500ab77970eaa3f66bc1034ff43e (patch) | |
| tree | 8b2c4aa5f026dbece9586320670a5f9ec37dfada /media/mtp | |
| parent | d3793f38f974f3c661289e4fa140b51655c5ed71 (diff) | |
| download | frameworks_base-97c8d9046ea9500ab77970eaa3f66bc1034ff43e.zip frameworks_base-97c8d9046ea9500ab77970eaa3f66bc1034ff43e.tar.gz frameworks_base-97c8d9046ea9500ab77970eaa3f66bc1034ff43e.tar.bz2 | |
MTP: Fix reading and writing property descriptors
We were missing support for the group code, resulting in an off by 4 bytes problem.
Change-Id: I4a640c67b8d36e1bd658b6185178a71966d4b0b6
Signed-off-by: Mike Lockwood <lockwood@android.com>
Diffstat (limited to 'media/mtp')
| -rw-r--r-- | media/mtp/MtpProperty.cpp | 4 | ||||
| -rw-r--r-- | media/mtp/MtpProperty.h | 2 |
2 files changed, 6 insertions, 0 deletions
diff --git a/media/mtp/MtpProperty.cpp b/media/mtp/MtpProperty.cpp index d6beb8a..932ad6a 100644 --- a/media/mtp/MtpProperty.cpp +++ b/media/mtp/MtpProperty.cpp @@ -31,6 +31,7 @@ MtpProperty::MtpProperty() mDefaultArrayValues(NULL), mCurrentArrayLength(0), mCurrentArrayValues(NULL), + mGroupCode(0), mFormFlag(kFormNone), mEnumLength(0), mEnumValues(NULL) @@ -52,6 +53,7 @@ MtpProperty::MtpProperty(MtpPropertyCode propCode, mDefaultArrayValues(NULL), mCurrentArrayLength(0), mCurrentArrayValues(NULL), + mGroupCode(0), mFormFlag(kFormNone), mEnumLength(0), mEnumValues(NULL) @@ -142,6 +144,7 @@ void MtpProperty::read(MtpDataPacket& packet, bool deviceProp) { if (deviceProp) readValue(packet, mCurrentValue); } + mGroupCode = packet.getUInt32(); mFormFlag = packet.getUInt8(); if (mFormFlag == kFormRange) { @@ -178,6 +181,7 @@ void MtpProperty::write(MtpDataPacket& packet) { default: writeValue(packet, mDefaultValue); } + packet.putUInt32(mGroupCode); packet.putUInt8(mFormFlag); if (mFormFlag == kFormRange) { writeValue(packet, mMinimumValue); diff --git a/media/mtp/MtpProperty.h b/media/mtp/MtpProperty.h index 4923d40..c5b4e28 100644 --- a/media/mtp/MtpProperty.h +++ b/media/mtp/MtpProperty.h @@ -42,6 +42,8 @@ public: kFormRange = 1, kFormEnum = 2, }; + + uint32_t mGroupCode; uint8_t mFormFlag; // for range form |
