Merge "libutils: Make LightFlattenablePod safe for unaligned ptr" into oc-dev

This commit is contained in:
Chris Forbes 2017-05-04 20:19:05 +00:00 committed by Android (Google) Code Review
commit ba73a138e0

View file

@ -189,11 +189,11 @@ public:
} }
inline status_t flatten(void* buffer, size_t size) const { inline status_t flatten(void* buffer, size_t size) const {
if (size < sizeof(T)) return NO_MEMORY; if (size < sizeof(T)) return NO_MEMORY;
*reinterpret_cast<T*>(buffer) = *static_cast<T const*>(this); memcpy(buffer, static_cast<T const*>(this), sizeof(T));
return NO_ERROR; return NO_ERROR;
} }
inline status_t unflatten(void const* buffer, size_t) { inline status_t unflatten(void const* buffer, size_t) {
*static_cast<T*>(this) = *reinterpret_cast<T const*>(buffer); memcpy(static_cast<T*>(this), buffer, sizeof(T));
return NO_ERROR; return NO_ERROR;
} }
}; };