From: Gerhard Sittig Date: Sun, 24 Nov 2019 08:52:42 +0000 (+0100) Subject: decoder: internal 'always false' term, handle invalid skip and channel X-Git-Url: https://sigrok.org/gitweb/?a=commitdiff_plain;h=1cb40e1077894db4c92cfa01b285e28b202cce6f;hp=1cb40e1077894db4c92cfa01b285e28b202cce6f;p=libsigrokdecode.git decoder: internal 'always false' term, handle invalid skip and channel Introduce an "always false" type for .wait() terms. Map invalid counts of skip conditions (zero or negative numbers) as well as invalid channel references for level/edge conditions to this type which never matches. Keep this "always false" term type an internal detail of the common support code. This is most robust and least intrusive at the same time, it keeps the existing API, and simplifies the implementation of Python decoders for rare edge cases (optional input signals or optional features, handling of initial samples at the very start of a capture). This commit passes sample counts internally in a signed data type. This is essential for proper operation, and the loss of one bit out of 64 shall not be considered a severe limitation. This fixes bug #1444. ---