nus-yam/ex-repair huggingface dataset:
Program: 54766
Project: 54766
Buggy source:
/** 
 * Called only from   {@link TreeItem}: Shows the leaf image on a tree item.
 * @param treeItem the tree item
 */
void showLeafImage(TreeItem treeItem){
  if (useLeafImages) {
    showImage(treeItem,images.treeLeaf());
  }
 else {
    DOM.setStyleAttribute(treeItem.getElement(),"String_Node_Str",indentValue);
  }
}

Fixed version (ground truth):
/** 
 * Called only from   {@link TreeItem}: Shows the leaf image on a tree item.
 * @param treeItem the tree item
 */
void showLeafImage(TreeItem treeItem){
  if (useLeafImages || treeItem.isFullNode()) {
    showImage(treeItem,images.treeLeaf());
  }
 else {
    DOM.setStyleAttribute(treeItem.getElement(),"String_Node_Str",indentValue);
  }
}
Program: 54767
Project: 54767
Buggy source:
Element getImageHolderElement(){
  if (imageHolder == null) {
    convertToFullNode();
  }
  return imageHolder;
}

Fixed version (ground truth):
Element getImageHolderElement(){
  if (!isFullNode()) {
    convertToFullNode();
  }
  return imageHolder;
}
Program: 54768
Project: 54768
Buggy source:
@Override protected void nativeUpdate(String historyToken){
  if (isOldSafari) {
    nativeUpdateImpl(historyToken);
  }
 else {
    super.nativeUpdate(historyToken);
  }
}

Fixed version (ground truth):
@Override protected void nativeUpdate(String historyToken){
  if (isOldSafari) {
    oldNativeUpdate(historyToken);
  }
 else {
    newNativeUpdate(historyToken);
  }
}
Program: 54769
Project: 54769
Buggy source:
public void onHistoryChanged(String historyToken){
  if (historyToken == null) {
    fail("String_Node_Str");
  }
  assertEquals(token,historyToken);
  finishTest();
}

Fixed version (ground truth):
public void onHistoryChanged(String historyToken){
  counter.add(new Object());
  assertFalse("String_Node_Str",isBorked());
}
Program: 54770
Project: 54770
Buggy source:
public native int getBodyOffsetTop();

Fixed version (ground truth):
@Override public native int getBodyOffsetTop();
Program: 54771
Project: 54771
Buggy source:
public native int getBodyOffsetLeft();

Fixed version (ground truth):
@Override public native int getBodyOffsetLeft();
Program: 54772
Project: 54772
Buggy source:
public static String getStackTraceAsString(Throwable e){
  StringBuffer message=new StringBuffer();
  Throwable currentCause=e;
  String causedBy="String_Node_Str";
  HashSet<Throwable> seenCauses=new HashSet<Throwable>();
  while (currentCause != null && !seenCauses.contains(currentCause)) {
    seenCauses.add(currentCause);
    message.append(causedBy);
    causedBy="String_Node_Str";
    message.append(currentCause.getClass().getName());
    message.append("String_Node_Str" + currentCause.getMessage());
    StackTraceElement[] stackElems=currentCause.getStackTrace();
    if (stackElems != null) {
      for (int i=0; i < stackElems.length; ++i) {
        message.append("String_Node_Str");
        message.append(stackElems[i].toString());
      }
    }
    currentCause=currentCause.getCause();
  }
  return message.toString();
}

Fixed version (ground truth):
public static String getStackTraceAsString(Throwable e){
  if (e == null || e instanceof UnableToCompleteException) {
    return null;
  }
  StringBuffer message=new StringBuffer();
  Throwable currentCause=e;
  String causedBy="String_Node_Str";
  HashSet<Throwable> seenCauses=new HashSet<Throwable>();
  while (currentCause != null && !seenCauses.contains(currentCause)) {
    seenCauses.add(currentCause);
    message.append(causedBy);
    causedBy="String_Node_Str";
    message.append(currentCause.getClass().getName());
    message.append("String_Node_Str" + currentCause.getMessage());
    StackTraceElement[] stackElems=currentCause.getStackTrace();
    if (stackElems != null) {
      for (int i=0; i < stackElems.length; ++i) {
        message.append("String_Node_Str");
        message.append(stackElems[i].toString());
      }
    }
    currentCause=currentCause.getCause();
  }
  return message.toString();
}
Program: 54773
Project: 54773
Buggy source:
public LogEvent(TreeItemLogger logger,boolean isBranchCommit,int index,Type type,String message,Throwable caught,HelpInfo helpInfo){
  this.logger=logger;
  this.isBranchCommit=isBranchCommit;
  this.index=index;
  this.type=type;
  this.message=message;
  this.caught=caught;
  this.helpInfo=helpInfo;
}

Fixed version (ground truth):
public LogEvent(TreeItemLogger logger,boolean isBranchCommit,int index,Type type,String message,Throwable caught,HelpInfo helpInfo){
  this.exceptionDetail=AbstractTreeLogger.getStackTraceAsString(caught);
  this.exceptionName=AbstractTreeLogger.getExceptionName(caught);
  this.logger=logger;
  this.isBranchCommit=isBranchCommit;
  this.index=index;
  this.type=type;
  this.message=message;
  this.helpInfo=helpInfo;
}
Program: 54774
Project: 54774
Buggy source:
/** 
 * Creates a tree item in a way that is sensitive to the log event and its position in the tree.
 */
private TreeItem createTreeItem(Tree tree){
  TreeItem treeItem=null;
  if (isBranchCommit) {
    TreeItemLogger parentLogger=(TreeItemLogger)logger.getParentLogger();
    if (parentLogger.lazyTreeItem == null) {
      treeItem=new TreeItem(tree,SWT.NONE);
      logger.lazyTreeItem=treeItem;
    }
 else     if (!parentLogger.lazyTreeItem.isDisposed()) {
      treeItem=new TreeItem(parentLogger.lazyTreeItem,SWT.NONE);
      logger.lazyTreeItem=treeItem;
    }
 else {
      parentLogger.markLoggerDead();
      return null;
    }
  }
 else {
    if (logger.lazyTreeItem == null) {
      treeItem=new TreeItem(tree,SWT.NONE);
    }
 else     if (!logger.lazyTreeItem.isDisposed()) {
      treeItem=new TreeItem(logger.lazyTreeItem,SWT.NONE);
    }
 else {
      logger.markLoggerDead();
      return null;
    }
  }
  String label=message;
  if (label == null) {
    if (caught != null) {
      label=caught.getMessage();
      if (label == null || label.trim().length() == 0) {
        label=caught.toString();
      }
    }
  }
  treeItem.setText(label);
  if (helpInfo != null) {
    URL url=helpInfo.getURL();
    if (url != null) {
      TreeItem helpItem=new TreeItem(treeItem,SWT.NONE);
      helpItem.setImage(imageLink);
      helpItem.setText("String_Node_Str" + url.toString());
      helpItem.setForeground(helpItem.getDisplay().getSystemColor(SWT.COLOR_BLUE));
      helpItem.setData(helpInfo);
      treeItem.setExpanded(true);
    }
  }
  treeItem.setData(this);
  return treeItem;
}

