http://issues.apache.org/bugzilla/show_bug.cgi?id=42648
git-svn-id: https://svn.apache.org/repos/asf/tomcat/tc6.0.x/trunk@546955
13f79535-47bb-0310-9956-
ffa450edef68
// loop forever waiting for work to do
public synchronized void run() {
- if ( (getOptions() & OPTION_DIRECT_BUFFER) == OPTION_DIRECT_BUFFER ) {
- buffer = ByteBuffer.allocateDirect(getRxBufSize());
- }else {
- buffer = ByteBuffer.allocate (getRxBufSize());
+ if ( buffer == null ) {
+ if ( (getOptions() & OPTION_DIRECT_BUFFER) == OPTION_DIRECT_BUFFER) {
+ buffer = ByteBuffer.allocateDirect(getRxBufSize());
+ } else {
+ buffer = ByteBuffer.allocate(getRxBufSize());
+ }
+ } else {
+ buffer.clear();
}
-
if (key == null) {
return; // just in case
}