From 7e4c56ed992fe3bf715b82b1e3e8fda2e6772688 Mon Sep 17 00:00:00 2001 From: tromey Date: Fri, 6 Jan 2006 18:57:36 +0000 Subject: 2005-12-26 Anthony Green * gnu/java/nio/SocketChannelImpl.java (read): Compute the right amount of data to read (dst.remaining()). * gnu/java/nio/DatagramChannelImpl.java (receive): Ditto. 2005-11-11 Mark Wielaard Reported by john.zigman@anu.edu.au as bug #24608. * gnu/java/nio/SocketChannelImpl.java (read): Put readBytes in destination ByteBuffer when it doesn't have an array instead of len bytes. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109422 138bc75d-0d04-0410-961f-82ee72b054a4 --- libjava/gnu/java/nio/DatagramChannelImpl.java | 4 ++-- libjava/gnu/java/nio/SocketChannelImpl.java | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) (limited to 'libjava/gnu/java') diff --git a/libjava/gnu/java/nio/DatagramChannelImpl.java b/libjava/gnu/java/nio/DatagramChannelImpl.java index cb2a607934e..de1d2e6a341 100644 --- a/libjava/gnu/java/nio/DatagramChannelImpl.java +++ b/libjava/gnu/java/nio/DatagramChannelImpl.java @@ -1,5 +1,5 @@ /* DatagramChannelImpl.java -- - Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2006 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -206,7 +206,7 @@ public final class DatagramChannelImpl extends DatagramChannel try { DatagramPacket packet; - int len = dst.capacity() - dst.position(); + int len = dst.remaining(); if (dst.hasArray()) { diff --git a/libjava/gnu/java/nio/SocketChannelImpl.java b/libjava/gnu/java/nio/SocketChannelImpl.java index 8ca2b575b41..cda86e80723 100644 --- a/libjava/gnu/java/nio/SocketChannelImpl.java +++ b/libjava/gnu/java/nio/SocketChannelImpl.java @@ -1,5 +1,5 @@ /* SocketChannelImpl.java -- - Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2006 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -225,7 +225,7 @@ public final class SocketChannelImpl extends SocketChannel int offset = 0; InputStream input = socket.getInputStream(); int available = input.available(); - int len = dst.capacity() - dst.position(); + int len = dst.remaining(); if ((! isBlocking()) && available == 0) return 0; @@ -263,7 +263,7 @@ public final class SocketChannelImpl extends SocketChannel } else { - dst.put (data, offset, len); + dst.put (data, offset, readBytes); } return readBytes; -- cgit v1.2.3