Fixed version (ground truth):
/** 
 * Creates a tree item in a way that is sensitive to the log event and its position in the tree.
 */
private TreeItem createTreeItem(Tree tree){
  TreeItem treeItem=null;
  if (isBranchCommit) {
    TreeItemLogger parentLogger=(TreeItemLogger)logger.getParentLogger();
    if (parentLogger.lazyTreeItem == null) {
      treeItem=new TreeItem(tree,SWT.NONE);
      logger.lazyTreeItem=treeItem;
    }
 else     if (!parentLogger.lazyTreeItem.isDisposed()) {
      treeItem=new TreeItem(parentLogger.lazyTreeItem,SWT.NONE);
      logger.lazyTreeItem=treeItem;
    }
 else {
      parentLogger.markLoggerDead();
      return null;
    }
  }
 else {
    if (logger.lazyTreeItem == null) {
      treeItem=new TreeItem(tree,SWT.NONE);
    }
 else     if (!logger.lazyTreeItem.isDisposed()) {
      treeItem=new TreeItem(logger.lazyTreeItem,SWT.NONE);
    }
 else {
      logger.markLoggerDead();
      return null;
    }
  }
  String label=message;
  if (label == null) {
    assert(exceptionName != null);
    label=exceptionName;
  }
  treeItem.setText(label);
  if (helpInfo != null) {
    URL url=helpInfo.getURL();
    if (url != null) {
      TreeItem helpItem=new TreeItem(treeItem,SWT.NONE);
      helpItem.setImage(imageLink);
      helpItem.setText("String_Node_Str" + url.toString());
      helpItem.setForeground(helpItem.getDisplay().getSystemColor(SWT.COLOR_BLUE));
      helpItem.setData(helpInfo);
      treeItem.setExpanded(true);
    }
  }
  treeItem.setData(this);
  return treeItem;
}
Program: 54775
Project: 54775
Buggy source:
private void syncDetailsPane(TreeItem item){
  TreeItemLogger.LogEvent logEvent=null;
  Object testLogEvent=item.getData();
  if (testLogEvent instanceof TreeItemLogger.LogEvent) {
    logEvent=(LogEvent)testLogEvent;
  }
  StringBuffer sb=new StringBuffer();
  if (logEvent != null && logEvent.type != null) {
    sb.append("String_Node_Str");
    sb.append(logEvent.type.getLabel());
    sb.append("String_Node_Str");
  }
  sb.append(item.getText());
  sb.append("String_Node_Str");
  if (logEvent != null && logEvent.caught != null) {
    if (!(logEvent.caught instanceof UnableToCompleteException)) {
      String stackTrace=AbstractTreeLogger.getStackTraceAsString(logEvent.caught);
      sb.append(stackTrace);
    }
  }
  details.setText(sb.toString());
}

Fixed version (ground truth):
private void syncDetailsPane(TreeItem item){
  TreeItemLogger.LogEvent logEvent=null;
  Object testLogEvent=item.getData();
  if (testLogEvent instanceof TreeItemLogger.LogEvent) {
    logEvent=(LogEvent)testLogEvent;
  }
  StringBuffer sb=new StringBuffer();
  if (logEvent != null && logEvent.type != null) {
    sb.append("String_Node_Str");
    sb.append(logEvent.type.getLabel());
    sb.append("String_Node_Str");
  }
  sb.append(item.getText());
  sb.append("String_Node_Str");
  if (logEvent != null && logEvent.exceptionDetail != null) {
    sb.append(logEvent.exceptionDetail);
  }
  details.setText(sb.toString());
}
Program: 54776
Project: 54776
Buggy source:
/** 
 * Embed a script on the outer window and use it to initialize an event.
 * @param initFunc the string representation of the init function
 * @param funcName the name to assign to the init function
 * @param cmd the command to execute the init function
 */
private static void initHandler(String initFunc,String funcName,Command cmd){
  if (GWT.isClient()) {
    maybeInitializeCloseHandlers();
    initFunc=initFunc.replaceFirst("String_Node_Str","String_Node_Str" + funcName);
    ScriptElement scriptElem=Document.get().createScriptElement(initFunc);
    Document.get().getBody().appendChild(scriptElem);
    cmd.execute();
    RootPanel.getBodyElement().removeChild(scriptElem);
  }
}

Fixed version (ground truth):
/** 
 * Initialize an event on the outer window.
 * @param initFunc the string representation of the init function
 * @param funcName the name to assign to the init function
 * @param cmd the command to execute the init function
 */
private static void initHandler(String initFunc,String funcName,Command cmd){
  if (GWT.isClient()) {
    maybeInitializeCloseHandlers();
    impl.initHandler(initFunc,funcName,cmd);
  }
}
Program: 54777
Project: 54777
Buggy source:
public void visitLocalVariable(final String name,final String desc,final String signature,final Label start,final Label end,final int index){
  if (signature != null) {
    if (localVarType == null) {
      localVarType=new ByteVector();
    }
    ++localVarTypeCount;
    localVarType.putShort(start.position).putShort(end.position - start.position).putShort(cw.newUTF8(name)).putShort(cw.newUTF8(signature)).putShort(index);
  }
  if (localVar == null) {
    localVar=new ByteVector();
  }
  ++localVarCount;
  localVar.putShort(start.position).putShort(end.position - start.position).putShort(cw.newUTF8(name)).putShort(cw.newUTF8(desc)).putShort(index);
  if (compute != NOTHING) {
    char c=desc.charAt(0);
    int n=index + (c == 'J' || c == 'D' ? 2 : 1);
    if (n > maxLocals) {
      maxLocals=n;
    }
  }
}

