From: Daniel Elstner Date: Sat, 31 Jan 2015 20:04:14 +0000 (+0100) Subject: sysclk-lwla: Widen constant to 64 bit before shifting X-Git-Tag: libsigrok-0.4.0~664 X-Git-Url: https://sigrok.org/gitweb/?p=libsigrok.git;a=commitdiff_plain;h=57ba5f3d56a3e2927d35229a684cc9b4b8435789 sysclk-lwla: Widen constant to 64 bit before shifting (lwla_convert_trigger): Fix trigger mask computation bug introduced by recent change: Widen constant to 64 bit before shifting so that channel nunmbers beyond 32 are processed correctly. --- diff --git a/src/hardware/sysclk-lwla/protocol.c b/src/hardware/sysclk-lwla/protocol.c index f1ae8b3d..ce922374 100644 --- a/src/hardware/sysclk-lwla/protocol.c +++ b/src/hardware/sysclk-lwla/protocol.c @@ -279,7 +279,7 @@ static void issue_read_end(const struct sr_dev_inst *sdi) devc->state = STATE_READ_END; } -/* Decode an incoming reponse to a buffer fill level request and act on it +/* Decode an incoming response to a buffer fill level request and act on it * as appropriate. Note that this function changes the device context state. */ static void process_capture_length(const struct sr_dev_inst *sdi) @@ -768,7 +768,7 @@ SR_PRIV int lwla_convert_trigger(const struct sr_dev_inst *sdi) if (!match->channel->enabled) /* Ignore disabled channels with a trigger. */ continue; - channel_index = 1 << match->channel->index; + channel_index = (uint64_t)1 << match->channel->index; devc->trigger_mask |= channel_index; switch (match->match) { case SR_TRIGGER_ONE: