Skip to content

Commit e306185

Browse files
Denis Deryuginalpinskiy
authored andcommitted
Avoid calling std::memcpy() for empty string_view
Sanitzers don't like it, becase src is marked as restricted (i.e. it's not expected to be null)
1 parent 52873db commit e306185

1 file changed

Lines changed: 3 additions & 1 deletion

File tree

statshouse.hpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -486,7 +486,9 @@ class TransportUDPBase {
486486
}
487487
put32(begin + fullLen - 4, 0); // padding first
488488
*begin = static_cast<char>(len); // or put32(p, len);
489-
std::memcpy(begin+1, data, len);
489+
if (STATSHOUSE_LIKELY(len != 0)) { // avoid calling std::memcpy(..., __restrict__ src = nullptr, ...) for empty string_view
490+
std::memcpy(begin+1, data, len);
491+
}
490492
begin += fullLen;
491493
}
492494
return begin;

0 commit comments

Comments
 (0)