Program: 69315
Project: 69315
Buggy source:
/** 
 * Set SVG attributes for multiple URL values.
 * @param muv
 * @param elm
 * @param src
 * @param scriptEvent
 * @param bDblClick
 */
private void setMultiURLValuesAttributes(MultiURLValues muv,Element elm,StructureSource src,String scriptEvent,boolean bDblClick){
  List<URLValue> validURLValues=MultiURLValuesScriptGenerator.getValidURLValues(muv);
  StringBuilder sb=new StringBuilder();
  sb.append("String_Node_Str");
  sb.append("String_Node_Str" + validURLValues.size() + "String_Node_Str");
  sb.append("String_Node_Str");
  sb.append("String_Node_Str");
  for (  URLValue uv : validURLValues) {
    sb.append("String_Node_Str");
    String url=uv.getBaseUrl();
    if (!(url.startsWith("String_Node_Str") || url.endsWith("String_Node_Str"))) {
      url="String_Node_Str" + url + "String_Node_Str";
    }
    String text=uv.getLabel().getCaption().getValue();
    sb.append("String_Node_Str");
    sb.append("String_Node_Str" + text + "String_Node_Str");
    sb.append("String_Node_Str" + url + "String_Node_Str");
    sb.append("String_Node_Str" + uv.getTarget() + "String_Node_Str");
    if (uv.getTooltip() != null)     sb.append("String_Node_Str" + uv.getTooltip() + "String_Node_Str");
    sb.append("String_Node_Str");
  }
  sb.append("String_Node_Str");
  EMap<String,String> stylesMap=muv.getPropertiesMap();
  String menuStyle=CSSHelper.getStylingHyphenFormat(stylesMap.get(MenuStylesKeyType.MENU.getName()));
  String textStyle=CSSHelper.getStylingHyphenFormat(stylesMap.get(MenuStylesKeyType.MENU_ITEM.getName()));
  String onmouseoverStyle=CSSHelper.getStylingHyphenFormat(stylesMap.get(MenuStylesKeyType.ON_MOUSE_OVER.getName()));
  String onmouseoutStyle=CSSHelper.getStylingHyphenFormat(stylesMap.get(MenuStylesKeyType.ON_MOUSE_OUT.getName()));
  sb.append("String_Node_Str");
  sb.append("String_Node_Str" + menuStyle + "String_Node_Str").append("String_Node_Str" + textStyle + "String_Node_Str").append("String_Node_Str" + onmouseoverStyle + "String_Node_Str").append("String_Node_Str" + onmouseoutStyle + "String_Node_Str");
  sb.append("String_Node_Str");
  sb.append("String_Node_Str");
  String script=sb.toString();
  StringBuffer callbackFunction=new StringBuffer("String_Node_Str");
  callbackFunction.append(Math.abs(script.hashCode()));
  callbackFunction.append("String_Node_Str");
  callbackFunction.append(src.getSource().hashCode());
  if (StructureType.SERIES_DATA_POINT.equals(src.getType())) {
    final DataPointHints dph=(DataPointHints)src.getSource();
    ScriptUtil.script(callbackFunction,dph);
  }
  callbackFunction.append("String_Node_Str");
  elm.setAttribute(scriptEvent,wrapJS(bDblClick,callbackFunction.toString()));
  if (!(scripts.contains(script))) {
    svg_g2d.addScript("String_Node_Str" + Math.abs(script.hashCode()) + "String_Node_Str"+ "String_Node_Str"+ script+ "String_Node_Str");
    scripts.add(script);
  }
}

Fixed version (ground truth):
/** 
 * Set SVG attributes for multiple URL values.
 * @param muv
 * @param elm
 * @param src
 * @param scriptEvent
 * @param bDblClick
 */
private void setMultiURLValuesAttributes(MultiURLValues muv,Element elm,StructureSource src,String scriptEvent,boolean bDblClick){
  List<URLValue> validURLValues=MultiURLValuesScriptGenerator.getValidURLValues(muv);
  StringBuilder sb=new StringBuilder();
  sb.append("String_Node_Str");
  sb.append("String_Node_Str" + validURLValues.size() + "String_Node_Str");
  sb.append("String_Node_Str");
  sb.append("String_Node_Str");
  for (  URLValue uv : validURLValues) {
    sb.append("String_Node_Str");
    String url=uv.getBaseUrl();
    if (!(url.startsWith("String_Node_Str") || url.endsWith("String_Node_Str"))) {
      url="String_Node_Str" + url + "String_Node_Str";
    }
    String text=uv.getLabel().getCaption().getValue();
    sb.append("String_Node_Str");
    sb.append("String_Node_Str" + text + "String_Node_Str");
    sb.append("String_Node_Str" + url + "String_Node_Str");
    sb.append("String_Node_Str" + uv.getTarget() + "String_Node_Str");
    if (uv.getTooltip() != null)     sb.append("String_Node_Str" + uv.getTooltip() + "String_Node_Str");
    sb.append("String_Node_Str");
  }
  sb.append("String_Node_Str");
  EMap<String,String> stylesMap=muv.getPropertiesMap();
  String menuStyle=CSSHelper.getStylingHyphenFormat(stylesMap.get(MenuStylesKeyType.MENU.getName()));
  String textStyle=CSSHelper.getStylingHyphenFormat(stylesMap.get(MenuStylesKeyType.MENU_ITEM.getName()));
  String onmouseoverStyle=CSSHelper.getStylingHyphenFormat(stylesMap.get(MenuStylesKeyType.ON_MOUSE_OVER.getName()));
  String onmouseoutStyle=CSSHelper.getStylingHyphenFormat(stylesMap.get(MenuStylesKeyType.ON_MOUSE_OUT.getName()));
  sb.append("String_Node_Str");
  sb.append("String_Node_Str" + menuStyle + "String_Node_Str").append("String_Node_Str" + textStyle + "String_Node_Str").append("String_Node_Str" + onmouseoverStyle + "String_Node_Str").append("String_Node_Str" + onmouseoutStyle + "String_Node_Str");
  sb.append("String_Node_Str");
  sb.append("String_Node_Str");
  String script=sb.toString();
  StringBuffer callbackFunction=new StringBuffer("String_Node_Str");
  int hashCode=script.hashCode();
  if (hashCode != Integer.MIN_VALUE) {
    callbackFunction.append(Math.abs(hashCode));
  }
 else {
    callbackFunction.append(Integer.MAX_VALUE);
  }
  callbackFunction.append("String_Node_Str");
  callbackFunction.append(src.getSource().hashCode());
  if (StructureType.SERIES_DATA_POINT.equals(src.getType())) {
    final DataPointHints dph=(DataPointHints)src.getSource();
    ScriptUtil.script(callbackFunction,dph);
  }
  callbackFunction.append("String_Node_Str");
  elm.setAttribute(scriptEvent,wrapJS(bDblClick,callbackFunction.toString()));
  if (!(scripts.contains(script))) {
    if (hashCode != Integer.MIN_VALUE) {
      svg_g2d.addScript("String_Node_Str" + Math.abs(hashCode) + "String_Node_Str"+ "String_Node_Str"+ script+ "String_Node_Str");
    }
 else {
      svg_g2d.addScript("String_Node_Str" + Integer.MAX_VALUE + "String_Node_Str"+ "String_Node_Str"+ script+ "String_Node_Str");
    }
    scripts.add(script);
  }
}