mirror of https://gerrit.osmocom.org/libosmocore
bitvec: Fix decoding of H / L values
it returns if a given bit in the vector is "high" or "low". the bitval that represents "high" depends on the bit position. bitval2mask returns that. so we must check if the bit in the vector equals the returned bitval.
This commit is contained in:
parent
acffb60c1a
commit
dc0ebdfbdf
|
@ -90,7 +90,7 @@ enum bit_value bitvec_get_bit_pos_high(const struct bitvec *bv,
|
|||
|
||||
bitval = bitval2mask(H, bitnum);
|
||||
|
||||
if (bv->data[bytenum] & bitval)
|
||||
if ((bv->data[bytenum] & (1 << bitnum)) == bitval)
|
||||
return H;
|
||||
|
||||
return L;
|
||||
|
|
Loading…
Reference in New Issue