Commit 1072a897 authored by Marcus Holland-Moritz's avatar Marcus Holland-Moritz Committed by Facebook Github Bot 2

folly: fbvector: ubsan: don't call memcpy() with nullptr args if size == 0

Reviewed By: meyering, luciang

Differential Revision: D3310683

fbshipit-source-id: c86471d54062b2f3455f15fb73340fac486d9e44
parent 01dbb37f
...@@ -522,7 +522,9 @@ private: ...@@ -522,7 +522,9 @@ private:
static void static void
S_uninitialized_copy_bits(T* dest, const T* first, const T* last) { S_uninitialized_copy_bits(T* dest, const T* first, const T* last) {
std::memcpy((void*)dest, (void*)first, (last - first) * sizeof(T)); if (last != first) {
std::memcpy((void*)dest, (void*)first, (last - first) * sizeof(T));
}
} }
static void static void
...@@ -530,7 +532,9 @@ private: ...@@ -530,7 +532,9 @@ private:
std::move_iterator<T*> last) { std::move_iterator<T*> last) {
T* bFirst = first.base(); T* bFirst = first.base();
T* bLast = last.base(); T* bLast = last.base();
std::memcpy((void*)dest, (void*)bFirst, (bLast - bFirst) * sizeof(T)); if (bLast != bFirst) {
std::memcpy((void*)dest, (void*)bFirst, (bLast - bFirst) * sizeof(T));
}
} }
template <typename It> template <typename It>
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment