Fix writeByteArray/writeInt32Array size on x64

writeByteArray writes the size using sizeof(size_t), however it is always
read using readInt32(). On devices where sizeof(size_t) != 4 this causes
extra bytes to be written.

BUG: 22204736
Change-Id: I8d4507b6b616857ef5827f1fe9da0907d09abf0e
diff --git a/libs/binder/Parcel.cpp b/libs/binder/Parcel.cpp
index 31667d9..7a4ddc4 100644
--- a/libs/binder/Parcel.cpp
+++ b/libs/binder/Parcel.cpp
@@ -735,9 +735,9 @@
     }
 
     if (!val) {
-        return writeAligned(-1);
+        return writeInt32(-1);
     }
-    status_t ret = writeAligned(len);
+    status_t ret = writeInt32(static_cast<uint32_t>(len));
     if (ret == NO_ERROR) {
         ret = write(val, len * sizeof(*val));
     }
@@ -751,9 +751,9 @@
     }
 
     if (!val) {
-        return writeAligned(-1);
+        return writeInt32(-1);
     }
-    status_t ret = writeAligned(len);
+    status_t ret = writeInt32(static_cast<uint32_t>(len));
     if (ret == NO_ERROR) {
         ret = write(val, len * sizeof(*val));
     }