]> sigrok.org Git - libsigrok.git/commitdiff
siglent-sds: Replace non-portable strcasestr() with g_strstr_len().
authorUwe Hermann <redacted>
Tue, 13 Feb 2018 21:37:01 +0000 (22:37 +0100)
committerUwe Hermann <redacted>
Tue, 13 Feb 2018 21:45:22 +0000 (22:45 +0100)
The strcasestr() function is non-portable (e.g. not available on
MinGW, possibly elsewhere). Replace it with g_strstr_len() for the time
being. While the latter is not case-insensitive it appears that
that property doesn't matter here ("." should not be relevant anyway,
and e.g. an SDS1202X-E does indeed report "Mpts" as such).

Should it become necessary to have this code be case-insensitive,
we'll have to find a more portable solution than strcasestr().

src/hardware/siglent-sds/protocol.c

index 40f7d104db549403b38b4d6209e1491f4cfee960..23951c710f92ff57b9a9305df37bb23d6a14f1f8 100644 (file)
@@ -684,10 +684,10 @@ SR_PRIV int siglent_sds_get_dev_cfg_horizontal(const struct sr_dev_inst *sdi)
        g_free(cmd);
        if (res != SR_OK)
                return SR_ERR;
-       if (strcasestr(samplePointsString, "Mpts") != NULL) {
+       if (g_strstr_len(samplePointsString, -1, "Mpts") != NULL) {
                samplePointsString[strlen(samplePointsString) - 4] = '\0';
 
-               if (strcasestr(samplePointsString, ".") != NULL) {
+               if (g_strstr_len(samplePointsString, -1, ".") != NULL) {
                        first = strtok(samplePointsString, ".");
                        concat = strcat(first, strtok(NULL, "."));
                        if (sr_atof_ascii(concat, &fvalue) != SR_OK || fvalue == 0.0) {