mslot_class: two more: use uint32_t to shift 1 << 31
Avoid runtime error seen on jenkins admin-deb9build slave, when building osmo-pcu with_dsp=None,with_vty=False, during ts_alloc and tbf regression tests: +../../../src/mslot_class.c:271:36: runtime error: left shift of 1 by 31 places cannot be represented in type 'int' +../../../src/mslot_class.c:272:22: runtime error: left shift of 1 by 31 places cannot be represented in type 'int' This time it seems that these are all. The master-osmo-pcu breaks on this since moving to a debian9 build slave. Change-Id: I976a1dca9da19a05afc85a17b7ba60545b7bc1e5
This commit is contained in:
parent
8b4bd46b95
commit
f75381498c
|
@ -268,8 +268,8 @@ uint16_t mslot_wrap_window(uint16_t win)
|
||||||
|
|
||||||
bool mslot_test_and_set_bit(uint32_t *bits, size_t elem)
|
bool mslot_test_and_set_bit(uint32_t *bits, size_t elem)
|
||||||
{
|
{
|
||||||
bool was_set = bits[elem/32] & (1 << (elem % 32));
|
bool was_set = bits[elem/32] & (((uint32_t)1) << (elem % 32));
|
||||||
bits[elem/32] |= (1 << (elem % 32));
|
bits[elem/32] |= (((uint32_t)1) << (elem % 32));
|
||||||
|
|
||||||
return was_set;
|
return was_set;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue