Program: 154180
Project: 154180
Buggy source:
public static void getHotelPrices(List<Deal> deals){
  String wsReq=getPriceByHotelRequest(deals);
  Logger.debug("String_Node_Str" + wsReq);
  Document xml=prepareRequest(wsReq);
  if (xml != null) {
    if (xml.getElementsByTagName("String_Node_Str") != null) {
      int hotels=xml.getElementsByTagName("String_Node_Str").getLength();
      Logger.debug("String_Node_Str" + hotels);
      for (int i=0; i < hotels; i++) {
        String hotelCode=xml.getElementsByTagName("String_Node_Str").item(i).getTextContent();
        String priceString=xml.getElementsByTagName("String_Node_Str").item(i).getTextContent();
        String status=xml.getElementsByTagName("String_Node_Str").item(i).getTextContent();
        String regime=xml.getElementsByTagName("String_Node_Str").item(i).getTextContent();
        String lin=xml.getElementsByTagName("String_Node_Str").item(i).getTextContent();
        String pdr=xml.getElementsByTagName("String_Node_Str").item(i).getTextContent();
        if (status.equals("String_Node_Str") && regime.equals("String_Node_Str") && pdr.equals("String_Node_Str")) {
          Logger.debug("String_Node_Str" + hotelCode + "String_Node_Str"+ priceString);
          Float price=Float.parseFloat(priceString);
          int quantity=1;
          Deal.updateDealByCode(hotelCode,quantity,price,lin);
        }
 else {
          Logger.debug("String_Node_Str");
        }
      }
    }
  }
 else {
    Logger.error("String_Node_Str");
  }
}

Fixed version (ground truth):
public static void getHotelPrices(List<Deal> deals){
  String wsReq=getPriceByHotelRequest(deals);
  Logger.debug("String_Node_Str" + wsReq);
  Document xml=prepareRequest(wsReq);
  if (xml != null) {
    if (xml.getElementsByTagName("String_Node_Str") != null) {
      int hotels=xml.getElementsByTagName("String_Node_Str").getLength();
      Logger.debug("String_Node_Str" + hotels);
      for (int i=0; i < hotels; i++) {
        String hotelCode=xml.getElementsByTagName("String_Node_Str").item(i).getTextContent();
        String priceString=xml.getElementsByTagName("String_Node_Str").item(i).getTextContent();
        String status=xml.getElementsByTagName("String_Node_Str").item(i).getTextContent();
        String regime=xml.getElementsByTagName("String_Node_Str").item(i).getTextContent();
        String lin=xml.getElementsByTagName("String_Node_Str").item(i).getTextContent();
        String pdr=xml.getElementsByTagName("String_Node_Str").item(i).getTextContent();
        if (status.equals("String_Node_Str") && regime.equals("String_Node_Str") && pdr.equals("String_Node_Str")) {
          Logger.debug("String_Node_Str" + hotelCode + "String_Node_Str"+ priceString);
          Float price=Float.parseFloat(priceString);
          BigDecimal priceRounded=new BigDecimal(price);
          priceRounded=priceRounded.setScale(0,RoundingMode.UP);
          price=priceRounded.floatValue();
          int quantity=1;
          Deal.updateDealByCode(hotelCode,quantity,price,lin);
        }
 else {
          Float price=new Float(0);
          int quantity=0;
          Deal.updateDealByCode(hotelCode,quantity,price,lin);
          Logger.debug("String_Node_Str");
        }
      }
    }
  }
 else {
    Logger.error("String_Node_Str");
  }
}