diff options
author | Magnus Strandberg <magnus.strandberg@sonyericsson.com> | 2011-05-03 15:44:00 +0200 |
---|---|---|
committer | Jean-Baptiste Queru <jbq@google.com> | 2012-06-08 08:29:01 -0700 |
commit | 1ba24574b2debd3ca012adbbd77f12bed4f2d266 (patch) | |
tree | 9141495058ae27f0411797c842787f270f02946a /libs | |
parent | b2c1cfbe95bed419487455d1b82956f9c5b2a40c (diff) | |
download | frameworks_native-1ba24574b2debd3ca012adbbd77f12bed4f2d266.zip frameworks_native-1ba24574b2debd3ca012adbbd77f12bed4f2d266.tar.gz frameworks_native-1ba24574b2debd3ca012adbbd77f12bed4f2d266.tar.bz2 |
Aligning native Parcel implementation to Java.
The Java implementation of writing the RPC response header
calculates the length of the header including the 4 bytes
specifying the header length but the native implementation
excludes the 4 bytes specifying the length from the header
length.
The native implementation has been aligned to the Java impl.
Change-Id: I325bf272a63152d8fded4cf4e51a906b5a9bfe19
Diffstat (limited to 'libs')
-rw-r--r-- | libs/binder/Parcel.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libs/binder/Parcel.cpp b/libs/binder/Parcel.cpp index dea14bb..4c15913 100644 --- a/libs/binder/Parcel.cpp +++ b/libs/binder/Parcel.cpp @@ -1055,10 +1055,11 @@ int32_t Parcel::readExceptionCode() const { int32_t exception_code = readAligned<int32_t>(); if (exception_code == EX_HAS_REPLY_HEADER) { + int32_t header_start = dataPosition(); int32_t header_size = readAligned<int32_t>(); // Skip over fat responses headers. Not used (or propagated) in // native code - setDataPosition(dataPosition() + header_size); + setDataPosition(header_start + header_size); // And fat response headers are currently only used when there are no // exceptions, so return no error: return 0; |