summaryrefslogtreecommitdiff
path: root/external/ikvm/openjdk/java/net/SocketOutputStream.java
diff options
context:
space:
mode:
authorJo Shields <directhex@apebox.org>2014-02-19 22:12:43 +0000
committerJo Shields <directhex@apebox.org>2014-02-19 22:12:43 +0000
commit9972bf87b4f27d9c8f358ef8414ac1ab957a2f0f (patch)
tree5bb230c1d698659115f918e243c1d4b0aa4c7f51 /external/ikvm/openjdk/java/net/SocketOutputStream.java
parentd0a215f5626219ff7927f576588a777e5331c7be (diff)
downloadmono-upstream/3.2.8+dfsg.tar.gz
Imported Upstream version 3.2.8+dfsgupstream/3.2.8+dfsg
Diffstat (limited to 'external/ikvm/openjdk/java/net/SocketOutputStream.java')
-rw-r--r--external/ikvm/openjdk/java/net/SocketOutputStream.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/external/ikvm/openjdk/java/net/SocketOutputStream.java b/external/ikvm/openjdk/java/net/SocketOutputStream.java
index 9e6be018d9..fd6e2c4fb9 100644
--- a/external/ikvm/openjdk/java/net/SocketOutputStream.java
+++ b/external/ikvm/openjdk/java/net/SocketOutputStream.java
@@ -32,6 +32,8 @@ import java.nio.channels.FileChannel;
import static ikvm.internal.Winsock.*;
import static java.net.net_util_md.*;
+import sun.misc.IoTrace;
+
/**
* This stream extends FileOutputStream to implement a
* SocketOutputStream. Note that this class should <b>NOT</b> be
@@ -39,7 +41,6 @@ import static java.net.net_util_md.*;
*
* @author Jonathan Payne
* @author Arthur van Hoff
- * @author Jeroen Frijters
*/
class SocketOutputStream extends FileOutputStream
{
@@ -176,9 +177,12 @@ class SocketOutputStream extends FileOutputStream
throw new ArrayIndexOutOfBoundsException();
}
+ Object traceContext = IoTrace.socketWriteBegin();
+ int bytesWritten = 0;
FileDescriptor fd = impl.acquireFD();
try {
socketWrite0(fd, b, off, len);
+ bytesWritten = len;
} catch (SocketException se) {
if (se instanceof sun.net.ConnectionResetException) {
impl.setConnectionResetPending();
@@ -191,6 +195,7 @@ class SocketOutputStream extends FileOutputStream
}
} finally {
impl.releaseFD();
+ IoTrace.socketWriteEnd(traceContext, impl.address, impl.port, bytesWritten);
}
}