Use new read(Embedded)Buffer API.
Bug: 34134129
Test: hidl_test
Change-Id: Iad3f9d4dd30b4b8b92295816fbed25c56e52fb0a
diff --git a/MemoryType.cpp b/MemoryType.cpp
index 857bf05..3243cd4 100644
--- a/MemoryType.cpp
+++ b/MemoryType.cpp
@@ -63,25 +63,16 @@
parcelObj + (parcelObjIsPointer ? "->" : ".");
if (isReader) {
- out << name
- << " = (const ::android::hardware::hidl_memory *)"
+ out << "_hidl_err = "
<< parcelObjDeref
- << "readBuffer("
- << "&"
+ << "readBuffer(&"
<< parentName
- << ");\n";
+ << ", "
+ << " reinterpret_cast<const void **>("
+ << "&" << name
+ << "));\n\n";
- out << "if ("
- << name
- << " == nullptr) {\n";
-
- out.indent();
-
- out << "_hidl_err = ::android::UNKNOWN_ERROR;\n";
- handleError2(out, mode);
-
- out.unindent();
- out << "}\n\n";
+ handleError(out, mode);
} else {
out << "_hidl_err = "
<< parcelObjDeref