Program: 43124
Project: 43124
Buggy source:
public void run(){
  String sql="String_Node_Str";
  List<String> args=new ArrayList<String>();
  if (dateFrom != null)   args.add("String_Node_Str" + dateFrom + "String_Node_Str");
  if (dateTo != null)   args.add("String_Node_Str" + dateTo + "String_Node_Str");
  if (players != null) {
    for (int i=0; i < players.length; i++)     players[i]="String_Node_Str" + players[i].toLowerCase() + "String_Node_Str";
    args.add("String_Node_Str" + Util.join(Arrays.asList(players),"String_Node_Str") + "String_Node_Str");
  }
  if (actions != null)   args.add("String_Node_Str" + Util.join(Arrays.asList(actions),"String_Node_Str") + "String_Node_Str");
  if (loc != null) {
    int range=5;
    if (radius != null)     range=radius;
    args.add("String_Node_Str" + (loc.getX() - range) + "String_Node_Str"+ (loc.getX() + range)+ "String_Node_Str");
    args.add("String_Node_Str" + (loc.getY() - range) + "String_Node_Str"+ (loc.getY() + range)+ "String_Node_Str");
    args.add("String_Node_Str" + (loc.getZ() - range) + "String_Node_Str"+ (loc.getZ() + range)+ "String_Node_Str");
  }
  if (worlds != null) {
    for (int i=0; i < worlds.length; i++)     worlds[i]="String_Node_Str" + worlds[i].toLowerCase() + "String_Node_Str";
    args.add("String_Node_Str" + Util.join(Arrays.asList(worlds),"String_Node_Str") + "String_Node_Str");
  }
  if (filters != null) {
    for (int i=0; i < filters.length; i++)     filters[i]="String_Node_Str" + filters[i] + "String_Node_Str";
    args.add("String_Node_Str" + Util.join(Arrays.asList(filters),"String_Node_Str") + "String_Node_Str");
  }
  if (args.size() == 0)   Util.sendMessage(sender,"String_Node_Str");
  sql+=Util.join(args,"String_Node_Str");
  List<SqlRow> results=DataManager.db.createSqlQuery(sql).findList();
  if (results == null || results.size() == 0)   Util.sendMessage(sender,"String_Node_Str");
  DataManager.searchResults.put(sender,results);
  DataManager.displayPage(sender,1);
}

Fixed version (ground truth):
public void run(){
  String sql="String_Node_Str";
  List<String> args=new ArrayList<String>();
  if (dateFrom != null)   args.add("String_Node_Str" + dateFrom + "String_Node_Str");
  if (dateTo != null)   args.add("String_Node_Str" + dateTo + "String_Node_Str");
  if (players != null) {
    for (int i=0; i < players.length; i++)     players[i]="String_Node_Str" + players[i].toLowerCase() + "String_Node_Str";
    args.add("String_Node_Str" + Util.join(Arrays.asList(players),"String_Node_Str") + "String_Node_Str");
  }
  if (actions.size() == 0) {
    actions=new ArrayList<Integer>();
    for (    DataType type : DataType.values())     actions.add(type.getId());
  }
  List<Integer> acs=new ArrayList<Integer>();
  for (  int act : actions.toArray(new Integer[actions.size()]))   if (Permission.searchType(sender,DataType.fromId(act).getConfigName()))   acs.add(act);
  args.add("String_Node_Str" + Util.join(acs,"String_Node_Str") + "String_Node_Str");
  if (loc != null) {
    int range=5;
    if (radius != null)     range=radius;
    args.add("String_Node_Str" + (loc.getX() - range) + "String_Node_Str"+ (loc.getX() + range)+ "String_Node_Str");
    args.add("String_Node_Str" + (loc.getY() - range) + "String_Node_Str"+ (loc.getY() + range)+ "String_Node_Str");
    args.add("String_Node_Str" + (loc.getZ() - range) + "String_Node_Str"+ (loc.getZ() + range)+ "String_Node_Str");
  }
  if (worlds != null) {
    for (int i=0; i < worlds.length; i++)     worlds[i]="String_Node_Str" + worlds[i].toLowerCase() + "String_Node_Str";
    args.add("String_Node_Str" + Util.join(Arrays.asList(worlds),"String_Node_Str") + "String_Node_Str");
  }
  if (filters != null) {
    for (int i=0; i < filters.length; i++)     filters[i]="String_Node_Str" + filters[i] + "String_Node_Str";
    args.add("String_Node_Str" + Util.join(Arrays.asList(filters),"String_Node_Str") + "String_Node_Str");
  }
  if (args.size() == 0)   Util.sendMessage(sender,"String_Node_Str");
  sql+=Util.join(args,"String_Node_Str");
  List<SqlRow> results=DataManager.db.createSqlQuery(sql).findList();
  if (results == null || results.size() == 0)   Util.sendMessage(sender,"String_Node_Str");
  DataManager.searchResults.put(sender,results);
  DataManager.displayPage(sender,1);
}