X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?p=smouse;a=blobdiff_plain;f=src%2Fdev_smag.c;h=5d0e6cdde9c61ff20377cccb47d595aae67f6db9;hp=f96ae5d62d0c87e0ca4a7bcf06228b63e42f9d61;hb=fa8d935b2ba4e1fddee7404dc6fd68de18d8c649;hpb=baa842556c85f24e0cc1b4fd07da03b6609160c1 diff --git a/src/dev_smag.c b/src/dev_smag.c index f96ae5d..5d0e6cd 100644 --- a/src/dev_smag.c +++ b/src/dev_smag.c @@ -76,16 +76,20 @@ static int opendev(const char *dev) return -1; /* failed to get a response */ } - ser_printf(fd, "vQ\r"); + ser_block(fd); - while(ser_getline_block(fd, buf, sizeof buf) && buf[0] != 'v'); + ser_printf(fd, "vQ\r"); + do { + ser_getline(fd, buf, sizeof buf); + } while(buf[0] != 'v'); - printf("DBG: \"%s\"\n", buf); if(buf[0] != 'v' || !strstr(buf, "MAGELLAN")) { fprintf(stderr, "unknown device: \"%s\"\n", buf + 1); ser_close(fd); return -1; } + + ser_nonblock(fd); return fd; }