diff options
author | kevlo <kevlo@FreeBSD.org> | 2012-11-13 05:58:52 +0000 |
---|---|---|
committer | kevlo <kevlo@FreeBSD.org> | 2012-11-13 05:58:52 +0000 |
commit | fd88f8a30c0bcae350bd63fa322dcf46b5f9c181 (patch) | |
tree | af5a443bb73d005cc0ec01efea194de05fd78b48 | |
parent | 8af97236b44c01761e1294025653d7f19dac7dd9 (diff) | |
download | FreeBSD-src-fd88f8a30c0bcae350bd63fa322dcf46b5f9c181.zip FreeBSD-src-fd88f8a30c0bcae350bd63fa322dcf46b5f9c181.tar.gz |
Check the return value of uiomove(9).
-rw-r--r-- | sys/dev/iicbus/iic.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/dev/iicbus/iic.c b/sys/dev/iicbus/iic.c index d251555..55084e9 100644 --- a/sys/dev/iicbus/iic.c +++ b/sys/dev/iicbus/iic.c @@ -221,7 +221,11 @@ iicwrite(struct cdev *dev, struct uio * uio, int ioflag) } count = min(uio->uio_resid, BUFSIZE); - uiomove(sc->sc_buffer, count, uio); + error = uiomove(sc->sc_buffer, count, uio); + if (error) { + IIC_UNLOCK(sc); + return (error); + } error = iicbus_block_write(device_get_parent(iicdev), sc->sc_addr, sc->sc_buffer, count, &sent); |