mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-06-19 13:22:02 +02:00
util: use explicit cast in MultiIntBitSet::Fill()
The current code does not have a bug, but is implicitly casting -1 to 65535 and the sanitizer has no way to know whether we intend that or not. ``` FUZZ=bitset src/test/fuzz/fuzz /tmp/fuz error: implicit conversion from type 'int' of value -1 (32-bit, signed) to type 'value_type' (aka 'unsigned short') changed the value to 65535 (16-bit, unsigned) Base64: Qv7bX/8= ``` Github-Pull: bitcoin/bitcoin#31431 Rebased-From: edb41e4814ccc2c06a5694b2d2632dbbd22bc0cf
This commit is contained in:
parent
2835158be0
commit
b8112cf422
@ -366,7 +366,7 @@ public:
|
||||
if (count) {
|
||||
unsigned i = 0;
|
||||
while (count > LIMB_BITS) {
|
||||
ret.m_val[i++] = ~I{0};
|
||||
ret.m_val[i++] = I(~I{0});
|
||||
count -= LIMB_BITS;
|
||||
}
|
||||
ret.m_val[i] = I(~I{0}) >> (LIMB_BITS - count);
|
||||
|
Loading…
x
Reference in New Issue
Block a user