diff options
| -rw-r--r-- | libs/binder/ndk/include_cpp/android/binder_parcel_utils.h | 48 |
1 files changed, 25 insertions, 23 deletions
diff --git a/libs/binder/ndk/include_cpp/android/binder_parcel_utils.h b/libs/binder/ndk/include_cpp/android/binder_parcel_utils.h index 09949ea259..054aebeb50 100644 --- a/libs/binder/ndk/include_cpp/android/binder_parcel_utils.h +++ b/libs/binder/ndk/include_cpp/android/binder_parcel_utils.h @@ -45,7 +45,7 @@ static inline bool AParcel_stdVectorAllocator(void* vectorData, int32_t length, std::vector<T>* vec = static_cast<std::vector<T>*>(vectorData); if (static_cast<size_t>(length) > vec->max_size()) return false; - vec->resize(length); + vec->resize(static_cast<size_t>(length)); *outBuffer = vec->data(); return true; } @@ -66,7 +66,7 @@ static inline bool AParcel_nullableStdVectorAllocator(void* vectorData, int32_t *vec = std::optional<std::vector<T>>(std::vector<T>{}); if (static_cast<size_t>(length) > (*vec)->max_size()) return false; - (*vec)->resize(length); + (*vec)->resize(static_cast<size_t>(length)); *outBuffer = (*vec)->data(); return true; @@ -90,7 +90,7 @@ static inline bool AParcel_stdVectorExternalAllocator(void* vectorData, int32_t std::vector<T>* vec = static_cast<std::vector<T>*>(vectorData); if (static_cast<size_t>(length) > vec->max_size()) return false; - vec->resize(length); + vec->resize(static_cast<size_t>(length)); return true; } @@ -117,7 +117,7 @@ static inline bool AParcel_nullableStdVectorExternalAllocator(void* vectorData, *vec = std::optional<std::vector<T>>(std::vector<T>{}); if (static_cast<size_t>(length) > (*vec)->max_size()) return false; - (*vec)->resize(length); + (*vec)->resize(static_cast<size_t>(length)); return true; } @@ -257,7 +257,7 @@ static inline bool AParcel_stdStringAllocator(void* stringData, int32_t length, if (length <= 0) return false; std::string* str = static_cast<std::string*>(stringData); - str->resize(length - 1); + str->resize(static_cast<size_t>(length) - 1); *buffer = &(*str)[0]; return true; } @@ -279,7 +279,7 @@ static inline bool AParcel_nullableStdStringAllocator(void* stringData, int32_t } *str = std::optional<std::string>(std::string{}); - (*str)->resize(length - 1); + (*str)->resize(static_cast<size_t>(length) - 1); *buffer = &(**str)[0]; return true; } @@ -303,7 +303,7 @@ static inline const char* AParcel_stdVectorStringElementGetter(const void* vecto const std::vector<std::string>* vec = static_cast<const std::vector<std::string>*>(vectorData); const std::string& element = vec->at(index); - *outLength = element.size(); + *outLength = static_cast<int32_t>(element.size()); return element.c_str(); } @@ -337,7 +337,7 @@ static inline const char* AParcel_nullableStdVectorStringElementGetter(const voi return nullptr; } - *outLength = element->size(); + *outLength = static_cast<int32_t>(element->size()); return element->c_str(); } @@ -345,7 +345,7 @@ static inline const char* AParcel_nullableStdVectorStringElementGetter(const voi * Convenience API for writing a std::string. */ static inline binder_status_t AParcel_writeString(AParcel* parcel, const std::string& str) { - return AParcel_writeString(parcel, str.c_str(), str.size()); + return AParcel_writeString(parcel, str.c_str(), static_cast<int32_t>(str.size())); } /** @@ -365,7 +365,7 @@ static inline binder_status_t AParcel_writeString(AParcel* parcel, return AParcel_writeString(parcel, nullptr, -1); } - return AParcel_writeString(parcel, str->c_str(), str->size()); + return AParcel_writeString(parcel, str->c_str(), static_cast<int32_t>(str->size())); } /** @@ -383,7 +383,7 @@ static inline binder_status_t AParcel_readString(const AParcel* parcel, static inline binder_status_t AParcel_writeVector(AParcel* parcel, const std::vector<std::string>& vec) { const void* vectorData = static_cast<const void*>(&vec); - return AParcel_writeStringArray(parcel, vectorData, vec.size(), + return AParcel_writeStringArray(parcel, vectorData, static_cast<int32_t>(vec.size()), AParcel_stdVectorStringElementGetter); } @@ -404,7 +404,8 @@ static inline binder_status_t AParcel_readVector(const AParcel* parcel, static inline binder_status_t AParcel_writeVector( AParcel* parcel, const std::optional<std::vector<std::optional<std::string>>>& vec) { const void* vectorData = static_cast<const void*>(&vec); - return AParcel_writeStringArray(parcel, vectorData, (vec ? vec->size() : -1), + return AParcel_writeStringArray(parcel, vectorData, + (vec ? static_cast<int32_t>(vec->size()) : -1), AParcel_nullableStdVectorStringElementGetter); } @@ -545,7 +546,7 @@ inline binder_status_t AParcel_readStdVectorParcelableElement<ScopedFileDescript template <typename P> static inline binder_status_t AParcel_writeVector(AParcel* parcel, const std::vector<P>& vec) { const void* vectorData = static_cast<const void*>(&vec); - return AParcel_writeParcelableArray(parcel, vectorData, vec.size(), + return AParcel_writeParcelableArray(parcel, vectorData, static_cast<int32_t>(vec.size()), AParcel_writeStdVectorParcelableElement<P>); } @@ -564,7 +565,7 @@ static inline binder_status_t AParcel_readVector(const AParcel* parcel, std::vec * Writes a vector of int32_t to the next location in a non-null parcel. */ inline binder_status_t AParcel_writeVector(AParcel* parcel, const std::vector<int32_t>& vec) { - return AParcel_writeInt32Array(parcel, vec.data(), vec.size()); + return AParcel_writeInt32Array(parcel, vec.data(), static_cast<int32_t>(vec.size())); } /** @@ -597,7 +598,7 @@ inline binder_status_t AParcel_readVector(const AParcel* parcel, * Writes a vector of uint32_t to the next location in a non-null parcel. */ inline binder_status_t AParcel_writeVector(AParcel* parcel, const std::vector<uint32_t>& vec) { - return AParcel_writeUint32Array(parcel, vec.data(), vec.size()); + return AParcel_writeUint32Array(parcel, vec.data(), static_cast<int32_t>(vec.size())); } /** @@ -631,7 +632,7 @@ inline binder_status_t AParcel_readVector(const AParcel* parcel, * Writes a vector of int64_t to the next location in a non-null parcel. */ inline binder_status_t AParcel_writeVector(AParcel* parcel, const std::vector<int64_t>& vec) { - return AParcel_writeInt64Array(parcel, vec.data(), vec.size()); + return AParcel_writeInt64Array(parcel, vec.data(), static_cast<int32_t>(vec.size())); } /** @@ -664,7 +665,7 @@ inline binder_status_t AParcel_readVector(const AParcel* parcel, * Writes a vector of uint64_t to the next location in a non-null parcel. */ inline binder_status_t AParcel_writeVector(AParcel* parcel, const std::vector<uint64_t>& vec) { - return AParcel_writeUint64Array(parcel, vec.data(), vec.size()); + return AParcel_writeUint64Array(parcel, vec.data(), static_cast<int32_t>(vec.size())); } /** @@ -698,7 +699,7 @@ inline binder_status_t AParcel_readVector(const AParcel* parcel, * Writes a vector of float to the next location in a non-null parcel. */ inline binder_status_t AParcel_writeVector(AParcel* parcel, const std::vector<float>& vec) { - return AParcel_writeFloatArray(parcel, vec.data(), vec.size()); + return AParcel_writeFloatArray(parcel, vec.data(), static_cast<int32_t>(vec.size())); } /** @@ -731,7 +732,7 @@ inline binder_status_t AParcel_readVector(const AParcel* parcel, * Writes a vector of double to the next location in a non-null parcel. */ inline binder_status_t AParcel_writeVector(AParcel* parcel, const std::vector<double>& vec) { - return AParcel_writeDoubleArray(parcel, vec.data(), vec.size()); + return AParcel_writeDoubleArray(parcel, vec.data(), static_cast<int32_t>(vec.size())); } /** @@ -764,8 +765,8 @@ inline binder_status_t AParcel_readVector(const AParcel* parcel, * Writes a vector of bool to the next location in a non-null parcel. */ inline binder_status_t AParcel_writeVector(AParcel* parcel, const std::vector<bool>& vec) { - return AParcel_writeBoolArray(parcel, static_cast<const void*>(&vec), vec.size(), - AParcel_stdVectorGetter<bool>); + return AParcel_writeBoolArray(parcel, static_cast<const void*>(&vec), + static_cast<int32_t>(vec.size()), AParcel_stdVectorGetter<bool>); } /** @@ -801,7 +802,7 @@ inline binder_status_t AParcel_readVector(const AParcel* parcel, * Writes a vector of char16_t to the next location in a non-null parcel. */ inline binder_status_t AParcel_writeVector(AParcel* parcel, const std::vector<char16_t>& vec) { - return AParcel_writeCharArray(parcel, vec.data(), vec.size()); + return AParcel_writeCharArray(parcel, vec.data(), static_cast<int32_t>(vec.size())); } /** @@ -834,7 +835,8 @@ inline binder_status_t AParcel_readVector(const AParcel* parcel, * Writes a vector of uint8_t to the next location in a non-null parcel. */ inline binder_status_t AParcel_writeVector(AParcel* parcel, const std::vector<uint8_t>& vec) { - return AParcel_writeByteArray(parcel, reinterpret_cast<const int8_t*>(vec.data()), vec.size()); + return AParcel_writeByteArray(parcel, reinterpret_cast<const int8_t*>(vec.data()), + static_cast<int32_t>(vec.size())); } /** |