Fixed version (ground truth):
public void visitLocalVariable(final String name,final String desc,final String signature,final Label start,final Label end,final int index){
  if (((start.status & labels.RESOLVED) != 0) && ((end.status & labels.RESOLVED) != 0)) {
    if (signature != null) {
      if (localVarType == null) {
        localVarType=new ByteVector();
      }
      ++localVarTypeCount;
      localVarType.putShort(start.position).putShort(end.position - start.position).putShort(cw.newUTF8(name)).putShort(cw.newUTF8(signature)).putShort(index);
    }
    if (localVar == null) {
      localVar=new ByteVector();
    }
    ++localVarCount;
    localVar.putShort(start.position).putShort(end.position - start.position).putShort(cw.newUTF8(name)).putShort(cw.newUTF8(desc)).putShort(index);
  }
  if (compute != NOTHING) {
    char c=desc.charAt(0);
    int n=index + (c == 'J' || c == 'D' ? 2 : 1);
    if (n > maxLocals) {
      maxLocals=n;
    }
  }
}
Program: 54778
Project: 54778
Buggy source:
/** 
 * Attempts to get a named deferred binding property. Throws <code>BadPropertyValueException</code> if the property is either undefined or has a value that is unsupported.
 * @param logger the current logger
 * @param propertyName the name of the property
 * @return a value for the property
 */
String getPropertyValue(TreeLogger logger,String propertyName) throws BadPropertyValueException ;

Fixed version (ground truth):
/** 
 * Attempts to get a named deferred binding property. Throws <code>BadPropertyValueException</code> if the property is either undefined or has a value that is unsupported. The result of invoking this method with the same <code>propertyName</code> must be stable.
 * @param logger the current logger
 * @param propertyName the name of the property
 * @return a value for the property
 */
String getPropertyValue(TreeLogger logger,String propertyName) throws BadPropertyValueException ;
Program: 54779
Project: 54779
Buggy source:
/** 
 * Attempts to get a named deferred binding property and returns the list of possible values. Throws <code>BadPropertyValueException</code> if the property is undefined.
 * @param logger the current logger
 * @param propertyName the name of the property
 * @return the possible values for the property
 */
String[] getPropertyValueSet(TreeLogger logger,String propertyName) throws BadPropertyValueException ;

Fixed version (ground truth):
/** 
 * Attempts to get a named deferred binding property and returns the list of possible values. Throws <code>BadPropertyValueException</code> if the property is undefined. The result of invoking this method with the same <code>propertyName</code> must be stable.
 * @param logger the current logger
 * @param propertyName the name of the property
 * @return the possible values for the property
 */
String[] getPropertyValueSet(TreeLogger logger,String propertyName) throws BadPropertyValueException ;
Program: 54780
Project: 54780
Buggy source:
public DistillerRebindPermutationOracle(ArtifactSet generatorArtifacts,PropertyPermutations perms){
  rebindOracles=new CompilationRebindOracle[perms.size()];
  Property[] orderedProps=perms.getOrderedProperties();
  for (int i=0; i < rebindOracles.length; ++i) {
    String[] orderedPropValues=perms.getOrderedPropertyValues(i);
    StaticPropertyOracle propOracle=new StaticPropertyOracle(orderedProps,orderedPropValues);
    rebindOracles[i]=new CompilationRebindOracle(generatorArtifacts,propOracle);
  }
}

Fixed version (ground truth):
public DistillerRebindPermutationOracle(ArtifactSet generatorArtifacts,PropertyPermutations perms){
  propertyOracles=new StaticPropertyOracle[perms.size()];
  rebindOracles=new RebindOracle[perms.size()];
  Property[] orderedProps=perms.getOrderedProperties();
  for (int i=0; i < rebindOracles.length; ++i) {
    String[] orderedPropValues=perms.getOrderedPropertyValues(i);
    propertyOracles[i]=new StaticPropertyOracle(orderedProps,orderedPropValues);
    rebindOracles[i]=new StandardRebindOracle(compilationState,propertyOracles[i],module,rules,genDir,generatorResourcesDir,generatorArtifacts);
  }
}
Program: 54781
Project: 54781
Buggy source:
public String[] getAllPossibleRebindAnswers(TreeLogger logger,String requestTypeName) throws UnableToCompleteException {
  String msg="String_Node_Str" + requestTypeName + "String_Node_Str";
  logger=logger.branch(TreeLogger.DEBUG,msg,null);
  Set<String> answers=new HashSet<String>();
  for (  CompilationRebindOracle rebindOracle : rebindOracles) {
    String resultTypeName=rebindOracle.rebind(logger,requestTypeName);
    answers.add(resultTypeName);
  }
  return Util.toArray(String.class,answers);
}

Fixed version (ground truth):
public String[] getAllPossibleRebindAnswers(TreeLogger logger,String requestTypeName) throws UnableToCompleteException {
  String msg="String_Node_Str" + requestTypeName + "String_Node_Str";
  logger=logger.branch(TreeLogger.DEBUG,msg,null);
  Set<String> answers=new HashSet<String>();
  for (  RebindOracle rebindOracle : rebindOracles) {
    String resultTypeName=rebindOracle.rebind(logger,requestTypeName);
    answers.add(resultTypeName);
  }
  return Util.toArray(String.class,answers);
}
Program: 54782
Project: 54782
Buggy source:
public CompilationRebindOracle getRebindOracle(int permNumber){
  return rebindOracles[permNumber];
}

Fixed version (ground truth):
public RebindOracle getRebindOracle(int permNumber){
  return rebindOracles[permNumber];
}
Program: 54783
Project: 54783
Buggy source:
private void compilePermutations(TreeLogger logger,JavaToJavaScriptCompiler jjs,DistillerRebindPermutationOracle rpo,StandardLinkerContext linkerContext) throws UnableToCompleteException {
  int permCount=rpo.getPermuationCount();
  PerfLogger.start("String_Node_Str" + permCount + "String_Node_Str");
  Permutation[] perms=new Permutation[permCount];
  for (int i=0; i < permCount; ++i) {
    CompilationRebindOracle rebindOracle=rpo.getRebindOracle(i);
    perms[i]=new Permutation(i,rebindOracle,rebindOracle.getPropertyOracle());
  }
  PermutationCompiler permCompiler=new PermutationCompiler(logger,jjs,perms);
  permCompiler.go(linkerContext);
}

Fixed version (ground truth):
private void compilePermutations(TreeLogger logger,JavaToJavaScriptCompiler jjs,DistillerRebindPermutationOracle rpo,StandardLinkerContext linkerContext) throws UnableToCompleteException {
  int permCount=rpo.getPermuationCount();
  PerfLogger.start("String_Node_Str" + permCount + "String_Node_Str");
  Permutation[] perms=new Permutation[permCount];
  for (int i=0; i < permCount; ++i) {
    perms[i]=new Permutation(i,rpo.getRebindOracle(i),rpo.getPropertyOracle(i));
  }
  PermutationCompiler permCompiler=new PermutationCompiler(logger,jjs,perms);
  permCompiler.go(linkerContext);
}
Program: 54784
Project: 54784
Buggy source:
public StaticPropertyOracle getPropertyOracle(){
  return propOracle;
}

