Program: 93584
Project: 93584
Buggy source:
/** 
 * @param exchange
 * @param context
 * @param embeddedData
 * @param size
 * @throws IllegalQueryParamenterException
 */
static public void sendHal(HttpServerExchange exchange,RequestContext context,List<DBObject> embeddedData,long size) throws IllegalQueryParamenterException {
  String requestPath=URLUtilis.removeTrailingSlashes(exchange.getRequestPath());
  String queryString=exchange.getQueryString() == null || exchange.getQueryString().isEmpty() ? "String_Node_Str" : "String_Node_Str" + URLUtilis.decodeQueryString(exchange.getQueryString());
  Representation rep=new Representation(requestPath + queryString);
  rep.addProperty("String_Node_Str",context.getType().name());
  DBObject dbProps=context.getDbProps();
  if (dbProps != null) {
    HALUtils.addData(rep,dbProps);
  }
  if (size >= 0) {
    float _size=size + 0f;
    float _pagesize=context.getPagesize() + 0f;
    rep.addProperty("String_Node_Str",size);
    rep.addProperty("String_Node_Str",Math.max(1,Math.round(Math.ceil(_size / _pagesize))));
  }
  if (embeddedData != null) {
    long count=embeddedData.stream().filter((props) -> props.keySet().stream().anyMatch((k) -> k.equals("String_Node_Str") || k.equals("String_Node_Str"))).count();
    rep.addProperty("String_Node_Str",count);
    if (!embeddedData.isEmpty()) {
      embeddedCollections(embeddedData,requestPath,rep);
    }
  }
  TreeMap<String,String> links;
  links=HALUtils.getPaginationLinks(exchange,context,size);
  if (links != null) {
    links.keySet().stream().forEach((k) -> {
      rep.addLink(new Link(k,links.get(k)));
    }
);
  }
  if (context.isParentAccessible()) {
    rep.addLink(new Link("String_Node_Str",URLUtilis.getPerentPath(requestPath)));
  }
  rep.addLink(new Link("String_Node_Str",requestPath + "String_Node_Str",true));
  rep.addLink(new Link("String_Node_Str","String_Node_Str",Configuration.RESTHEART_ONLINE_DOC_URL + "String_Node_Str",false),true);
  ResponseHelper.injectWarnings(rep,exchange,context);
  exchange.getResponseHeaders().put(Headers.CONTENT_TYPE,HAL_JSON_MEDIA_TYPE);
  exchange.getResponseSender().send(rep.toString());
}

Fixed version (ground truth):
/** 
 * @param exchange
 * @param context
 * @param embeddedData
 * @param size
 * @throws IllegalQueryParamenterException
 */
static public void sendHal(HttpServerExchange exchange,RequestContext context,List<DBObject> embeddedData,long size) throws IllegalQueryParamenterException {
  String requestPath=URLUtilis.removeTrailingSlashes(exchange.getRequestPath());
  String queryString=exchange.getQueryString() == null || exchange.getQueryString().isEmpty() ? "String_Node_Str" : "String_Node_Str" + URLUtilis.decodeQueryString(exchange.getQueryString());
  Representation rep=new Representation(requestPath + queryString);
  rep.addProperty("String_Node_Str",context.getType().name());
  DBObject dbProps=context.getDbProps();
  if (dbProps != null) {
    rep.addProperties(dbProps);
  }
  if (size >= 0) {
    float _size=size + 0f;
    float _pagesize=context.getPagesize() + 0f;
    rep.addProperty("String_Node_Str",size);
    rep.addProperty("String_Node_Str",Math.max(1,Math.round(Math.ceil(_size / _pagesize))));
  }
  if (embeddedData != null) {
    long count=embeddedData.stream().filter((props) -> props.keySet().stream().anyMatch((k) -> k.equals("String_Node_Str") || k.equals("String_Node_Str"))).count();
    rep.addProperty("String_Node_Str",count);
    if (!embeddedData.isEmpty()) {
      embeddedCollections(embeddedData,requestPath,rep);
    }
  }
  TreeMap<String,String> links;
  links=HALUtils.getPaginationLinks(exchange,context,size);
  if (links != null) {
    links.keySet().stream().forEach((k) -> {
      rep.addLink(new Link(k,links.get(k)));
    }
);
  }
  if (context.isParentAccessible()) {
    rep.addLink(new Link("String_Node_Str",URLUtilis.getPerentPath(requestPath)));
  }
  rep.addLink(new Link("String_Node_Str",requestPath + "String_Node_Str",true));
  rep.addLink(new Link("String_Node_Str","String_Node_Str",Configuration.RESTHEART_ONLINE_DOC_URL + "String_Node_Str",false),true);
  ResponseHelper.injectWarnings(rep,exchange,context);
  exchange.getResponseHeaders().put(Headers.CONTENT_TYPE,HAL_JSON_MEDIA_TYPE);
  exchange.getResponseSender().send(rep.toString());
}