Giampaolo Rodola' added the comment: > Instead of returning [...] you could specify `no_fallback=False` that > could be set to `True` to assert that the fallback is not used > [...] and return the number of bytes sent.
Good idea, thanks, that is much better indeed. Updated patch is in attachment. > [...] file.tell() may be changed by something else that uses > the same file descriptor? What happens if the file grows? I would say that is a use case we should explicitly not support as it probably implies you're doing something you're not supposed to. > If possible always include the number of bytes sent in any error that is > raised. That's similar to my recent (rejected) proposal for socket.sendall(): https://mail.python.org/pipermail/python-ideas/2014-April/027689.html IMO the patch as it stands is fine as you can determine the number of bytes which were sent either by using the function return value or file.tell() (in case of error). Also, updating the file offset on exit makes the sendfile() implementation behave exactly like send(). ---------- Added file: http://bugs.python.org/file34997/socket-sendfile4.patch _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue17552> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com