]> sigrok.org Git - sigrok-cli.git/blobdiff - decode.c
Show annotations based on decoder ID
[sigrok-cli.git] / decode.c
index adbe73b32e90a80209f7a3f31a1248a23d971f9b..2bcc0ae13f53306a2743abc7e692695523a5eff9 100644 (file)
--- a/decode.c
+++ b/decode.c
@@ -179,7 +179,7 @@ static int register_pd(char *opt_pds, char *opt_pd_annotations)
                 * in the stack.
                 */
                if (!opt_pd_annotations) {
-                       g_hash_table_insert(pd_ann_visible, g_strdup(di->inst_id),
+                       g_hash_table_insert(pd_ann_visible, g_strdup(di->decoder->id),
                                        g_slist_append(NULL, GINT_TO_POINTER(-1)));
                }
                if (di_prior) {
@@ -430,10 +430,11 @@ void show_pd_annotations(struct srd_proto_data *pdata, void *cb_data)
        if (!pd_ann_visible)
                return;
 
-       if (!g_hash_table_lookup_extended(pd_ann_visible, pdata->pdo->di->inst_id,
-                       NULL, (void **)&ann_list))
+       if (!g_hash_table_lookup_extended(pd_ann_visible, pdata->pdo->di->decoder->id,
+                       NULL, (void **)&ann_list)) {
                /* Not in the list of PDs whose annotations we're showing. */
                return;
+       }
 
        dec = pdata->pdo->di->decoder;
        pda = pdata->data;