From 019c0bb376b5c5bd13348675bc731f35296eb321 Mon Sep 17 00:00:00 2001 From: levlam Date: Mon, 25 Jun 2018 02:27:07 +0300 Subject: [PATCH] Make BufferRaw buffer unsigned. GitOrigin-RevId: 5d4f8faaa1806c3b035cd44ef9cd3f5111d93abf --- tdutils/td/utils/buffer.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tdutils/td/utils/buffer.h b/tdutils/td/utils/buffer.h index aa4ef8db..857c388d 100644 --- a/tdutils/td/utils/buffer.h +++ b/tdutils/td/utils/buffer.h @@ -33,7 +33,7 @@ struct BufferRaw { std::atomic has_writer_; bool was_reader_; - alignas(4) char data_[1]; + alignas(4) unsigned char data_[1]; }; class BufferAllocator { @@ -174,8 +174,8 @@ class BufferSlice { BufferSlice from_slice(Slice slice) const { auto res = BufferSlice(BufferAllocator::create_reader(buffer_)); - res.begin_ = slice.begin() - buffer_->data_; - res.end_ = slice.end() - buffer_->data_; + res.begin_ = static_cast(slice.ubegin() - buffer_->data_); + res.end_ = static_cast(slice.uend() - buffer_->data_); CHECK(buffer_->begin_ <= res.begin_); CHECK(res.begin_ <= res.end_); CHECK(res.end_ <= buffer_->end_.load(std::memory_order_relaxed));