]> sigrok.org Git - libsigrok.git/blobdiff - output/text/text.c
don't just assume a device has a samplerate setting
[libsigrok.git] / output / text / text.c
index ea7f3ec3378b74f925d81d993cfc103d4c5d1f82..da41b7334e6ba50434c5bcaaaa431ed4018aabfe 100644 (file)
@@ -107,9 +107,9 @@ int init(struct sr_output *o, int default_spl, enum outputmode mode)
 
        snprintf(ctx->header, 511, "%s\n", PACKAGE_STRING);
        num_probes = g_slist_length(o->device->probes);
-       if (o->device->plugin) {
+       if (o->device->plugin || device_has_hwcap(o->device, SR_HWCAP_SAMPLERATE)) {
                samplerate = *((uint64_t *) o->device->plugin->get_device_info(
-                               o->device->plugin_index, DI_CUR_SAMPLERATE));
+                               o->device->plugin_index, SR_DI_CUR_SAMPLERATE));
                if (!(samplerate_s = sr_samplerate_string(samplerate))) {
                        free(ctx->header);
                        free(ctx);
@@ -146,12 +146,12 @@ int event(struct sr_output *o, int event_type, char **data_out,
 
        ctx = o->internal;
        switch (event_type) {
-       case DF_TRIGGER:
+       case SR_DF_TRIGGER:
                ctx->mark_trigger = ctx->spl_cnt;
                *data_out = NULL;
                *length_out = 0;
                break;
-       case DF_END:
+       case SR_DF_END:
                outsize = ctx->num_enabled_probes
                                * (ctx->samples_per_line + 20) + 512;
                if (!(outbuf = calloc(1, outsize)))