Program: 98580
Project: 98580
Buggy source:
@Override public void processQueue(){
  try {
    while (this.connected && this.in.ready()) {
      String line=this.in.readLine();
      IRCMessage message=new IRCMessage(line);
      RawMessageEvent event=new RawMessageEvent(message);
      if (BotAPI.eventBus.postEvent(event)) {
        BotAPI.console.log(Level.FINER,"String_Node_Str" + message.toString());
      }
      log.log(Level.INFO,"String_Node_Str" + line);
      this.lastRead=System.currentTimeMillis();
    }
  }
 catch (  IOException e) {
    throw new RuntimeException("String_Node_Str",e);
  }
  if (this.connected) {
    if (System.currentTimeMillis() - this.lastRead > 300000L) {
      this.disconnect("String_Node_Str");
      BotAPI.eventBus.postEvent(new ServerDisconnectedEvent(this));
      return;
    }
synchronized (this.sendQueue) {
      Iterator<String> iterator=this.sendQueue.iterator();
      long incremental=0L;
      while (iterator.hasNext()) {
        String command=iterator.next();
        this.out.println(command.trim());
        if (!command.startsWith("String_Node_Str") && !command.startsWith("String_Node_Str")) {
          BotAPI.console.log(Level.FINER,"String_Node_Str" + command);
        }
        log.log(Level.INFO,"String_Node_Str" + command);
        try {
          Thread.sleep(250L * incremental);
        }
 catch (        InterruptedException e) {
        }
        incremental++;
      }
      this.sendQueue.clear();
    }
  }
  if (this.shouldQuit) {
    try {
      Thread.sleep(1000L);
    }
 catch (    InterruptedException e) {
      e.printStackTrace();
    }
    BotAPI.console.shutdown();
  }
}

Fixed version (ground truth):
@Override public void processQueue(){
  try {
    while (this.connected && this.in.ready()) {
      String line=this.in.readLine();
      IRCMessage message=new IRCMessage(line);
      RawMessageEvent event=new RawMessageEvent(message);
      if (BotAPI.eventBus.postEvent(event)) {
        BotAPI.console.log(Level.FINER,"String_Node_Str" + message.toString());
      }
      log.log(Level.INFO,"String_Node_Str" + line);
      this.lastRead=System.currentTimeMillis();
    }
  }
 catch (  IOException e) {
    throw new RuntimeException("String_Node_Str",e);
  }
  if (this.connected) {
    if (System.currentTimeMillis() - this.lastRead > 300000L) {
      this.disconnect("String_Node_Str");
      BotAPI.eventBus.postEvent(new ServerDisconnectedEvent(this));
      return;
    }
synchronized (this.sendQueue) {
      Iterator<String> iterator=this.sendQueue.iterator();
      long incremental=0L;
      while (iterator.hasNext()) {
        String command=iterator.next();
        this.out.println(command.trim());
        if (!command.startsWith("String_Node_Str") && !command.startsWith("String_Node_Str")) {
          BotAPI.console.log(Level.FINER,"String_Node_Str" + command);
        }
        log.log(Level.INFO,"String_Node_Str" + command);
        try {
          Thread.sleep(250L * incremental);
        }
 catch (        InterruptedException e) {
        }
        incremental++;
        this.lastRead=System.currentTimeMillis();
      }
      this.sendQueue.clear();
    }
  }
  if (this.shouldQuit) {
    try {
      Thread.sleep(1000L);
    }
 catch (    InterruptedException e) {
      e.printStackTrace();
    }
    BotAPI.console.shutdown();
  }
}