Fixed version (ground truth):
public StaticPropertyOracle getPropertyOracle(int permNumber){
  return propertyOracles[permNumber];
}
Program: 54785
Project: 54785
Buggy source:
public String rebind(TreeLogger logger,String typeName) throws UnableToCompleteException {
  logger=Messages.TRACE_TOPLEVEL_REBIND.branch(logger,typeName,null);
  Rebinder rebinder=new Rebinder();
  String result=rebinder.rebind(logger,typeName);
  Messages.TRACE_TOPLEVEL_REBIND_RESULT.log(logger,result,null);
  return result;
}

Fixed version (ground truth):
public String rebind(TreeLogger logger,String typeName) throws UnableToCompleteException {
  String result=cache.get(typeName);
  if (result == null) {
    logger=Messages.TRACE_TOPLEVEL_REBIND.branch(logger,typeName,null);
    Rebinder rebinder=new Rebinder();
    result=rebinder.rebind(logger,typeName);
    cache.put(typeName,result);
    Messages.TRACE_TOPLEVEL_REBIND_RESULT.log(logger,result,null);
  }
  return result;
}
Program: 54786
Project: 54786
Buggy source:
private static void maybeInitializeHandlers(){
  if (GWT.isClient() && !handlersAreInitialized) {
    ScriptElement scriptElem=Document.get().createScriptElement();
    scriptElem.setText(getInitHandlerMethodString());
    Document.get().getBody().appendChild(scriptElem);
    init();
    RootPanel.getBodyElement().removeChild(scriptElem);
    handlersAreInitialized=true;
  }
}

Fixed version (ground truth):
private static void maybeInitializeHandlers(){
  if (GWT.isClient() && !handlersAreInitialized) {
    handlersAreInitialized=true;
    ScriptElement scriptElem=Document.get().createScriptElement();
    String initFunc=getInitHandlerMethodString().replaceFirst("String_Node_Str","String_Node_Str");
    scriptElem.setText(initFunc);
    Document.get().getBody().appendChild(scriptElem);
    init();
    RootPanel.getBodyElement().removeChild(scriptElem);
  }
}
Program: 54787
Project: 54787
Buggy source:
public DefaultMuseum(){
  addIssue(new Issue1245());
  addIssue(new Issue1897());
  addIssue(new Issue2261());
  addIssue(new Issue2290());
  addIssue(new Issue2307());
  addIssue(new Issue2321());
  addIssue(new Issue2331());
  addIssue(new Issue2338());
  addIssue(new Issue2339());
  addIssue(new Issue2392());
  addIssue(new Issue2443());
  addIssue(new TestFireEvents());
}

Fixed version (ground truth):
public DefaultMuseum(){
  addIssue(new Issue1245());
  addIssue(new Issue1772());
  addIssue(new Issue1897());
  addIssue(new Issue2261());
  addIssue(new Issue2290());
  addIssue(new Issue2307());
  addIssue(new Issue2321());
  addIssue(new Issue2331());
  addIssue(new Issue2338());
  addIssue(new Issue2339());
  addIssue(new Issue2392());
  addIssue(new Issue2443());
  addIssue(new TestFireEvents());
}
Program: 54788
Project: 54788
Buggy source:
/** 
 * Initializes the split panel.
 * @param mainElem the root element for the split panel
 * @param splitElem the element that acts as the splitter
 * @param headElem the element to contain the top or left most widget
 * @param tailElem the element to contain the bottom or right most widget
 */
SplitPanel(Element mainElem,Element splitElem,Element headElem,Element tailElem){
  setElement(mainElem);
  this.splitElem=splitElem;
  elements[0]=headElem;
  elements[1]=tailElem;
  sinkEvents(Event.MOUSEEVENTS);
}

Fixed version (ground truth):
/** 
 * Initializes the split panel.
 * @param mainElem the root element for the split panel
 * @param splitElem the element that acts as the splitter
 * @param headElem the element to contain the top or left most widget
 * @param tailElem the element to contain the bottom or right most widget
 */
SplitPanel(Element mainElem,Element splitElem,Element headElem,Element tailElem){
  setElement(mainElem);
  this.splitElem=splitElem;
  elements[0]=headElem;
  elements[1]=tailElem;
  sinkEvents(Event.MOUSEEVENTS | Event.ONLOSECAPTURE);
  if (glassElem == null) {
    glassElem=DOM.createDiv();
    glassElem.getStyle().setProperty("String_Node_Str","String_Node_Str");
    glassElem.getStyle().setProperty("String_Node_Str","String_Node_Str");
    glassElem.getStyle().setProperty("String_Node_Str","String_Node_Str");
    glassElem.getStyle().setProperty("String_Node_Str","String_Node_Str");
    glassElem.getStyle().setProperty("String_Node_Str","String_Node_Str");
    glassElem.getStyle().setProperty("String_Node_Str","String_Node_Str");
    glassElem.getStyle().setProperty("String_Node_Str","String_Node_Str");
    glassElem.getStyle().setProperty("String_Node_Str","String_Node_Str");
    glassElem.getStyle().setProperty("String_Node_Str","String_Node_Str");
  }
}
Program: 54789
Project: 54789
Buggy source:
private void startResizingFrom(int x,int y){
  isResizing=true;
  onSplitterResizeStarted(x,y);
}

Fixed version (ground truth):
private void startResizingFrom(int x,int y){
  isResizing=true;
  onSplitterResizeStarted(x,y);
  int height=RootPanel.getBodyElement().getScrollHeight() - 1;
  int width=RootPanel.getBodyElement().getScrollWidth() - 1;
  glassElem.getStyle().setProperty("String_Node_Str",height + "String_Node_Str");
  glassElem.getStyle().setProperty("String_Node_Str",width + "String_Node_Str");
  RootPanel.getBodyElement().appendChild(glassElem);
}
Program: 54790
Project: 54790
Buggy source:
private void stopResizing(){
  isResizing=false;
}

Fixed version (ground truth):
private void stopResizing(){
  isResizing=false;
  RootPanel.getBodyElement().removeChild(glassElem);
}
Program: 54792
Project: 54792
Buggy source:
private void generateProxyMethods(SourceWriter w,SerializableTypeOracle serializableTypeOracle,Map<JMethod,JMethod> syncMethToAsyncMethMap){
  JMethod[] syncMethods=serviceIntf.getOverridableMethods();
  for (  JMethod syncMethod : syncMethods) {
    JMethod asyncMethod=syncMethToAsyncMethMap.get(syncMethod);
    assert(asyncMethod != null);
    generateProxyMethod(w,serializableTypeOracle,syncMethod,asyncMethod);
  }
}

