diff options
Diffstat (limited to 'external/ikvm/openjdk/java/net/SocketOutputStream.java')
-rw-r--r-- | external/ikvm/openjdk/java/net/SocketOutputStream.java | 7 |
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); } } |