Move setting of CF earlier so we can use its value while decoding AA.
(Needed to notice non-ICAO addresses in TIS-B)
This commit is contained in:
parent
07c4f045aa
commit
5020d75b9e
11
mode_s.c
11
mode_s.c
|
@ -542,6 +542,12 @@ int decodeModesMessage(struct modesMessage *mm, unsigned char *msg)
|
|||
|
||||
mm->bFlags = 0;
|
||||
|
||||
// CF (Control field)
|
||||
// done first so we can use it in AA.
|
||||
if (mm->msgtype == 18) {
|
||||
mm->cf = msg[0] & 7;
|
||||
}
|
||||
|
||||
// AA (Address announced)
|
||||
if (mm->msgtype == 11 || mm->msgtype == 17 || mm->msgtype == 18) {
|
||||
mm->addr = (msg[1] << 16) | (msg[2] << 8) | (msg[3]);
|
||||
|
@ -581,11 +587,6 @@ int decodeModesMessage(struct modesMessage *mm, unsigned char *msg)
|
|||
|
||||
// CC (Cross-link capability) not decoded
|
||||
|
||||
// CF (Control field)
|
||||
if (mm->msgtype == 18) {
|
||||
mm->cf = msg[0] & 7;
|
||||
}
|
||||
|
||||
// DR (Downlink Request) not decoded
|
||||
|
||||
// FS (Flight Status)
|
||||
|
|
Loading…
Reference in a new issue