From 72d020ce54298576fac0bcb88ec95c04f1af97dd Mon Sep 17 00:00:00 2001 From: schulz Date: Thu, 23 Mar 2017 09:02:48 +0000 Subject: [PATCH] make sure the bouncing buffer has a length git-svn-id: https://svn.aros.org/svn/aros/trunk/AROS@54247 fb15a70f-31f2-0310-bbcc-cdcc74a49acc --- rom/usb/pciusb/buffer.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/rom/usb/pciusb/buffer.c b/rom/usb/pciusb/buffer.c index 8726bcd7f7..105fa05187 100644 --- a/rom/usb/pciusb/buffer.c +++ b/rom/usb/pciusb/buffer.c @@ -1,3 +1,4 @@ +#include #include #include #include @@ -8,13 +9,13 @@ APTR usbGetBuffer(APTR data, ULONG len, UWORD dir) { APTR ret = data; - if (((IPTR)data + len - 1) >> 32) + if (len && (((IPTR)data + len - 1) >> 32) != 0) { ret = AllocVec(len, MEMF_31BIT|MEMF_PUBLIC); if (ret && (dir == UHDIR_OUT)) CopyMem(data, ret, len); - } + } return ret; } @@ -23,8 +24,8 @@ void usbReleaseBuffer(APTR buffer, APTR data, ULONG len, UWORD dir) { if (buffer && (buffer != data)) { - if (len && (dir == UHDIR_IN)) - CopyMem(buffer, data, len); + if (len && (dir == UHDIR_IN)) + CopyMem(buffer, data, len); FreeVec(buffer); } -- 2.11.4.GIT