Fixed version (ground truth):
private void generateProxyMethods(SourceWriter w,SerializableTypeOracle serializableTypeOracle,Map<JMethod,JMethod> syncMethToAsyncMethMap){
  JMethod[] syncMethods=serviceIntf.getOverridableMethods();
  for (  JMethod syncMethod : syncMethods) {
    JMethod asyncMethod=syncMethToAsyncMethMap.get(syncMethod);
    assert(asyncMethod != null);
    JClassType enclosingType=syncMethod.getEnclosingType();
    JParameterizedType isParameterizedType=enclosingType.isParameterized();
    if (isParameterizedType != null) {
      JMethod[] methods=isParameterizedType.getMethods();
      for (int i=0; i < methods.length; ++i) {
        if (methods[i] == syncMethod) {
          syncMethod=isParameterizedType.getBaseType().getMethods()[i];
        }
      }
    }
    generateProxyMethod(w,serializableTypeOracle,syncMethod,asyncMethod);
  }
}
Program: 54793
Project: 54793
Buggy source:
private SourceWriter getSourceWriter(TreeLogger logger,GeneratorContext ctx,JClassType serviceAsync){
  JPackage serviceIntfPkg=serviceAsync.getPackage();
  String packageName=serviceIntfPkg == null ? "String_Node_Str" : serviceIntfPkg.getName();
  PrintWriter printWriter=ctx.tryCreate(logger,packageName,getProxySimpleName());
  if (printWriter == null) {
    return null;
  }
  ClassSourceFileComposerFactory composerFactory=new ClassSourceFileComposerFactory(packageName,getProxySimpleName());
  String[] imports=new String[]{RemoteServiceProxy.class.getCanonicalName(),ClientSerializationStreamWriter.class.getCanonicalName(),GWT.class.getCanonicalName(),ResponseReader.class.getCanonicalName(),SerializationException.class.getCanonicalName()};
  for (  String imp : imports) {
    composerFactory.addImport(imp);
  }
  composerFactory.setSuperclass(RemoteServiceProxy.class.getSimpleName());
  composerFactory.addImplementedInterface(serviceAsync.getParameterizedQualifiedSourceName());
  return composerFactory.createSourceWriter(ctx,printWriter);
}

Fixed version (ground truth):
private SourceWriter getSourceWriter(TreeLogger logger,GeneratorContext ctx,JClassType serviceAsync){
  JPackage serviceIntfPkg=serviceAsync.getPackage();
  String packageName=serviceIntfPkg == null ? "String_Node_Str" : serviceIntfPkg.getName();
  PrintWriter printWriter=ctx.tryCreate(logger,packageName,getProxySimpleName());
  if (printWriter == null) {
    return null;
  }
  ClassSourceFileComposerFactory composerFactory=new ClassSourceFileComposerFactory(packageName,getProxySimpleName());
  String[] imports=new String[]{RemoteServiceProxy.class.getCanonicalName(),ClientSerializationStreamWriter.class.getCanonicalName(),GWT.class.getCanonicalName(),ResponseReader.class.getCanonicalName(),SerializationException.class.getCanonicalName()};
  for (  String imp : imports) {
    composerFactory.addImport(imp);
  }
  composerFactory.setSuperclass(RemoteServiceProxy.class.getSimpleName());
  composerFactory.addImplementedInterface(serviceAsync.getErasedType().getQualifiedSourceName());
  return composerFactory.createSourceWriter(ctx,printWriter);
}
Program: 54795
Project: 54795
Buggy source:
public void onWindowResized(int width,int height){
  if (width == windowWidth) {
    return;
  }
  windowWidth=width;
  int menuWidth=mainMenu.getOffsetWidth();
  int contentWidth=width - menuWidth - 30;
  int contentWidthInner=contentWidth - 10;
  bottomPanel.setCellWidth(mainMenu,menuWidth + "String_Node_Str");
  bottomPanel.setCellWidth(contentLayout,contentWidth + "String_Node_Str");
  contentLayout.getCellFormatter().setWidth(0,0,contentWidthInner + "String_Node_Str");
  contentLayout.getCellFormatter().setWidth(1,0,contentWidthInner + "String_Node_Str");
}

Fixed version (ground truth):
public void onWindowResized(int width,int height){
  if (width == windowWidth) {
    return;
  }
  windowWidth=width;
  onWindowResizedImpl(width);
}
Program: 54796
Project: 54796
Buggy source:
@Override public void run(){
  styleTester.setVisible(false);
  styleTester.setVisible(true);
  if (styleTester.getOffsetWidth() > 0) {
    RootPanel.getBodyElement().getStyle().setProperty("String_Node_Str","String_Node_Str");
    RootPanel.getBodyElement().getStyle().setProperty("String_Node_Str","String_Node_Str");
  }
 else {
    schedule(25);
  }
}

Fixed version (ground truth):
@Override public void run(){
  styleTester.setVisible(false);
  styleTester.setVisible(true);
  if (styleTester.getOffsetWidth() > 0) {
    RootPanel.getBodyElement().getStyle().setProperty("String_Node_Str","String_Node_Str");
    RootPanel.getBodyElement().getStyle().setProperty("String_Node_Str","String_Node_Str");
    app.onWindowResizedImpl(Window.getClientWidth());
  }
 else {
    schedule(25);
  }
}
Program: 54797
Project: 54797
Buggy source:
/** 
 * Update the style sheets to reflect the current theme and direction.
 */
private void updateStyleSheets(){
  String gwtStyleSheet="String_Node_Str" + CUR_THEME + "String_Node_Str"+ CUR_THEME+ "String_Node_Str";
  String showcaseStyleSheet=CUR_THEME + "String_Node_Str";
  if (LocaleInfo.getCurrentLocale().isRTL()) {
    gwtStyleSheet=gwtStyleSheet.replace("String_Node_Str","String_Node_Str");
    showcaseStyleSheet=showcaseStyleSheet.replace("String_Node_Str","String_Node_Str");
  }
  HeadElement headElem=getHeadElement();
  NodeList<Node> children=headElem.getChildNodes();
  for (int i=0; i < children.getLength(); i++) {
    Node node=children.getItem(i);
    if (node.getNodeType() == Node.ELEMENT_NODE) {
      Element elem=Element.as(node);
      if (elem.getTagName().equalsIgnoreCase("String_Node_Str") && elem.getPropertyString("String_Node_Str").equalsIgnoreCase("String_Node_Str")) {
        String href=elem.getPropertyString("String_Node_Str");
        if (gwtStyleSheet != null && href.contains(gwtStyleSheet)) {
          gwtStyleSheet=null;
        }
 else         if (showcaseStyleSheet != null && href.contains(showcaseStyleSheet)) {
          showcaseStyleSheet=null;
        }
 else {
          headElem.removeChild(elem);
          i--;
        }
      }
    }
  }
  String modulePath=GWT.getModuleBaseURL();
  if (gwtStyleSheet != null) {
    styleTesterTimer.schedule(25);
    loadStyleSheet(modulePath + gwtStyleSheet);
  }
  if (showcaseStyleSheet != null) {
    loadStyleSheet(modulePath + showcaseStyleSheet);
  }
}

