}
i++;
}
+ g_free(tmp_str);
if (!trig_source || scope_state_get_array_option(trig_source,
config->trigger_sources, config->num_trigger_sources,
if (scope_state_get_array_option(tmp_str, config->trigger_slopes,
config->num_trigger_slopes, &state->trigger_slope) != SR_OK)
return SR_ERR;
+ g_free(tmp_str);
if (sr_scpi_get_float(sdi->conn, "TRIG_DELAY?", &state->horiz_triggerpos) != SR_OK)
return SR_ERR;
struct sr_analog_encoding encoding;
struct sr_analog_meaning meaning;
struct sr_analog_spec spec;
- char buf[8];
(void)fd;
(void)revents;
- data = NULL;
-
if (!(sdi = cb_data))
return TRUE;
if (ch->type != SR_CHANNEL_ANALOG)
return SR_ERR;
- /* Pass on the received data of the channel(s). */
- if (sr_scpi_read_data(sdi->conn, buf, 4) != 4) {
- sr_err("Reading header failed, scope probably didn't send any data.");
- return TRUE;
- }
-
+ data = NULL;
if (sr_scpi_get_block(sdi->conn, NULL, &data) != SR_OK) {
if (data)
g_byte_array_free(data, TRUE);
if (analog.num_samples == 0) {
g_free(analog.data);
+ g_byte_array_free(data, TRUE);
/* No data available, we have to acquire data first. */
g_snprintf(command, sizeof(command), "ARM;WAIT;*OPC;C%d:WAVEFORM?", ch->index + 1);
} else {
/* Update sample rate if needed. */
if (state->sample_rate == 0)
- if (lecroy_xstream_update_sample_rate(sdi, analog.num_samples) != SR_OK)
+ if (lecroy_xstream_update_sample_rate(sdi, analog.num_samples) != SR_OK) {
+ g_free(analog.data);
+ g_byte_array_free(data, TRUE);
return SR_ERR;
+ }
}
/*
* Send "frame begin" packet upon reception of data for the
* first enabled channel.
*/
- if (devc->current_channel == devc->enabled_channels) {
- packet.type = SR_DF_FRAME_BEGIN;
- sr_session_send(sdi, &packet);
- }
+ if (devc->current_channel == devc->enabled_channels)
+ std_session_send_df_frame_begin(sdi);
meaning.channels = g_slist_append(NULL, ch);
packet.payload = &analog;
return TRUE;
}
- packet.type = SR_DF_FRAME_END;
- sr_session_send(sdi, &packet);
+ std_session_send_df_frame_end(sdi);
/*
* End of frame was reached. Stop acquisition after the specified