import io.undertow.UndertowMessages;
<BUG>public abstract class DetachableStreamSourceChannel implements StreamSourceChannel {
protected final StreamSourceChannel delegate;</BUG>
protected ChannelListener.SimpleSetter<DetachableStreamSourceChannel> readSetter;
protected ChannelListener.SimpleSetter<DetachableStreamSourceChannel> closeSetter;
<BUG>private boolean minusOneReturned = false;</BUG>
public DetachableStreamSourceChannel(final StreamSourceChannel delegate) {
this.delegate = delegate;
<BUG>if(isFinished()) {
minusOneReturned = true;
}</BUG>
}

import io.undertow.UndertowMessages;
public abstract class DetachableStreamSourceChannel implements StreamSourceChannel{
protected final StreamSourceChannel delegate;
protected ChannelListener.SimpleSetter<DetachableStreamSourceChannel> readSetter;
protected ChannelListener.SimpleSetter<DetachableStreamSourceChannel> closeSetter;
public DetachableStreamSourceChannel(final StreamSourceChannel delegate) {
this.delegate = delegate;
}