Fixed version (ground truth):
/** 
 * Update the style sheets to reflect the current theme and direction.
 */
private void updateStyleSheets(){
  String gwtStyleSheet="String_Node_Str" + CUR_THEME + "String_Node_Str"+ CUR_THEME+ "String_Node_Str";
  String showcaseStyleSheet=CUR_THEME + "String_Node_Str";
  if (LocaleInfo.getCurrentLocale().isRTL()) {
    gwtStyleSheet=gwtStyleSheet.replace("String_Node_Str","String_Node_Str");
    showcaseStyleSheet=showcaseStyleSheet.replace("String_Node_Str","String_Node_Str");
  }
  HeadElement headElem=getHeadElement();
  NodeList<Node> children=headElem.getChildNodes();
  for (int i=0; i < children.getLength(); i++) {
    Node node=children.getItem(i);
    if (node.getNodeType() == Node.ELEMENT_NODE) {
      Element elem=Element.as(node);
      if (elem.getTagName().equalsIgnoreCase("String_Node_Str") && elem.getPropertyString("String_Node_Str").equalsIgnoreCase("String_Node_Str")) {
        String href=elem.getPropertyString("String_Node_Str");
        if (gwtStyleSheet != null && href.contains(gwtStyleSheet)) {
          gwtStyleSheet=null;
        }
 else         if (showcaseStyleSheet != null && href.contains(showcaseStyleSheet)) {
          showcaseStyleSheet=null;
        }
 else {
          headElem.removeChild(elem);
          i--;
        }
      }
    }
  }
  styleTesterTimer.schedule(25);
  String modulePath=GWT.getModuleBaseURL();
  if (gwtStyleSheet != null) {
    loadStyleSheet(modulePath + gwtStyleSheet);
  }
  if (showcaseStyleSheet != null) {
    loadStyleSheet(modulePath + showcaseStyleSheet);
  }
}
Program: 54801
Project: 54801
Buggy source:
/** 
 * Returns <code>true</code> if the query type is accessible to classes in the same package.
 */
private static boolean isAccessibleToClassesInSamePackage(JClassType type){
  if (type.isPrivate()) {
    return false;
  }
  if (type.isMemberType()) {
    return isAccessibleToClassesInSamePackage(type.getEnclosingType());
  }
  return true;
}

Fixed version (ground truth):
/** 
 * Returns <code>true</code> if the query type is accessible to classes in the same package.
 */
private static boolean isAccessibleToClassesInSamePackage(JClassType type){
  if (type.isPrivate() || type.isLocalType()) {
    return false;
  }
  if (type.isMemberType()) {
    return isAccessibleToClassesInSamePackage(type.getEnclosingType());
  }
  return true;
}
Program: 54802
Project: 54802
Buggy source:
private static native boolean detectOldSafari();

Fixed version (ground truth):
static native boolean detectOldSafari();
Program: 54803
Project: 54803
Buggy source:
public void testTokenEscaping(){
  final String escToken="String_Node_Str";
  delayTestFinish(5000);
  History.addHistoryListener(new HistoryListener(){
    public void onHistoryChanged(    String token){
      assertEquals(escToken,token);
      finishTest();
      History.removeHistoryListener(this);
    }
  }
);
  History.newItem(escToken);
}

Fixed version (ground truth):
public void testTokenEscaping(){
  final String shouldBeEncoded="String_Node_Str";
  final String shouldBeEncodedAs="String_Node_Str";
  delayTestFinish(5000);
  History.addHistoryListener(new HistoryListener(){
    public void onHistoryChanged(    String token){
      assertEquals(shouldBeEncodedAs,getCurrentLocationHash());
      assertEquals(shouldBeEncoded,token);
      finishTest();
      History.removeHistoryListener(this);
    }
  }
);
  History.newItem(shouldBeEncoded);
}
Program: 54804
Project: 54804
Buggy source:
public DefaultMuseum(){
  addIssue(new Issue1245());
  addIssue(new Issue1897());
  addIssue(new Issue2261());
  addIssue(new Issue2290());
  addIssue(new Issue2307());
  addIssue(new Issue2321());
  addIssue(new Issue2331());
  addIssue(new Issue2338());
  addIssue(new Issue2339());
}

Fixed version (ground truth):
public DefaultMuseum(){
  addIssue(new Issue1245());
  addIssue(new Issue1897());
  addIssue(new Issue2261());
  addIssue(new Issue2290());
  addIssue(new Issue2307());
  addIssue(new Issue2321());
  addIssue(new Issue2331());
  addIssue(new Issue2338());
  addIssue(new Issue2339());
  addIssue(new TestFireEvents());
}
Program: 54805
Project: 54805
Buggy source:
public DefaultMuseum(){
  addIssue(new Issue1245());
  addIssue(new Issue1897());
  addIssue(new Issue2261());
  addIssue(new Issue2290());
  addIssue(new Issue2307());
  addIssue(new Issue2321());
  addIssue(new Issue2331());
  addIssue(new Issue2338());
  addIssue(new Issue2339());
  addIssue(new TestFireEvents());
}

Fixed version (ground truth):
public DefaultMuseum(){
  addIssue(new Issue1245());
  addIssue(new Issue1897());
  addIssue(new Issue2261());
  addIssue(new Issue2290());
  addIssue(new Issue2307());
  addIssue(new Issue2321());
  addIssue(new Issue2331());
  addIssue(new Issue2338());
  addIssue(new Issue2339());
  addIssue(new Issue2392());
  addIssue(new TestFireEvents());
}
Program: 54807
Project: 54807
Buggy source:
private Map<String,Resource> rerootResourcePaths(Map<String,AbstractResource> newInternalMap){
  Map<String,Resource> externalMap;
  externalMap=new HashMap<String,Resource>();
  for (  AbstractResource resource : newInternalMap.values()) {
    String path=resource.getPath();
    if (externalMap.get(path) instanceof ResourceWrapper) {
      continue;
    }
    for (    PathPrefix pathPrefix : pathPrefixSet.values()) {
      if (pathPrefix.allows(path)) {
        assert(path.startsWith(pathPrefix.getPrefix()));
        if (pathPrefix.shouldReroot()) {
          path=pathPrefix.getRerootedPath(path);
          AbstractResource wrapper=new ResourceWrapper(path,resource);
          externalMap.put(path,wrapper);
        }
 else {
          externalMap.put(path,resource);
        }
        break;
      }
    }
    assert(externalMap.containsKey(path));
  }
  return externalMap;
}

