diff options
author | Uwe Hermann <uwe@hermann-uwe.de> | 2014-01-31 00:13:32 +0100 |
---|---|---|
committer | Uwe Hermann <uwe@hermann-uwe.de> | 2014-01-31 00:13:32 +0100 |
commit | 9bf7f71c8e29328bda5689d79b412cc0dde9fbe9 (patch) | |
tree | ddf80ee5bfe1fc7a6c458851fa25e9b1a58ce461 /instance.c | |
parent | c515eed7ef7a04a42b5b34abd308e08d6942835e (diff) | |
download | libsigrokdecode-9bf7f71c8e29328bda5689d79b412cc0dde9fbe9.tar.gz libsigrokdecode-9bf7f71c8e29328bda5689d79b412cc0dde9fbe9.zip |
srd_inst_probe_set_all: Error out upon missing required probes.
Diffstat (limited to 'instance.c')
-rw-r--r-- | instance.c | 10 |
1 files changed, 10 insertions, 0 deletions
@@ -305,6 +305,16 @@ SRD_API int srd_inst_probe_set_all(struct srd_decoder_inst *di, (i < num_required_probes) ? "required" : "optional"); } + /* Report an error if not all required probes were specified. */ + for (i = 0; i < num_required_probes; i++) { + if (new_probemap[i] != -1) + continue; + p = g_slist_nth(di->decoder->probes, i)->data; + srd_err("Required probe '%s' (index %d) was not specified.", + p->id, i); + return SRD_ERR; + } + g_free(di->dec_probemap); di->dec_probemap = new_probemap; |