// interrupt without throwing if bytes got transferred. Compensate,
// so we can clean up. Bug 6979009,
// http://bugs.sun.com/view_bug.do?bug_id=6979009
if (Thread.currentThread().isInterrupted() &&
!dstChannel.isOpen()) {
throw new ClosedByInterruptException();
}
}
}