summaryrefslogtreecommitdiffstats
path: root/src/org/apache/http/impl/io/SocketOutputBuffer.java
diff options
context:
space:
mode:
authorElliott Hughes <enh@google.com>2011-05-10 11:16:00 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2011-05-10 11:16:00 -0700
commit022f425d731baea38065019f4b9f61e1e330aaa4 (patch)
tree6fd7c2e2b048c2152daf8497ddeaf1d6c7e1ea61 /src/org/apache/http/impl/io/SocketOutputBuffer.java
parent81d5133bb7843bc65c5321e53f5017ce2e4d13af (diff)
parente30b5b55806b31d1a61e2885b854dd7b8da1a07a (diff)
downloadandroid_external_apache-http-022f425d731baea38065019f4b9f61e1e330aaa4.tar.gz
android_external_apache-http-022f425d731baea38065019f4b9f61e1e330aaa4.tar.bz2
android_external_apache-http-022f425d731baea38065019f4b9f61e1e330aaa4.zip
am e30b5b55: Make Apache HttpClient play nice with large kernel socket buffers.
* commit 'e30b5b55806b31d1a61e2885b854dd7b8da1a07a': Make Apache HttpClient play nice with large kernel socket buffers.
Diffstat (limited to 'src/org/apache/http/impl/io/SocketOutputBuffer.java')
-rw-r--r--src/org/apache/http/impl/io/SocketOutputBuffer.java31
1 files changed, 10 insertions, 21 deletions
diff --git a/src/org/apache/http/impl/io/SocketOutputBuffer.java b/src/org/apache/http/impl/io/SocketOutputBuffer.java
index efb91e9..c1d3b49 100644
--- a/src/org/apache/http/impl/io/SocketOutputBuffer.java
+++ b/src/org/apache/http/impl/io/SocketOutputBuffer.java
@@ -43,37 +43,26 @@ import org.apache.http.params.HttpParams;
* @author <a href="mailto:oleg at ural.ru">Oleg Kalnichevski</a>
*
* @version $Revision: 560358 $
- *
+ *
* @since 4.0
*/
public class SocketOutputBuffer extends AbstractSessionOutputBuffer {
public SocketOutputBuffer(
- final Socket socket,
+ final Socket socket,
int buffersize,
final HttpParams params) throws IOException {
super();
if (socket == null) {
throw new IllegalArgumentException("Socket may not be null");
}
- if (buffersize < 0) {
- buffersize = socket.getReceiveBufferSize();
-// BEGIN android-changed
- // Workaround for http://b/issue?id=1083103.
- if (buffersize > 8096) {
- buffersize = 8096;
- }
-// END android-changed
- }
- if (buffersize < 1024) {
- buffersize = 1024;
- }
-
-// BEGIN android-changed
- socket.setSendBufferSize(buffersize * 3);
-// END andrdoid-changed
-
- init(socket.getOutputStream(), buffersize, params);
+ // BEGIN android-changed
+ // Workaround for http://b/1083103 and http://b/3514259. We take
+ // 'buffersize' as a hint in the weakest sense, and always use
+ // an 8KiB heap buffer and leave the kernel buffer size alone,
+ // trusting the system to have set a network-appropriate default.
+ init(socket.getOutputStream(), 8192, params);
+ // END android-changed
}
-
+
}