Merge "Binder: Add log output in IPCThreadState::self()" am: 2be113a248
am: e7ae3b1962
* commit 'e7ae3b1962d0b4cb83ede79f625e75c9d88d35fb':
Binder: Add log output in IPCThreadState::self()
diff --git a/Parcel.cpp b/Parcel.cpp
index 2e9e658..d3fe158 100644
--- a/Parcel.cpp
+++ b/Parcel.cpp
@@ -384,13 +384,11 @@
size_t Parcel::dataAvail() const
{
- // TODO: decide what to do about the possibility that this can
- // report an available-data size that exceeds a Java int's max
- // positive value, causing havoc. Fortunately this will only
- // happen if someone constructs a Parcel containing more than two
- // gigabytes of data, which on typical phone hardware is simply
- // not possible.
- return dataSize() - dataPosition();
+ size_t result = dataSize() - dataPosition();
+ if (result > INT32_MAX) {
+ abort();
+ }
+ return result;
}
size_t Parcel::dataPosition() const