X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=input%2Finput_binary.c;h=b83ea6f5ea58ed46aad482c19031f2b47fe94416;hb=3b7c8f54fcf4c6de1ec67d11a9ec8975a2ddbb57;hp=109927dcb44425619e8d563402b4005f5d63edca;hpb=a0ecd83bc6e07ea412db5cd0108d50d89e36df8f;p=libsigrok.git diff --git a/input/input_binary.c b/input/input_binary.c index 109927dc..b83ea6f5 100644 --- a/input/input_binary.c +++ b/input/input_binary.c @@ -39,17 +39,25 @@ static int format_match(const char *filename) static int init(struct sr_input *in) { - int num_probes; + int num_probes, i; + char name[SR_MAX_PROBENAME_LEN + 1]; if (in->param && in->param[0]) { num_probes = strtoul(in->param, NULL, 10); if (num_probes < 1) return SR_ERR; - } else + } else { num_probes = DEFAULT_NUM_PROBES; + } + + /* Create a virtual device. */ + in->vdevice = sr_device_new(NULL, 0); - /* create a virtual device */ - in->vdevice = sr_device_new(NULL, 0, num_probes); + for (i = 0; i < num_probes; i++) { + snprintf(name, SR_MAX_PROBENAME_LEN, "%d", i); + /* TODO: Check return value. */ + sr_device_probe_add(in->vdevice, name); + } return SR_OK; }