X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Finput%2Fraw_analog.c;h=68ac1c956fdefa6b4c200826507ed47f9b658b98;hb=b33606718cebd776723c18de0a17efbca2d69525;hp=95b1d669ee0d5b51a2278ec4e8b14c625bc6fdaf;hpb=d9251a2c9f1ca4380c27240ccca90c9f9ed46d3f;p=libsigrok.git diff --git a/src/input/raw_analog.c b/src/input/raw_analog.c index 95b1d669..68ac1c95 100644 --- a/src/input/raw_analog.c +++ b/src/input/raw_analog.c @@ -105,7 +105,7 @@ static int init(struct sr_input *in, GHashTable *options) { struct context *inc; int num_channels; - char channelname[8]; + char channelname[16]; const char *format; int fmt_index; @@ -130,7 +130,7 @@ static int init(struct sr_input *in, GHashTable *options) in->priv = inc = g_malloc0(sizeof(struct context)); for (int i = 0; i < num_channels; i++) { - snprintf(channelname, 8, "CH%d", i + 1); + snprintf(channelname, sizeof(channelname) - 1, "CH%d", i + 1); sr_channel_new(in->sdi, i, SR_CHANNEL_ANALOG, TRUE, channelname); } @@ -271,8 +271,8 @@ static int reset(struct sr_input *in) { struct context *inc = in->priv; - cleanup(in); inc->started = FALSE; + cleanup(in); g_string_truncate(in->buf, 0); return SR_OK;