From 0ae7fb6c7cd341a2921246253a1076bcd6d7d446 Mon Sep 17 00:00:00 2001 From: Simon Rozman Date: Tue, 22 Oct 2024 17:25:54 +0200 Subject: [PATCH] stream: use indexing operator for pointer arithmetics --- include/stdex/stream.hpp | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/include/stdex/stream.hpp b/include/stdex/stream.hpp index 3c240cb04..b919f9f4d 100644 --- a/include/stdex/stream.hpp +++ b/include/stdex/stream.hpp @@ -3557,7 +3557,7 @@ namespace stdex #endif size_t available = m_size - m_offset; if (length <= available) { - memcpy(data, m_data + m_offset, length); + memcpy(data, &m_data[m_offset], length); m_offset += length; m_state = state_t::ok; return length; @@ -3566,7 +3566,7 @@ namespace stdex m_state = state_t::eof; return 0; } - memcpy(data, m_data + m_offset, available); + memcpy(data, &m_data[m_offset], available); m_offset += available; m_state = state_t::ok; return available; @@ -3598,7 +3598,7 @@ namespace stdex } size_t end_offset = m_offset + sizeof(T); if (end_offset <= m_size) { - data = LE2HE(*reinterpret_cast(m_data + m_offset)); + data = LE2HE(*reinterpret_cast(&m_data[m_offset])); m_offset = end_offset; #if !CHECK_STREAM_STATE m_state = state_t::ok; @@ -3638,10 +3638,10 @@ namespace stdex } size_t end_offset = m_offset + sizeof(uint32_t); if (end_offset <= m_size) { - uint32_t num_chars = LE2HE(*reinterpret_cast(m_data + m_offset)); + uint32_t num_chars = LE2HE(*reinterpret_cast(&m_data[m_offset])); m_offset = end_offset; end_offset = stdex::add(m_offset, stdex::mul(num_chars, sizeof(T))); - T* start = reinterpret_cast(m_data + m_offset); + T* start = reinterpret_cast(&m_data[m_offset]); if (end_offset <= m_size) { data.assign(start, start + num_chars); m_offset = end_offset; @@ -3651,7 +3651,7 @@ namespace stdex return *this; } if (end_offset <= m_size) - data.assign(start, reinterpret_cast(m_data + m_size)); + data.assign(start, reinterpret_cast(&m_data[m_size])); } m_offset = m_size; m_state = state_t::eof; @@ -3671,7 +3671,7 @@ namespace stdex if (!ok()) _Unlikely_ return 0; } - memcpy(m_data + m_offset, data, length); + memcpy(&m_data[m_offset], data, length); m_offset = end_offset; if (m_offset > m_size) m_size = m_offset; @@ -3693,7 +3693,7 @@ namespace stdex if (!ok()) _Unlikely_ return; } - memset(m_data + m_offset, byte, amount); + memset(&m_data[m_offset], byte, amount); m_offset = end_offset; if (m_offset > m_size) m_size = m_offset; @@ -3728,7 +3728,7 @@ namespace stdex if (!ok()) _Unlikely_ return *this; } - (*reinterpret_cast(m_data + m_offset)) = HE2LE(data); + (*reinterpret_cast(&m_data[m_offset])) = HE2LE(data); m_offset = end_offset; if (m_offset > m_size) m_size = m_offset; @@ -3771,7 +3771,7 @@ namespace stdex if (!ok()) _Unlikely_ return *this; } - auto p = m_data + m_offset; + auto p = &m_data[m_offset]; *reinterpret_cast(p) = HE2LE((uint32_t)num_chars); memcpy(p + sizeof(uint32_t), data, size_chars); m_offset = end_offset; @@ -3816,7 +3816,7 @@ namespace stdex if (!ok()) _Unlikely_ return *this; } - auto p = m_data + m_offset; + auto p = &m_data[m_offset]; *reinterpret_cast(p) = HE2LE((uint32_t)num_chars); memcpy(p + sizeof(uint32_t), data.data(), size_chars); m_offset = end_offset; @@ -3847,7 +3847,7 @@ namespace stdex if (!ok()) _Unlikely_ return 0; while (to_write) { - num_read = stream.read(m_data + dst_offset, to_write); + num_read = stream.read(&m_data[dst_offset], to_write); /*dst_size =*/ dst_offset += num_read; num_copied += num_read; to_write -= num_read; @@ -3866,7 +3866,7 @@ namespace stdex reserve(dst_size); if (!ok()) _Unlikely_ break; - num_read = stream.read(m_data + dst_offset, block_size); + num_read = stream.read(&m_data[dst_offset], block_size); dst_size = dst_offset += num_read; num_copied += num_read; to_write -= num_read; @@ -3979,7 +3979,7 @@ namespace stdex m_atime = m_mtime = time_point::now(); #endif stdex_assert(offset + sizeof(T) < m_size); - (*reinterpret_cast(m_data + offset)) = HE2LE(data); + (*reinterpret_cast(&m_data[offset])) = HE2LE(data); } public: @@ -4010,7 +4010,7 @@ namespace stdex void get(_In_ fpos_t offset, _Out_ T & data) { stdex_assert(offset + sizeof(T) < m_size); - data = LE2HE(*(T*)(m_data + offset)); + data = LE2HE(*(T*)(&m_data[offset])); #if SET_FILE_OP_TIMES m_atime = time_point::now(); #endif