]> sigrok.org Git - libsigrok.git/commitdiff
tondaj-sl-814: Mark serial read/write calls as blocking.
authorMartin Ling <redacted>
Sun, 21 Sep 2014 18:24:33 +0000 (19:24 +0100)
committerUwe Hermann <redacted>
Wed, 24 Sep 2014 21:30:32 +0000 (23:30 +0200)
These calls are executed from an event handler and were previously nonblocking,
but they have no partial read/write handling. The code is already marked TODO
for improvement.

src/hardware/tondaj-sl-814/protocol.c

index b4deee1364f5b6fafdec8eeef16ee1a3de687927..d4f89b7f2d7490c9558d6bc6423102b1c7177991 100644 (file)
@@ -133,14 +133,14 @@ int tondaj_sl_814_receive_data(int fd, int revents, void *cb_data)
                buf[2] = 0x0d;
                sr_spew("Sending init command: %02x %02x %02x.",
                        buf[0], buf[1], buf[2]);
-               if ((ret = serial_write(serial, buf, 3)) < 0) {
+               if ((ret = serial_write_blocking(serial, buf, 3)) < 0) {
                        sr_err("Error sending init command: %d.", ret);
                        return FALSE;
                }
                devc->state = GET_INIT_REPLY;
        } else if (devc->state == GET_INIT_REPLY) {
                /* If we just sent the "init" command, get its reply. */
-               if ((ret = serial_read(serial, buf, 2)) < 0) {
+               if ((ret = serial_read_blocking(serial, buf, 2)) < 0) {
                        sr_err("Error reading init reply: %d.", ret);
                        return FALSE;
                }
@@ -159,7 +159,7 @@ int tondaj_sl_814_receive_data(int fd, int revents, void *cb_data)
                buf[2] = 0x0d;
                sr_spew("Sending data request command: %02x %02x %02x.",
                        buf[0], buf[1], buf[2]);
-               if ((ret = serial_write(serial, buf, 3)) < 0) {
+               if ((ret = serial_write_blocking(serial, buf, 3)) < 0) {
                        sr_err("Error sending request command: %d.", ret);
                        return FALSE;
                }