Program: 45414
Project: 45414
Buggy source:
private void findConcurrentBattles(Clan clan){
  HttpGet getConcurrentBattles=null;
  getConcurrentBattles=new HttpGet("String_Node_Str" + clan.getId() + "String_Node_Str");
  getConcurrentBattles.setHeader("String_Node_Str","String_Node_Str");
  getConcurrentBattles.setHeader("String_Node_Str","String_Node_Str");
  try {
    HttpResponse response=httpClient.execute(getConcurrentBattles);
    HttpEntity entity=response.getEntity();
    BufferedInputStream bis=new BufferedInputStream(entity.getContent());
    int length=0;
    byte[] buff=new byte[1024];
    StringBuffer sb=new StringBuffer(1024);
    while ((length=bis.read(buff)) != -1) {
      sb.append(new String(buff,0,length,"String_Node_Str"));
    }
    String result=sb.toString();
    log.debug(result);
    String provinceTagStart="String_Node_Str";
    String provinceTagEnd="String_Node_Str";
    int tagStart=0;
    while ((tagStart=result.indexOf(provinceTagStart,tagStart)) != -1) {
      int tagEnd=result.indexOf(provinceTagEnd,tagStart + provinceTagStart.length());
      String province=result.substring(tagStart + provinceTagStart.length(),tagEnd);
      String idTagStart="String_Node_Str";
      String idTagEnd="String_Node_Str";
      int idStartIndex=result.indexOf(idTagStart,tagEnd);
      int idEndIndex=result.indexOf(idTagEnd,idStartIndex + idTagStart.length());
      String id=result.substring(idStartIndex + idTagStart.length(),idEndIndex);
      String timeTagStart="String_Node_Str";
      String timeTagEnd="String_Node_Str";
      int timeStartIndex=result.indexOf(timeTagStart,tagEnd);
      int timeEndIndex=result.indexOf(timeTagEnd,timeStartIndex + timeTagStart.length());
      String time=result.substring(timeStartIndex + timeTagStart.length(),timeEndIndex);
      Battle battle=new Battle();
      battle.setProvince(province);
      battle.setDate(new Date((Double.valueOf(time)).longValue() * 1000));
      battle.setId(id);
      clan.getConcurrentBattles().add(battle);
      tagStart++;
    }
  }
 catch (  ClientProtocolException e) {
    log.error(e.getMessage(),e);
  }
catch (  IOException e) {
    log.error(e.getMessage(),e);
  }
}

Fixed version (ground truth):
private void findConcurrentBattles(Clan clan){
  HttpGet getConcurrentBattles=null;
  getConcurrentBattles=new HttpGet("String_Node_Str" + clan.getId() + "String_Node_Str");
  getConcurrentBattles.setHeader("String_Node_Str","String_Node_Str");
  getConcurrentBattles.setHeader("String_Node_Str","String_Node_Str");
  try {
    HttpResponse response=httpClient.execute(getConcurrentBattles);
    HttpEntity entity=response.getEntity();
    BufferedInputStream bis=new BufferedInputStream(entity.getContent());
    int length=0;
    byte[] buff=new byte[1024];
    StringBuffer sb=new StringBuffer(1024);
    while ((length=bis.read(buff)) != -1) {
      sb.append(new String(buff,0,length,"String_Node_Str"));
    }
    String result=sb.toString();
    log.debug(result);
    String provinceTagStart="String_Node_Str";
    String provinceTagEnd="String_Node_Str";
    int tagStart=0;
    while ((tagStart=result.indexOf(provinceTagStart,tagStart)) != -1) {
      int tagEnd=result.indexOf(provinceTagEnd,tagStart + provinceTagStart.length());
      String province=result.substring(tagStart + provinceTagStart.length(),tagEnd);
      String idTagStart="String_Node_Str";
      String idTagEnd="String_Node_Str";
      int idStartIndex=result.indexOf(idTagStart,tagEnd);
      int idEndIndex=result.indexOf(idTagEnd,idStartIndex + idTagStart.length());
      String id=result.substring(idStartIndex + idTagStart.length(),idEndIndex);
      String timeTagStart="String_Node_Str";
      String timeTagEnd="String_Node_Str";
      int timeStartIndex=result.indexOf(timeTagStart,tagEnd);
      int timeEndIndex=result.indexOf(timeTagEnd,timeStartIndex + timeTagStart.length());
      String time=result.substring(timeStartIndex + timeTagStart.length(),timeEndIndex);
      Battle battle=new Battle();
      battle.setProvince(province);
      if (Integer.valueOf(time).equals(0)) {
        LandingZone landingZone=Constants.createInstance().landingZoneMap.get(battle.getProvince());
        if (landingZone != null) {
          String offset=System.getProperty("String_Node_Str","String_Node_Str");
          int gmt_offset=Integer.valueOf(offset);
          Calendar cal=Calendar.getInstance();
          cal.set(Calendar.HOUR_OF_DAY,Integer.valueOf(landingZone.getBattleStart()).intValue() + gmt_offset);
          cal.set(Calendar.MINUTE,0);
          cal.set(Calendar.SECOND,0);
          battle.setDate(cal.getTime());
        }
      }
 else {
        battle.setDate(new Date((Double.valueOf(time)).longValue() * 1000));
      }
      battle.setId(id);
      clan.getConcurrentBattles().add(battle);
      tagStart++;
    }
  }
 catch (  ClientProtocolException e) {
    log.error(e.getMessage(),e);
  }
catch (  IOException e) {
    log.error(e.getMessage(),e);
  }
}