nvhost_nvdec_common: Avoid memcpy with null pointers
Avoid sending null pointer to memcpy as reported by Undefined Behavious Sanitizer. Co-authored-by: LC <mathew1800@gmail.com>
This commit is contained in:
		| @@ -23,18 +23,23 @@ namespace { | ||||
| template <typename T> | ||||
| std::size_t SpliceVectors(const std::vector<u8>& input, std::vector<T>& dst, std::size_t count, | ||||
|                           std::size_t offset) { | ||||
|     if (!dst.empty()) { | ||||
|         std::memcpy(dst.data(), input.data() + offset, count * sizeof(T)); | ||||
|     offset += count * sizeof(T); | ||||
|     return offset; | ||||
|     } | ||||
|     return 0; | ||||
| } | ||||
|  | ||||
| // Write vectors will write data to the output buffer | ||||
| template <typename T> | ||||
| std::size_t WriteVectors(std::vector<u8>& dst, const std::vector<T>& src, std::size_t offset) { | ||||
|     if (src.empty()) { | ||||
|         return 0; | ||||
|     } else { | ||||
|         std::memcpy(dst.data() + offset, src.data(), src.size() * sizeof(T)); | ||||
|         offset += src.size() * sizeof(T); | ||||
|         return offset; | ||||
|     } | ||||
| } | ||||
| } // Anonymous namespace | ||||
|  | ||||
| nvhost_nvdec_common::nvhost_nvdec_common(Core::System& system, std::shared_ptr<nvmap> nvmap_dev, | ||||
|   | ||||
		Reference in New Issue
	
	Block a user