devc->fw_updated = 0;
devc->cur_samplerate = 0;
devc->limit_samples = 0;
- devc->sample_wide = 0;
+ devc->sample_wide = FALSE;
return devc;
}
static void finish_acquisition(struct dev_context *devc)
{
struct sr_datafeed_packet packet;
- int i;
/* Terminate session. */
packet.type = SR_DF_END;
sr_session_send(devc->cb_data, &packet);
/* Remove fds from polling. */
- for (i = 0; devc->usbfd[i] != -1; i++)
- sr_source_remove(devc->usbfd[i]);
- g_free(devc->usbfd);
+ usb_source_remove(devc->ctx);
devc->num_transfers = 0;
g_free(devc->transfers);
int trigger_offset, i, sample_width, cur_sample_count;
int trigger_offset_bytes;
uint8_t *cur_buf;
+ uint16_t cur_sample;
devc = transfer->user_data;
if (devc->trigger_stage >= 0) {
for (i = 0; i < cur_sample_count; i++) {
- const uint16_t cur_sample = devc->sample_wide ?
- *((const uint16_t*)cur_buf + i) :
- *((const uint8_t*)cur_buf + i);
+ cur_sample = devc->sample_wide ?
+ *((uint16_t *)cur_buf + i) :
+ *((uint8_t *)cur_buf + i);
if ((cur_sample & devc->trigger_mask[devc->trigger_stage]) ==
devc->trigger_value[devc->trigger_stage]) {
*/
packet.type = SR_DF_LOGIC;
packet.payload = &logic;
- logic.unitsize = sizeof(*devc->trigger_buffer);
+ logic.unitsize = sample_width;
logic.length = devc->trigger_stage * logic.unitsize;
logic.data = devc->trigger_buffer;
sr_session_send(devc->cb_data, &packet);