Program: 153927
Project: 153927
Buggy source:
public WebSocketBase(String url,WebSocketHandler handler,String... protocols) throws URISyntaxException, IOException {
  this.protocols=protocols;
  this.handler=handler;
  this.origin=System.getProperty("String_Node_Str");
  int downstreamBufferSize=Integer.getInteger("String_Node_Str",8192);
  this.downstreamBuffer=ByteBuffer.allocate(downstreamBufferSize);
  this.packatdumpMode=Integer.getInteger("String_Node_Str",0);
  parseUrl(url);
  this.pipeline=new WebSocketPipeline();
  this.pipeline.addStreamHandler(new StreamHandlerAdapter(){
    public void nextUpstreamHandler(    WebSocket ws,    ByteBuffer buffer,    Frame frame,    StreamHandlerChain chain) throws WebSocketException {
      try {
        upstreamQueue.put(buffer);
        selector.wakeup();
      }
 catch (      InterruptedException e) {
        throw new WebSocketException(3011,e);
      }
    }
    public void nextHandshakeUpstreamHandler(    WebSocket ws,    ByteBuffer buffer,    StreamHandlerChain chain) throws WebSocketException {
      try {
        upstreamQueue.put(buffer);
      }
 catch (      InterruptedException e) {
        throw new WebSocketException(3012,e);
      }
    }
  }
);
  if (packatdumpMode > 0) {
    this.pipeline.addStreamHandler(new PacketDumpStreamHandler(packatdumpMode));
  }
  initializePipeline(pipeline);
  this.pipeline.addStreamHandler(new StreamHandlerAdapter(){
    public void nextDownstreamHandler(    WebSocket ws,    ByteBuffer buffer,    Frame frame,    StreamHandlerChain chain) throws WebSocketException {
      WebSocketBase.this.handler.onMessage(ws,frame);
    }
    public void nextHandshakeDownstreamHandler(    WebSocket ws,    ByteBuffer buffer,    StreamHandlerChain chain) throws WebSocketException {
      responseHeaderMap=getHandshake().getResponseHeaderMap();
      responseStatus=getHandshake().getResponseStatus();
      transitionTo(State.WAIT);
      WebSocketBase.this.handler.onOpen(WebSocketBase.this);
    }
  }
);
}

Fixed version (ground truth):
public WebSocketBase(String url,WebSocketHandler handler,String... protocols) throws WebSocketException {
  this.protocols=protocols;
  this.handler=handler;
  this.origin=System.getProperty("String_Node_Str");
  int downstreamBufferSize=Integer.getInteger("String_Node_Str",0x7FFF);
  int upstreamQueueSize=Integer.getInteger("String_Node_Str",500);
  this.upstreamQueue=new LinkedBlockingQueue<ByteBuffer>(upstreamQueueSize);
  this.downstreamBuffer=ByteBuffer.allocate(downstreamBufferSize);
  int packatdumpMode=Integer.getInteger("String_Node_Str",0);
  parseUrl(url);
  this.pipeline=new WebSocketPipeline();
  this.pipeline.addStreamHandler(new StreamHandlerAdapter(){
    public void nextUpstreamHandler(    WebSocket ws,    ByteBuffer buffer,    Frame frame,    StreamHandlerChain chain) throws WebSocketException {
      if (!upstreamQueue.offer(buffer)) {
        throw new WebSocketException(3030,"String_Node_Str");
      }
      selector.wakeup();
    }
    public void nextHandshakeUpstreamHandler(    WebSocket ws,    ByteBuffer buffer,    StreamHandlerChain chain) throws WebSocketException {
      if (!upstreamQueue.offer(buffer)) {
        throw new WebSocketException(3031,"String_Node_Str");
      }
    }
  }
);
  if (packatdumpMode > 0) {
    this.pipeline.addStreamHandler(new PacketDumpStreamHandler(packatdumpMode));
  }
  initializePipeline(pipeline);
  this.pipeline.addStreamHandler(new StreamHandlerAdapter(){
    public void nextDownstreamHandler(    WebSocket ws,    ByteBuffer buffer,    Frame frame,    StreamHandlerChain chain) throws WebSocketException {
      WebSocketBase.this.handler.onMessage(ws,frame);
    }
    public void nextHandshakeDownstreamHandler(    WebSocket ws,    ByteBuffer buffer,    StreamHandlerChain chain) throws WebSocketException {
      responseHeaderMap=getHandshake().getResponseHeaderMap();
      responseStatus=getHandshake().getResponseStatus();
      transitionTo(State.WAIT);
      WebSocketBase.this.handler.onOpen(WebSocketBase.this);
    }
  }
);
}