Fixed version (ground truth):
private Map<String,Resource> rerootResourcePaths(Map<String,AbstractResource> newInternalMap){
  Map<String,Resource> externalMap;
  externalMap=new HashMap<String,Resource>();
  for (  AbstractResource resource : newInternalMap.values()) {
    String path=resource.getPath();
    if (externalMap.get(path) instanceof ResourceWrapper) {
      continue;
    }
    for (    PathPrefix pathPrefix : pathPrefixSet.values()) {
      if (pathPrefix.allows(path)) {
        assert(path.startsWith(pathPrefix.getPrefix()));
        if (pathPrefix.shouldReroot()) {
          path=pathPrefix.getRerootedPath(path);
          Resource exposed=exposedResourceMap.get(path);
          if (exposed instanceof ResourceWrapper) {
            ResourceWrapper exposedWrapper=(ResourceWrapper)exposed;
            if (exposedWrapper.resource == resource) {
              externalMap.put(path,exposedWrapper);
              break;
            }
          }
          AbstractResource wrapper=new ResourceWrapper(path,resource);
          externalMap.put(path,wrapper);
        }
 else {
          externalMap.put(path,resource);
        }
        break;
      }
    }
    assert(externalMap.containsKey(path));
  }
  return externalMap;
}
Program: 54808
Project: 54808
Buggy source:
private static native void initUrlCheckTimer();

Fixed version (ground truth):
private native void initUrlCheckTimer();
Program: 54809
Project: 54809
Buggy source:
public synchronized void refresh(TreeLogger logger) throws UnableToCompleteException {
  PerfLogger.start("String_Node_Str");
  lazyPublicOracle.refresh(logger);
  compilationState.refresh();
  if (lazyTypeOracle != null) {
    updateTypeOracle(logger);
  }
  PerfLogger.end();
}

Fixed version (ground truth):
public synchronized void refresh(TreeLogger logger) throws UnableToCompleteException {
  PerfLogger.start("String_Node_Str");
  lazyPublicOracle.refresh(logger);
  lazySourceOracle.refresh(logger);
  compilationState.refresh();
  if (lazyTypeOracle != null) {
    updateTypeOracle(logger);
  }
  PerfLogger.end();
}
Program: 54810
Project: 54810
Buggy source:
public void testReplaceString(){
  assertEquals("String_Node_Str",hideFromCompiler("String_Node_Str").replace("String_Node_Str","String_Node_Str"));
  assertEquals("String_Node_Str",hideFromCompiler("String_Node_Str").replace("String_Node_Str","String_Node_Str"));
  assertEquals("String_Node_Str",hideFromCompiler("String_Node_Str").replace("String_Node_Str","String_Node_Str"));
  assertEquals("String_Node_Str",hideFromCompiler("String_Node_Str").replace("String_Node_Str","String_Node_Str"));
  assertEquals("String_Node_Str",hideFromCompiler("String_Node_Str").replace("String_Node_Str","String_Node_Str"));
}

Fixed version (ground truth):
public void testReplaceString(){
  assertEquals("String_Node_Str",hideFromCompiler("String_Node_Str").replace("String_Node_Str","String_Node_Str"));
  assertEquals("String_Node_Str",hideFromCompiler("String_Node_Str").replace("String_Node_Str","String_Node_Str"));
  assertEquals("String_Node_Str",hideFromCompiler("String_Node_Str").replace("String_Node_Str","String_Node_Str"));
  assertEquals("String_Node_Str",hideFromCompiler("String_Node_Str").replace("String_Node_Str","String_Node_Str"));
  assertEquals("String_Node_Str",hideFromCompiler("String_Node_Str").replace("String_Node_Str","String_Node_Str"));
  assertEquals("String_Node_Str",hideFromCompiler("String_Node_Str").replace("String_Node_Str","String_Node_Str"));
  assertEquals("String_Node_Str",hideFromCompiler("String_Node_Str").replace("String_Node_Str","String_Node_Str"));
  assertEquals("String_Node_Str",hideFromCompiler("String_Node_Str").replace("String_Node_Str","String_Node_Str"));
  assertEquals("String_Node_Str",hideFromCompiler("String_Node_Str").replace("String_Node_Str","String_Node_Str"));
  assertEquals("String_Node_Str",hideFromCompiler("String_Node_Str").replace("String_Node_Str","String_Node_Str"));
  assertEquals("String_Node_Str",hideFromCompiler("String_Node_Str").replace("String_Node_Str","String_Node_Str"));
}
Program: 54811
Project: 54811
Buggy source:
@Override protected synchronized Class<?> findClass(String className) throws ClassNotFoundException {
  if (className == null) {
    throw new ClassNotFoundException("String_Node_Str",new NullPointerException());
  }
  if (isInStandardJavaPackage(className)) {
    throw new ClassNotFoundException(className);
  }
  if (BRIDGE_CLASS_NAMES.containsKey(className)) {
    return BRIDGE_CLASS_NAMES.get(className);
  }
  byte[] classBytes;
  try {
    String lookupClassName=className;
    if (classRewriter != null && classRewriter.isJsoImpl(className)) {
      lookupClassName=className.substring(0,className.length() - 1);
    }
    classBytes=compiler.getClassBytes(logger,lookupClassName);
    if (classRewriter != null) {
      classBytes=classRewriter.rewrite(className,classBytes);
    }
    Class<?> newClass=defineClass(className,classBytes,0,classBytes.length);
    if (className.equals(JavaScriptHost.class.getName())) {
      javaScriptHostClass=newClass;
      updateJavaScriptHost();
    }
    return newClass;
  }
 catch (  UnableToCompleteException e) {
    throw new ClassNotFoundException(className);
  }
}

