OSDN Git Service

binder: add uint64 support to Parcel.
authorRonghua Wu <ronghuawu@google.com>
Mon, 16 Mar 2015 18:11:07 +0000 (11:11 -0700)
committerDan Stoza <stoza@google.com>
Wed, 13 May 2015 16:43:35 +0000 (09:43 -0700)
Bug: 19620911
Change-Id: Ifce5319e4e35afd344dead67ab7ba1cd399476a3
(cherry picked from commit 2d13afdfa1f43973bf3cb917c7d6496a38baa446)

include/binder/Parcel.h
libs/binder/Parcel.cpp

index a52e044..0ba3abe 100644 (file)
@@ -96,6 +96,7 @@ public:
     status_t            writeInt32(int32_t val);
     status_t            writeUint32(uint32_t val);
     status_t            writeInt64(int64_t val);
+    status_t            writeUint64(uint64_t val);
     status_t            writeFloat(float val);
     status_t            writeDouble(double val);
     status_t            writeCString(const char* str);
@@ -157,6 +158,8 @@ public:
     status_t            readUint32(uint32_t *pArg) const;
     int64_t             readInt64() const;
     status_t            readInt64(int64_t *pArg) const;
+    uint64_t            readUint64() const;
+    status_t            readUint64(uint64_t *pArg) const;
     float               readFloat() const;
     status_t            readFloat(float *pArg) const;
     double              readDouble() const;
index 0921186..24c8a77 100644 (file)
@@ -677,6 +677,11 @@ status_t Parcel::writeInt64(int64_t val)
     return writeAligned(val);
 }
 
+status_t Parcel::writeUint64(uint64_t val)
+{
+    return writeAligned(val);
+}
+
 status_t Parcel::writePointer(uintptr_t val)
 {
     return writeAligned<binder_uintptr_t>(val);
@@ -1060,6 +1065,16 @@ int64_t Parcel::readInt64() const
     return readAligned<int64_t>();
 }
 
+status_t Parcel::readUint64(uint64_t *pArg) const
+{
+    return readAligned(pArg);
+}
+
+uint64_t Parcel::readUint64() const
+{
+    return readAligned<uint64_t>();
+}
+
 status_t Parcel::readPointer(uintptr_t *pArg) const
 {
     status_t ret;