summaryrefslogtreecommitdiff
path: root/libgphoto2_port/vusb
diff options
context:
space:
mode:
authorMarcus Meissner <marcus@linux-n4oc.site>2016-12-09 19:47:55 +0100
committerMarcus Meissner <marcus@linux-n4oc.site>2016-12-09 19:47:55 +0100
commit9c28303a2b9f5415b9695d967092a03226764c01 (patch)
tree979dfae98e915aba376da4e97a90de34007b8287 /libgphoto2_port/vusb
parent212d6179fbd6b01ae2c089385f4ba9122da70f42 (diff)
downloadlibgphoto2-9c28303a2b9f5415b9695d967092a03226764c01.tar.gz
handle short reads
Diffstat (limited to 'libgphoto2_port/vusb')
-rw-r--r--libgphoto2_port/vusb/vcamera.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libgphoto2_port/vusb/vcamera.c b/libgphoto2_port/vusb/vcamera.c
index c452e1143..360f4e6d8 100644
--- a/libgphoto2_port/vusb/vcamera.c
+++ b/libgphoto2_port/vusb/vcamera.c
@@ -1805,6 +1805,9 @@ vcam_read(vcamera*cam, int ep, unsigned char *data, int bytes) {
cam->fuzzpending = toread - bytes;
toread = bytes;
}
+ if (toread <= 4)
+ return toread;
+
toread -= 4;
hasread = fread(data + 4, 1, toread, cam->fuzzf);