Closed mrksngl closed 4 years ago
Thanks. There are two problems (i) missing bit shift, (ii) wrong operator as you already mentioned. Should rather be:
byte target_change_report_capability = (byte) ((capability_class_code & 0xC0) >>> 6);
return target_change_report_capability == 1 || target_change_report_capability == 2;
fixed in v3.2.0
In AirborneOperationalStatusV1Msg.java there is computation
which is never true: the lowest two bits of
target_change_report_capability
will always be 0 after logical conjunction with0xc0
. Also, the disjunction in the return statement should be logical, i.e.||
, rather than bitwise.