mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-04-04 04:45:10 +02:00
Merge #14357: streams: Fix broken streams_vector_reader test. Remove unused seek(size_t).
4f4993fe2aRemove UBSan suppression (practicalswift)958e1a307estreams: Remove unused seek(size_t) (practicalswift) Pull request description: Fix broken `streams_vector_reader` test. Remove unused `seek(size_t)`. Before this change the test `streams_vector_reader` triggered an unintended unsigned integer wraparound. It tried so seek using a negative value in `reader.seek(-6)`. Changes in this PR: * Fix broken `VectorReader::seek(size_t)` test case * Remove unused `seek(size_t)` Tree-SHA512: 6c6affd680626363eef9e496748f2f86a522325abab9d6b13161f41125cdc29ceb36c2c1509c90b8ff108d606df7629e55e094cc2b6253b05a892b81ce176b71
This commit is contained in:
@@ -120,12 +120,6 @@ class CVectorWriter
|
||||
{
|
||||
return nType;
|
||||
}
|
||||
void seek(size_t nSize)
|
||||
{
|
||||
nPos += nSize;
|
||||
if(nPos > vchData.size())
|
||||
vchData.resize(nPos);
|
||||
}
|
||||
private:
|
||||
const int nType;
|
||||
const int nVersion;
|
||||
@@ -152,9 +146,11 @@ public:
|
||||
* @param[in] pos Starting position. Vector index where reads should start.
|
||||
*/
|
||||
VectorReader(int type, int version, const std::vector<unsigned char>& data, size_t pos)
|
||||
: m_type(type), m_version(version), m_data(data)
|
||||
: m_type(type), m_version(version), m_data(data), m_pos(pos)
|
||||
{
|
||||
seek(pos);
|
||||
if (m_pos > m_data.size()) {
|
||||
throw std::ios_base::failure("VectorReader(...): end of data (m_pos > m_data.size())");
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -197,14 +193,6 @@ public:
|
||||
memcpy(dst, m_data.data() + m_pos, n);
|
||||
m_pos = pos_next;
|
||||
}
|
||||
|
||||
void seek(size_t n)
|
||||
{
|
||||
m_pos += n;
|
||||
if (m_pos > m_data.size()) {
|
||||
throw std::ios_base::failure("VectorReader::seek(): end of data");
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
/** Double ended buffer combining vector and stream-like interfaces.
|
||||
|
||||
Reference in New Issue
Block a user