Fixed version (ground truth):
@Override protected synchronized Class<?> findClass(String className) throws ClassNotFoundException {
  if (className == null) {
    throw new ClassNotFoundException("String_Node_Str",new NullPointerException());
  }
  if (isInStandardJavaPackage(className)) {
    throw new ClassNotFoundException(className);
  }
  if (BRIDGE_CLASS_NAMES.containsKey(className)) {
    return BRIDGE_CLASS_NAMES.get(className);
  }
  byte[] classBytes;
  try {
    ++stackDepth;
    String lookupClassName=className;
    if (classRewriter != null && classRewriter.isJsoImpl(className)) {
      lookupClassName=className.substring(0,className.length() - 1);
    }
    classBytes=compiler.getClassBytes(logger,lookupClassName);
    if (classRewriter != null) {
      classBytes=classRewriter.rewrite(className,classBytes);
    }
    Class<?> newClass=defineClass(className,classBytes,0,classBytes.length);
    if (className.equals(JavaScriptHost.class.getName())) {
      javaScriptHostClass=newClass;
      updateJavaScriptHost();
    }
    return newClass;
  }
 catch (  UnableToCompleteException e) {
    throw new ClassNotFoundException(className);
  }
 finally {
    --stackDepth;
  }
}
Program: 54812
Project: 54812
Buggy source:
/** 
 * Overridden to process JSNI annotations.
 */
@Override protected synchronized Class<?> loadClass(String name,boolean resolve) throws ClassNotFoundException {
  Class<?> newClass=super.loadClass(name,resolve);
  JsniMethods jsniMethods=newClass.getAnnotation(JsniMethods.class);
  if (jsniMethods != null) {
    for (    JsniMethod jsniMethod : jsniMethods.value()) {
      String[] bodyParts=jsniMethod.body();
      int size=0;
      for (      String bodyPart : bodyParts) {
        size+=bodyPart.length();
      }
      StringBuilder body=new StringBuilder(size);
      for (      String bodyPart : bodyParts) {
        body.append(bodyPart);
      }
      shellJavaScriptHost.createNative(jsniMethod.file(),jsniMethod.line(),jsniMethod.name(),jsniMethod.paramNames(),body.toString());
    }
  }
  return newClass;
}

Fixed version (ground truth):
/** 
 * Overridden to process JSNI annotations.
 */
@Override protected synchronized Class<?> loadClass(String name,boolean resolve) throws ClassNotFoundException {
  Class<?> newClass=super.loadClass(name,resolve);
  if (!newClass.isInterface() && !newClass.isLocalClass()) {
    pendingJsniInjectionClasses.add(newClass);
  }
  if (stackDepth == 0 && !pendingJsniInjectionClasses.isEmpty()) {
    Class<?>[] toCheck=pendingJsniInjectionClasses.toArray(new Class<?>[pendingJsniInjectionClasses.size()]);
    pendingJsniInjectionClasses.clear();
    for (    Class<?> checkClass : toCheck) {
      JsniMethods jsniMethods=checkClass.getAnnotation(JsniMethods.class);
      if (jsniMethods != null) {
        for (        JsniMethod jsniMethod : jsniMethods.value()) {
          String[] bodyParts=jsniMethod.body();
          int size=0;
          for (          String bodyPart : bodyParts) {
            size+=bodyPart.length();
          }
          StringBuilder body=new StringBuilder(size);
          for (          String bodyPart : bodyParts) {
            body.append(bodyPart);
          }
          shellJavaScriptHost.createNative(jsniMethod.file(),jsniMethod.line(),jsniMethod.name(),jsniMethod.paramNames(),body.toString());
        }
      }
    }
  }
  return newClass;
}
Program: 54814
Project: 54814
Buggy source:
protected static void validateDeclaredAnnotations(Annotation[] expected,Annotation[] actual){
  assertArraysEqual(expected,actual);
}

Fixed version (ground truth):
protected static void validateDeclaredAnnotations(Annotation[] expected,Annotation[] actual){
  Arrays.sort(expected,ANNOTATION_COMPARATOR);
  Arrays.sort(actual,ANNOTATION_COMPARATOR);
  assertArraysEqual(expected,actual);
}
Program: 54815
Project: 54815
Buggy source:
protected static void validateAnnotations(Annotation[] expected,Annotation[] actual){
  assertArraysEqual(expected,actual);
}

Fixed version (ground truth):
protected static void validateAnnotations(Annotation[] expected,Annotation[] actual){
  Arrays.sort(expected,ANNOTATION_COMPARATOR);
  Arrays.sort(actual,ANNOTATION_COMPARATOR);
  assertArraysEqual(expected,actual);
}
Program: 54816
Project: 54816
Buggy source:
protected static void validateMetaDataTags(HasMetaData md1,HasMetaData md2){
  assertEquals(md1.getMetaDataTags().length,md2.getMetaDataTags().length);
}

Fixed version (ground truth):
@SuppressWarnings("String_Node_Str") protected static void validateMetaDataTags(HasMetaData md1,HasMetaData md2){
  assertEquals(md1.getMetaDataTags().length,md2.getMetaDataTags().length);
}
Program: 54817
Project: 54817
Buggy source:
protected static void validateMetaData(HasMetaData md1,HasMetaData md2){
  validateMetaDataTags(md1,md2);
  String[] md1TagNames=md1.getMetaDataTags();
  String[] md2TagNames=md2.getMetaDataTags();
  for (int i=0; i < md1TagNames.length; ++i) {
    assertEquals(md1TagNames[i],md2TagNames[i]);
    String[][] md1TagValues=md1.getMetaData(md1TagNames[i]);
    String[][] md2TagValues=md2.getMetaData(md2TagNames[i]);
    assertTrue(Arrays.deepEquals(md1TagValues,md2TagValues));
  }
}

Fixed version (ground truth):
@SuppressWarnings("String_Node_Str") protected static void validateMetaData(HasMetaData md1,HasMetaData md2){
  validateMetaDataTags(md1,md2);
  String[] md1TagNames=md1.getMetaDataTags();
  String[] md2TagNames=md2.getMetaDataTags();
  for (int i=0; i < md1TagNames.length; ++i) {
    assertEquals(md1TagNames[i],md2TagNames[i]);
    String[][] md1TagValues=md1.getMetaData(md1TagNames[i]);
    String[][] md2TagValues=md2.getMetaData(md2TagNames[i]);
    assertTrue(Arrays.deepEquals(md1TagValues,md2TagValues));
  }
}
Program: 54818
Project: 54818
Buggy source:
public boolean execute(){
  if (++executionCount >= 10) {
    fail("String_Node_Str");
  }
  if (executionCount == 9) {
    finishTest();
  }
  return executionCount < 10;
}

Fixed version (ground truth):
public boolean execute(){
  if (++executionCount > 10) {
    fail("String_Node_Str");
  }
  if (executionCount == 10) {
    finishTest();
  }
  return executionCount < 10;
}