move read/writeEmbeddedFrom/ToParcel from hidl_string, hidl_vec, MQDescriptor
Test: mma
Test: hidl_test
Bug: 32756130
Change-Id: I7e9bc359bbffca10474fca883ddd49d3b5e1f716
diff --git a/HidlSupport.cpp b/HidlSupport.cpp
index 18beb3d..edab4de 100644
--- a/HidlSupport.cpp
+++ b/HidlSupport.cpp
@@ -146,29 +146,29 @@
return mSize == 0;
}
-status_t hidl_string::readEmbeddedFromParcel(
+// static
+const size_t hidl_string::kOffsetOfBuffer = offsetof(hidl_string, mBuffer);
+
+status_t readEmbeddedFromParcel(hidl_string * /* string */,
const Parcel &parcel, size_t parentHandle, size_t parentOffset) {
const void *ptr = parcel.readEmbeddedBuffer(
nullptr /* buffer_handle */,
parentHandle,
- parentOffset + offsetof(hidl_string, mBuffer));
+ parentOffset + hidl_string::kOffsetOfBuffer);
return ptr != NULL ? OK : UNKNOWN_ERROR;
}
-status_t hidl_string::writeEmbeddedToParcel(
- Parcel *parcel, size_t parentHandle, size_t parentOffset) const {
+status_t writeEmbeddedToParcel(const hidl_string &string,
+ Parcel *parcel, size_t parentHandle, size_t parentOffset) {
return parcel->writeEmbeddedBuffer(
- mBuffer,
- mSize + 1,
+ string.c_str(),
+ string.size() + 1,
nullptr /* handle */,
parentHandle,
- parentOffset + offsetof(hidl_string, mBuffer));
+ parentOffset + hidl_string::kOffsetOfBuffer);
}
-// static
-const size_t hidl_string::kOffsetOfBuffer = offsetof(hidl_string, mBuffer);
-
const char* IBase::descriptor = "android.hardware.base@0.0::IBase";
// ----------------------------------------------------------------------