You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apr.apache.org by bj...@apache.org on 2006/01/05 04:09:40 UTC
svn commit: r366064 - /apr/apr/branches/1.2.x/network_io/os2/sendrecv.c
Author: bjh
Date: Wed Jan 4 19:09:32 2006
New Revision: 366064
URL: http://svn.apache.org/viewcvs?rev=366064&view=rev
Log:
The OS/2 send() function returns EINVAL if the data size is > 64k so limit the
send size to 64k. As any call to apr_socket_send() must handle partial sends
anyway, this will be treated just like any other partial send.
This was occurring when svnserve was sending a large file.
Backport from trunk of r366063.
Modified:
apr/apr/branches/1.2.x/network_io/os2/sendrecv.c
Modified: apr/apr/branches/1.2.x/network_io/os2/sendrecv.c
URL: http://svn.apache.org/viewcvs/apr/apr/branches/1.2.x/network_io/os2/sendrecv.c?rev=366064&r1=366063&r2=366064&view=diff
==============================================================================
--- apr/apr/branches/1.2.x/network_io/os2/sendrecv.c (original)
+++ apr/apr/branches/1.2.x/network_io/os2/sendrecv.c Wed Jan 4 19:09:32 2006
@@ -27,6 +27,10 @@
apr_ssize_t rv;
int fds, err = 0;
+ if (*len > 65536) {
+ *len = 65536;
+ }
+
do {
if (!sock->nonblock || err == SOCEWOULDBLOCK) {
fds = sock->socketdes;