]> sigrok.org Git - libsigrokdecode.git/commit
lpc: Improve robustness when decoding unexpected input data
authorGerhard Sittig <redacted>
Sun, 18 Jun 2017 10:24:32 +0000 (12:24 +0200)
committerUwe Hermann <redacted>
Wed, 21 Jun 2017 15:45:15 +0000 (17:45 +0200)
commita912e8cbb6ab4a56bee71a9c0fd0045d5fdee55c
tree6eeed19be07104b15a2a7d9d7565b520be08bd03
parent6120ff64d4096bcb32c8a42f06ff77d75a5326c2
lpc: Improve robustness when decoding unexpected input data

The 'fields' table of state and descriptions is not fully populated,
some slots are missing. Cope with lookup misses when unexpected input
data is not found in the table. Use different error text in annotations
for described but invalid states (the previous implementation used
"reserved / invalid"), and for states that are not described in the
table (introduce the "reserved / unknown" text for conditions that are
not covered by the decoder implementation).

The previous implementation missed the emission of some warnings. When a
"reserved / invalid" description was found, the subsequent exact match
for "reserved" failed and the warning was not emitted. Weaken the test
to emit warnings for either description that has "reserved" in it,
regardless of whether the text was found in the table or is not part of
the table at all.
decoders/lpc/pd.py