summaryrefslogtreecommitdiff
path: root/transport/HidlBinderSupport.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'transport/HidlBinderSupport.cpp')
-rw-r--r--transport/HidlBinderSupport.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/transport/HidlBinderSupport.cpp b/transport/HidlBinderSupport.cpp
index 02d10d0..352ed78 100644
--- a/transport/HidlBinderSupport.cpp
+++ b/transport/HidlBinderSupport.cpp
@@ -163,6 +163,20 @@ status_t writeEmbeddedToParcel(const hidl_string &string,
parentOffset + hidl_string::kOffsetOfBuffer);
}
+android::status_t writeToParcel(const hidl_version &version, android::hardware::Parcel& parcel) {
+ return parcel.writeUint32(static_cast<uint32_t>(version.get_major()) << 16 | version.get_minor());
+}
+
+hidl_version* readFromParcel(const android::hardware::Parcel& parcel) {
+ uint32_t version;
+ android::status_t status = parcel.readUint32(&version);
+ if (status != OK) {
+ return nullptr;
+ } else {
+ return new hidl_version(version >> 16, version & 0xFFFF);
+ }
+}
+
status_t readFromParcel(Status *s, const Parcel& parcel) {
int32_t exception;
status_t status = parcel.readInt32(&exception);