mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-19 00:41:43 +00:00
[ntcore] Disable buf pool when asan is enabled (#5843)
This helps asan catch more errors.
This commit is contained in:
@@ -260,8 +260,12 @@ wpi::uv::Buffer WebSocketConnection::AllocBuf() {
|
||||
}
|
||||
|
||||
void WebSocketConnection::ReleaseBufs(std::span<wpi::uv::Buffer> bufs) {
|
||||
#ifdef __SANITIZE_ADDRESS__
|
||||
size_t numToPool = 0;
|
||||
#else
|
||||
size_t numToPool = (std::min)(bufs.size(), kMaxPoolSize - m_buf_pool.size());
|
||||
m_buf_pool.insert(m_buf_pool.end(), bufs.begin(), bufs.begin() + numToPool);
|
||||
#endif
|
||||
for (auto&& buf : bufs.subspan(numToPool)) {
|
||||
buf.Deallocate();
|
||||
}
|
||||
|
||||
@@ -28,10 +28,14 @@ void UvStreamConnection3::Flush() {
|
||||
++m_sendsActive;
|
||||
m_stream.Write(m_buffers, [selfweak = weak_from_this()](auto bufs, auto) {
|
||||
if (auto self = selfweak.lock()) {
|
||||
#ifdef __SANITIZE_ADDRESS__
|
||||
size_t numToPool = 0;
|
||||
#else
|
||||
size_t numToPool =
|
||||
(std::min)(bufs.size(), kMaxPoolSize - self->m_buf_pool.size());
|
||||
self->m_buf_pool.insert(self->m_buf_pool.end(), bufs.begin(),
|
||||
bufs.begin() + numToPool);
|
||||
#endif
|
||||
for (auto&& buf : bufs.subspan(numToPool)) {
|
||||
buf.Deallocate();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user