On Sun, Feb 22, 2009 at 11:47:15PM -0500, Paul O'Keefe wrote:
> where is the check to make sure that ret == data.GetSize()? What  
> happens if we have a short write. It looks like the decision was  
> already made earlier to fragment or not fragment the packet, but there  
> is no check here to make sure we wrote what we said we wanted to write.

Good question, but I didn't think that short writes were possible
via libusb.  Looking at the linux.c:usb_urb_transfer() function, there
is a loop that keeps going if bytesdone < size.  Of course there are other
conditions in that do/while loop, so maybe I misread.

Add an if statement and throw an exception if you get a short write...
that should find the problem pretty quick. :-)

- Chris


------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Barry-devel mailing list
Barry-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/barry-devel

Reply via email to