nus-yam/ex-repair huggingface dataset:
Program: 91201
Project: 91201
Buggy source:
public static SymbolType findFieldType(SymbolTable symTable,SymbolType scope,String fieldName){
  SymbolType result=null;
  if (scope != null) {
    List<Class<?>> classes=scope.getBoundClasses();
    Iterator<Class<?>> it=classes.iterator();
    while (it.hasNext() && result == null) {
      try {
        Class<?> clazz=it.next();
        Field field=null;
        if (scope.getArrayCount() > 0 && fieldName.equals("String_Node_Str")) {
          result=new SymbolType("String_Node_Str");
        }
 else {
          try {
            field=clazz.getDeclaredField(fieldName);
          }
 catch (          NoSuchFieldException fe) {
            field=getField0(clazz.getPackage(),clazz,fieldName);
            if (field == null) {
              SymbolType st=symTable.getType("String_Node_Str");
              Class<?> internal=ClassInspector.findClassMember(st.getClazz().getPackage(),fieldName,clazz);
              if (internal != null) {
                result=new SymbolType(internal);
              }
            }
          }
          if (result == null) {
            Map<String,SymbolType> typeMapping=new HashMap<String,SymbolType>();
            GenericBuilderFromGenericClasses builder=new GenericBuilderFromGenericClasses(clazz,scope.getParameterizedTypes());
            builder.build(typeMapping);
            result=SymbolType.valueOf(field.getGenericType(),typeMapping);
          }
        }
      }
 catch (      Exception e) {
        throw new NoSuchExpressionTypeException(e);
      }
    }
  }
  return result;
}

Fixed version (ground truth):
public static SymbolType findFieldType(SymbolTable symTable,SymbolType scope,String fieldName){
  SymbolType result=null;
  if (scope != null) {
    List<Class<?>> classes=scope.getBoundClasses();
    Iterator<Class<?>> it=classes.iterator();
    while (it.hasNext() && result == null) {
      try {
        Class<?> clazz=it.next();
        Field field=null;
        if (scope.getArrayCount() > 0 && fieldName.equals("String_Node_Str")) {
          result=new SymbolType("String_Node_Str");
        }
 else {
          try {
            field=clazz.getDeclaredField(fieldName);
          }
 catch (          NoSuchFieldException fe) {
            field=getField0(clazz.getPackage(),clazz,fieldName);
            if (field == null) {
              SymbolType st=symTable.getType("String_Node_Str");
              Class<?> internal=ClassInspector.findClassMember(st.getClazz().getPackage(),fieldName,clazz);
              if (internal != null) {
                result=new SymbolType(internal);
              }
            }
          }
          if (result == null) {
            Map<String,SymbolType> typeMapping=new HashMap<String,SymbolType>();
            GenericBuilderFromGenericClasses builder=new GenericBuilderFromGenericClasses(clazz,scope.getParameterizedTypes());
            builder.build(typeMapping);
            result=SymbolType.valueOf(field.getGenericType(),typeMapping);
            result.setField(field);
          }
        }
      }
 catch (      Exception e) {
        throw new NoSuchExpressionTypeException(e);
      }
    }
  }
  return result;
}
Program: 91202
Project: 91202
Buggy source:
private SymbolType clone(Stack<SymbolType> parent,Stack<SymbolType> created){
  SymbolType result=new SymbolType();
  result.setName(name);
  result.setClazz(clazz);
  result.setArrayCount(arrayCount);
  result.templateVariable=templateVariable;
  if (parent == null) {
    parent=new Stack<SymbolType>();
    created=new Stack<SymbolType>();
  }
  Iterator<SymbolType> it=parent.iterator();
  Iterator<SymbolType> it2=created.iterator();
  boolean found=false;
  while (it.hasNext() && !found) {
    SymbolType next=it.next();
    SymbolType created2=it2.next();
    if (next == this) {
      result=created2;
      found=true;
    }
  }
  if (!found) {
    parent.push(this);
    created.push(result);
    if (parameterizedTypes != null) {
      List<SymbolType> list=new LinkedList<SymbolType>();
      for (      SymbolData type : parameterizedTypes) {
        list.add(((SymbolType)type).clone(parent,created));
      }
      result.setParameterizedTypes(list);
    }
    if (upperBounds != null) {
      List<SymbolType> list=new LinkedList<SymbolType>();
      for (      SymbolData type : upperBounds) {
        list.add(((SymbolType)type).clone(parent,created));
      }
      result.upperBounds=list;
    }
    if (lowerBounds != null) {
      List<SymbolType> list=new LinkedList<SymbolType>();
      for (      SymbolData type : lowerBounds) {
        list.add(((SymbolType)type).clone(parent,created));
      }
      result.lowerBounds=list;
    }
    parent.pop();
    created.pop();
  }
  return result;
}

Fixed version (ground truth):
private SymbolType clone(Stack<SymbolType> parent,Stack<SymbolType> created){
  SymbolType result=new SymbolType();
  result.setName(name);
  result.setClazz(clazz);
  result.setArrayCount(arrayCount);
  result.setField(field);
  result.setMethod(method);
  result.templateVariable=templateVariable;
  if (parent == null) {
    parent=new Stack<SymbolType>();
    created=new Stack<SymbolType>();
  }
  Iterator<SymbolType> it=parent.iterator();
  Iterator<SymbolType> it2=created.iterator();
  boolean found=false;
  while (it.hasNext() && !found) {
    SymbolType next=it.next();
    SymbolType created2=it2.next();
    if (next == this) {
      result=created2;
      found=true;
    }
  }
  if (!found) {
    parent.push(this);
    created.push(result);
    if (parameterizedTypes != null) {
      List<SymbolType> list=new LinkedList<SymbolType>();
      for (      SymbolData type : parameterizedTypes) {
        list.add(((SymbolType)type).clone(parent,created));
      }
      result.setParameterizedTypes(list);
    }
    if (upperBounds != null) {
      List<SymbolType> list=new LinkedList<SymbolType>();
      for (      SymbolData type : upperBounds) {
        list.add(((SymbolType)type).clone(parent,created));
      }
      result.upperBounds=list;
    }
    if (lowerBounds != null) {
      List<SymbolType> list=new LinkedList<SymbolType>();
      for (      SymbolData type : lowerBounds) {
        list.add(((SymbolType)type).clone(parent,created));
      }
      result.lowerBounds=list;
    }
    parent.pop();
    created.pop();
  }
  return result;
}
Program: 91205
Project: 91205
Buggy source:
@Override public void doPush(Symbol<?> symbol,SymbolTable table) throws Exception {
  if (symbol.getName().equals("String_Node_Str")) {
    Node node=symbol.getLocation();
    if (node instanceof EnumDeclaration) {
      EnumDeclaration ed=(EnumDeclaration)node;
      List<EnumConstantDeclaration> entries=ed.getEntries();
      for (      EnumConstantDeclaration ecd : entries) {
        table.pushSymbol(ecd.getName(),ReferenceType.ENUM_LITERAL,symbol.getType(),ecd);
      }
    }
  }
}

Fixed version (ground truth):
@Override public void doPush(Symbol<?> symbol,SymbolTable table) throws Exception {
  if (symbol.getName().equals("String_Node_Str")) {
    Node node=symbol.getLocation();
    if (node instanceof EnumDeclaration) {
      EnumDeclaration ed=(EnumDeclaration)node;
      List<EnumConstantDeclaration> entries=ed.getEntries();
      if (entries != null) {
        for (        EnumConstantDeclaration ecd : entries) {
          table.pushSymbol(ecd.getName(),ReferenceType.ENUM_LITERAL,symbol.getType(),ecd);
        }
      }
    }
  }
}
Program: 91206
Project: 91206
Buggy source:
public String generateAnonymousClass(){
  int j=indexStructure.size() - 2;
  String suffixName=null;
  while (j > 0 && suffixName == null) {
    Scope sc=indexStructure.get(j);
    Symbol<?> rootSymbol=sc.getRootSymbol();
    if (rootSymbol != null) {
      SymbolDefinition sd=rootSymbol.getLocation();
      if (sd instanceof ObjectCreationExpr || sd instanceof TypeDeclaration || sd instanceof TypeDeclarationStmt) {
        sc.incrInnerAnonymousClassCounter();
        int num=sc.getInnerAnonymousClassCounter();
        suffixName="String_Node_Str" + num;
        return ((SymbolDataAware<?>)sd).getSymbolData().getName() + suffixName;
      }
    }
    j--;
  }
  return null;
}

Fixed version (ground truth):
public String generateAnonymousClass(){
  return getTypeAnonymousClassPreffix(false);
}
Program: 91208
Project: 91208
Buggy source:
@Override public SymbolData merge(SymbolData other){
  SymbolType result=null;
  if (other == null) {
    result=this;
  }
 else {
    List<Class<?>> bounds=ClassInspector.getTheNearestSuperClasses(getBoundClasses(),other.getBoundClasses());
    if (bounds.isEmpty()) {
      result=null;
    }
 else     if (bounds.size() == 1) {
      result=new SymbolType(bounds.get(0));
    }
 else {
      List<SymbolType> boundsList=new LinkedList<SymbolType>();
      for (      Class<?> bound : bounds) {
        boundsList.add(new SymbolType(bound));
      }
      result=new SymbolType(boundsList);
    }
    if (lowerBounds != null) {
      result.lowerBounds=new LinkedList<SymbolType>();
      for (      SymbolType st : lowerBounds) {
        result.lowerBounds.add(st.clone());
      }
    }
  }
  return result;
}

Fixed version (ground truth):
@Override public SymbolData merge(SymbolData other){
  SymbolType result=null;
  if (other == null) {
    result=this;
  }
 else {
    if (other.getArrayCount() == getArrayCount()) {
      List<Class<?>> bounds=ClassInspector.getTheNearestSuperClasses(getBoundClasses(),other.getBoundClasses());
      if (bounds.isEmpty()) {
        result=null;
      }
 else       if (bounds.size() == 1) {
        result=new SymbolType(bounds.get(0));
      }
 else {
        List<SymbolType> boundsList=new LinkedList<SymbolType>();
        for (        Class<?> bound : bounds) {
          boundsList.add(new SymbolType(bound));
        }
        result=new SymbolType(boundsList);
      }
      if (result != null) {
        if (lowerBounds != null) {
          result.lowerBounds=new LinkedList<SymbolType>();
          for (          SymbolType st : lowerBounds) {
            result.lowerBounds.add(st.clone());
          }
        }
        result.arrayCount=other.getArrayCount();
      }
    }
 else {
      result=new SymbolType(Object.class);
    }
  }
  return result;
}
Program: 91209
Project: 91209
Buggy source:
private void addType(String name){
  if (classLoader != null && name != null) {
    try {
      Class<?> clazz=Class.forName(name,false,classLoader);
      if (typeNames.add(name)) {
        typeTable.put(clazz.getSimpleName(),name);
      }
      Class<?>[] innerClasses=clazz.getDeclaredClasses();
      if (innerClasses != null) {
        for (int i=0; i < innerClasses.length; i++) {
          if (typeNames.add(innerClasses[i].getName())) {
            typeTable.put(innerClasses[i].getSimpleName(),innerClasses[i].getName());
          }
        }
      }
    }
 catch (    ClassNotFoundException e) {
      int index=name.lastIndexOf("String_Node_Str");
      if (index != -1) {
        name=name.substring(0,index) + "String_Node_Str" + name.substring(index + 1);
        try {
          Class<?> clazz=Class.forName(name,false,classLoader);
          if (typeNames.add(name)) {
            typeTable.put(clazz.getSimpleName(),name);
          }
        }
 catch (        ClassNotFoundException e1) {
          throw new RuntimeException("String_Node_Str" + name + "String_Node_Str",e);
        }
      }
 else {
        throw new RuntimeException("String_Node_Str" + name + "String_Node_Str",e);
      }
    }
  }
}

Fixed version (ground truth):
private void addType(String name){
  if (classLoader != null && name != null) {
    try {
      Class<?> clazz=Class.forName(name,false,classLoader);
      if (typeNames.add(name)) {
        typeTable.put(clazz.getSimpleName(),name);
      }
      Class<?>[] innerClasses=clazz.getDeclaredClasses();
      if (innerClasses != null) {
        for (int i=0; i < innerClasses.length; i++) {
          if (typeNames.add(innerClasses[i].getName())) {
            typeTable.put(innerClasses[i].getSimpleName(),innerClasses[i].getName());
          }
        }
      }
    }
 catch (    ClassNotFoundException e) {
      loadInnerClass(name);
    }
catch (    IncompatibleClassChangeError e2) {
      int index=name.lastIndexOf("String_Node_Str");
      if (index != -1) {
        addType(name.substring(0,index));
      }
    }
  }
}
Program: 91210
Project: 91210
Buggy source:
/** 
 * Called when this app is activated by CicadaService.  onDraw() will be triggered at the conlusion of this method.
 * @param mode the mode that the app is being activated in
 */
public abstract void onActivate(AppType mode);

Fixed version (ground truth):
/** 
 * Called when this app is activated by CicadaService.  onDraw() will be triggered at the conclusion of this method.
 * @param mode the mode that the app is being activated in
 */
public abstract void onActivate(AppType mode);
Program: 91211
Project: 91211
Buggy source:
private void minimizeToTray(){
  if (!SystemTray.isSupported()) {
    System.out.println("String_Node_Str");
    return;
  }
  final PopupMenu popup=new PopupMenu();
  final TrayIcon trayIcon=new TrayIcon(Toolkit.getDefaultToolkit().getImage("String_Node_Str"),"String_Node_Str",popup);
  final SystemTray tray=SystemTray.getSystemTray();
  MenuItem showItem=new MenuItem("String_Node_Str");
  MenuItem hideItem=new MenuItem("String_Node_Str");
  MenuItem exitItem=new MenuItem("String_Node_Str");
  showItem.addActionListener(showListener);
  hideItem.addActionListener(hideListener);
  exitItem.addActionListener(exitListener);
  popup.add(showItem);
  popup.addSeparator();
  popup.add(hideItem);
  popup.addSeparator();
  popup.add(exitItem);
  trayIcon.setPopupMenu(popup);
  try {
    tray.add(trayIcon);
  }
 catch (  AWTException ex) {
    System.out.println(ex.toString() + "String_Node_Str");
  }
}

Fixed version (ground truth):
private void minimizeToTray(){
  if (!SystemTray.isSupported()) {
    Mediator.getLogger(DaemonManager.class.getName()).log(Level.INFO,"String_Node_Str");
    return;
  }
  final PopupMenu popup=new PopupMenu();
  final TrayIcon trayIcon=new TrayIcon(Toolkit.getDefaultToolkit().getImage("String_Node_Str"),"String_Node_Str",popup);
  final SystemTray tray=SystemTray.getSystemTray();
  MenuItem showItem=new MenuItem("String_Node_Str");
  MenuItem hideItem=new MenuItem("String_Node_Str");
  MenuItem exitItem=new MenuItem("String_Node_Str");
  showItem.addActionListener(showListener);
  hideItem.addActionListener(hideListener);
  exitItem.addActionListener(exitListener);
  popup.add(showItem);
  popup.addSeparator();
  popup.add(hideItem);
  popup.addSeparator();
  popup.add(exitItem);
  trayIcon.setPopupMenu(popup);
  try {
    tray.add(trayIcon);
  }
 catch (  AWTException ex) {
    Mediator.getLogger(DaemonManager.class.getName()).log(Level.INFO,null,ex);
  }
}
Program: 91212
Project: 91212
Buggy source:
public ShadowResultSet mine(Table table) throws InaccessibleConfigurationFileException, SQLException, DriverNotFoundException {
  ShadowResultSet srs=null;
  try {
    String sql="String_Node_Str";
    for (    Column c : table.getColumnList()) {
      sql+=c.getId() + "String_Node_Str";
    }
    sql=sql.substring(0,sql.length() - 2);
    sql+="String_Node_Str";
    ResultSet rs=statement.executeQuery(sql);
    Mediator.getLogger(ShadowDataMiner.class.getName()).log(Level.FINEST,sql);
    srs=new ShadowResultSet(rs);
  }
  finally {
  }
  return srs;
}

Fixed version (ground truth):
public ShadowResultSet mine(Table table) throws InaccessibleConfigurationFileException, SQLException, DriverNotFoundException {
  ShadowResultSet srs=null;
  try {
    String sql="String_Node_Str";
    for (    Column c : table.getColumnList()) {
      sql+=c.getId() + "String_Node_Str";
    }
    sql=sql.substring(0,sql.length() - 2);
    sql+="String_Node_Str";
    Mediator.getLogger(ShadowDataMiner.class.getName()).log(Level.FINEST,sql);
    ResultSet rs=statement.executeQuery(sql);
    srs=new ShadowResultSet(rs);
  }
  finally {
  }
  return srs;
}
Program: 91213
Project: 91213
Buggy source:
/** 
 * Gets all the rows from a source table, returned as a ResultSet
 * @param table
 * @return
 * @throws SQLException 
 */
public SourceResultSet mine(Table table) throws SQLException {
  SourceResultSet srs=null;
  try {
    String compositePK=getQueryCustomizer().buildCompositePrimaryKey(table);
    String asciiCompositePK=getQueryCustomizer().buildAsciiCompositePrimaryKey(compositePK);
    String sql="String_Node_Str" + asciiCompositePK + "String_Node_Str"+ compositePK+ "String_Node_Str";
    String prefix=getQueryCustomizer().getOpenningSafetyPad();
    String suffix=getQueryCustomizer().getClosingSafetyPad();
    for (    Column column : table.getColumnList()) {
      sql+="String_Node_Str" + prefix + column.getName()+ suffix+ "String_Node_Str"+ column.getId();
    }
    sql+="String_Node_Str" + prefix + table.getName()+ suffix+ "String_Node_Str"+ compositePK+ "String_Node_Str";
    ResultSet rs=statement.executeQuery(sql);
    Mediator.getLogger(SourceDataMiner.class.getName()).log(Level.FINEST,sql);
    srs=new SourceResultSet(rs);
  }
  finally {
  }
  return srs;
}

Fixed version (ground truth):
/** 
 * Gets all the rows from a source table, returned as a ResultSet
 * @param table
 * @return
 * @throws SQLException
 */
public SourceResultSet mine(Table table) throws SQLException {
  SourceResultSet srs=null;
  try {
    String compositePK=getQueryCustomizer().buildCompositePrimaryKey(table);
    String asciiCompositePK=getQueryCustomizer().buildAsciiCompositePrimaryKey(compositePK);
    String sql="String_Node_Str" + asciiCompositePK + "String_Node_Str"+ compositePK+ "String_Node_Str";
    String prefix=getQueryCustomizer().getOpenningSafetyPad();
    String suffix=getQueryCustomizer().getClosingSafetyPad();
    for (    Column column : table.getColumnList()) {
      sql+="String_Node_Str" + prefix + column.getName()+ suffix+ "String_Node_Str"+ column.getId();
    }
    sql+="String_Node_Str" + prefix + table.getName()+ suffix+ "String_Node_Str"+ compositePK+ "String_Node_Str";
    Mediator.getLogger(SourceDataMiner.class.getName()).log(Level.FINEST,sql);
    ResultSet rs=statement.executeQuery(sql);
    srs=new SourceResultSet(rs);
  }
  finally {
  }
  return srs;
}
Program: 91214
Project: 91214
Buggy source:
public void synchronize() throws InaccessibleConfigurationFileException, DriverNotFoundException, SQLException {
  try {
    List<SchemaTransaction> schemaTransactionList=new SchemaSynchronizer().generate();
    connectToShadow();
    connection.setAutoCommit(false);
    Statement statement=connection.createStatement();
    for (    SchemaTransaction schemaTransaction : schemaTransactionList) {
      Mediator.getLogger(SchemaSynchronizer.class.getName()).log(Level.FINEST,TransactionConverter.convertToSQL(schemaTransaction));
      System.out.println(TransactionConverter.convertToSQL(schemaTransaction));
      if (statement.executeUpdate(TransactionConverter.convertToSQL(schemaTransaction),Statement.RETURN_GENERATED_KEYS) == 1) {
        ResultSet rs=statement.getGeneratedKeys();
        if (rs.next()) {
          if (schemaTransaction.getTarget().getClass() == Database.class) {
            ((Database)schemaTransaction.getTarget()).setId(rs.getInt(1));
          }
 else           if (schemaTransaction.getTarget().getClass() == Table.class) {
            ((Table)schemaTransaction.getTarget()).setId(rs.getInt(1));
          }
 else           if (schemaTransaction.getTarget().getClass() == Column.class) {
            ((Column)schemaTransaction.getTarget()).setId(rs.getInt(1));
          }
        }
      }
    }
    connection.commit();
    statement.close();
  }
  finally {
    disconnectFromShadow();
  }
}

Fixed version (ground truth):
public void synchronize() throws InaccessibleConfigurationFileException, DriverNotFoundException, SQLException {
  try {
    List<SchemaTransaction> schemaTransactionList=new SchemaSynchronizer().generate();
    connectToShadow();
    connection.setAutoCommit(false);
    Statement statement=connection.createStatement();
    for (    SchemaTransaction schemaTransaction : schemaTransactionList) {
      Mediator.getLogger(SchemaSynchronizer.class.getName()).log(Level.FINEST,TransactionConverter.convertToSQL(schemaTransaction));
      if (statement.executeUpdate(TransactionConverter.convertToSQL(schemaTransaction),Statement.RETURN_GENERATED_KEYS) == 1) {
        ResultSet rs=statement.getGeneratedKeys();
        if (rs.next()) {
          if (schemaTransaction.getTarget().getClass() == Database.class) {
            ((Database)schemaTransaction.getTarget()).setId(rs.getInt(1));
          }
 else           if (schemaTransaction.getTarget().getClass() == Table.class) {
            ((Table)schemaTransaction.getTarget()).setId(rs.getInt(1));
          }
 else           if (schemaTransaction.getTarget().getClass() == Column.class) {
            ((Column)schemaTransaction.getTarget()).setId(rs.getInt(1));
          }
        }
      }
    }
    connection.commit();
    statement.close();
  }
  finally {
    disconnectFromShadow();
  }
}
Program: 91215
Project: 91215
Buggy source:
private void populateTableList(Database db,boolean replicable) throws SQLException {
  Statement statement=connection.createStatement();
  String sql="String_Node_Str";
  ResultSet rs=statement.executeQuery(sql);
  Mediator.getLogger(ShadowSchemaMiner.class.getName()).log(Level.FINEST,sql);
  while (rs.next()) {
    Table table=new Table(rs.getInt("String_Node_Str"),rs.getString("String_Node_Str"),rs.getString("String_Node_Str"));
    table.setDatabase(db);
    if (replicable) {
      populateColumnList(table);
    }
 else {
      populateReplicableColumnList(table);
    }
    db.getTableList().add(table);
  }
  rs.close();
  statement.close();
}

Fixed version (ground truth):
private void populateTableList(Database db,boolean replicable) throws SQLException {
  Statement statement=connection.createStatement();
  String sql="String_Node_Str" + db.getId() + "String_Node_Str";
  Mediator.getLogger(ShadowSchemaMiner.class.getName()).log(Level.FINEST,sql);
  ResultSet rs=statement.executeQuery(sql);
  while (rs.next()) {
    Table table=new Table(rs.getInt("String_Node_Str"),rs.getString("String_Node_Str"),rs.getString("String_Node_Str"));
    table.setDatabase(db);
    if (replicable) {
      populateColumnList(table);
    }
 else {
      populateReplicableColumnList(table);
    }
    db.getTableList().add(table);
  }
  rs.close();
  statement.close();
}
Program: 91216
Project: 91216
Buggy source:
private Database extractDatabase() throws SQLException {
  Database db=null;
  Statement statement=connection.createStatement();
  String sql="String_Node_Str" + database + "String_Node_Str";
  ResultSet rs=statement.executeQuery(sql);
  Mediator.getLogger(ShadowSchemaMiner.class.getName()).log(Level.FINEST,sql);
  if (rs.next()) {
    db=new Database(rs.getInt("String_Node_Str"),rs.getString("String_Node_Str"));
  }
  rs.close();
  statement.close();
  return db;
}

Fixed version (ground truth):
private Database extractDatabase() throws SQLException {
  Database db=null;
  Statement statement=connection.createStatement();
  String sql="String_Node_Str" + database + "String_Node_Str";
  Mediator.getLogger(ShadowSchemaMiner.class.getName()).log(Level.FINEST,sql);
  ResultSet rs=statement.executeQuery(sql);
  if (rs.next()) {
    db=new Database(rs.getInt("String_Node_Str"),rs.getString("String_Node_Str"));
  }
  rs.close();
  statement.close();
  return db;
}
Program: 91217
Project: 91217
Buggy source:
private void populateColumnList(Table table) throws SQLException {
  Statement statement=connection.createStatement();
  String sql="String_Node_Str";
  ResultSet rs=statement.executeQuery(sql);
  Mediator.getLogger(ShadowSchemaMiner.class.getName()).log(Level.FINEST,sql);
  while (rs.next()) {
    Column column=new Column(rs.getInt("String_Node_Str"),rs.getString("String_Node_Str"),rs.getInt("String_Node_Str"),rs.getString("String_Node_Str"),rs.getInt("String_Node_Str"),rs.getBoolean("String_Node_Str"));
    column.setTable(table);
    table.getColumnList().add(column);
  }
  rs.close();
  statement.close();
}

Fixed version (ground truth):
private void populateColumnList(Table table) throws SQLException {
  Statement statement=connection.createStatement();
  String sql="String_Node_Str" + table.getId() + "String_Node_Str";
  Mediator.getLogger(ShadowSchemaMiner.class.getName()).log(Level.FINEST,sql);
  ResultSet rs=statement.executeQuery(sql);
  while (rs.next()) {
    Column column=new Column(rs.getInt("String_Node_Str"),rs.getString("String_Node_Str"),rs.getInt("String_Node_Str"),rs.getString("String_Node_Str"),rs.getInt("String_Node_Str"),rs.getBoolean("String_Node_Str"));
    column.setTable(table);
    table.getColumnList().add(column);
  }
  rs.close();
  statement.close();
}
Program: 91218
Project: 91218
Buggy source:
private void populateReplicableColumnList(Table table) throws SQLException {
  Statement statement=connection.createStatement();
  String sql="String_Node_Str" + table.getId() + "String_Node_Str";
  ResultSet rs=statement.executeQuery(sql);
  Mediator.getLogger(ShadowSchemaMiner.class.getName()).log(Level.FINEST,sql);
  while (rs.next()) {
    Column cs=new Column(rs.getInt("String_Node_Str"),rs.getString("String_Node_Str"),rs.getInt("String_Node_Str"),rs.getString("String_Node_Str"),rs.getInt("String_Node_Str"),rs.getBoolean("String_Node_Str"));
    cs.setTable(table);
    table.getColumnList().add(cs);
  }
  rs.close();
  statement.close();
}

Fixed version (ground truth):
private void populateReplicableColumnList(Table table) throws SQLException {
  Statement statement=connection.createStatement();
  String sql="String_Node_Str" + table.getId() + "String_Node_Str";
  Mediator.getLogger(ShadowSchemaMiner.class.getName()).log(Level.FINEST,sql);
  ResultSet rs=statement.executeQuery(sql);
  while (rs.next()) {
    Column cs=new Column(rs.getInt("String_Node_Str"),rs.getString("String_Node_Str"),rs.getInt("String_Node_Str"),rs.getString("String_Node_Str"),rs.getInt("String_Node_Str"),rs.getBoolean("String_Node_Str"));
    cs.setTable(table);
    table.getColumnList().add(cs);
  }
  rs.close();
  statement.close();
}
Program: 91219
Project: 91219
Buggy source:
@Override public void run(){
  try {
    Date since=null;
    if (lookback > 0) {
      Date now=new Date();
      since=new Date(now.getTime() - lookback);
    }
    List<RecordSource> recordSourceList=new ResourceManager().loadRecordSources();
    if ("String_Node_Str".equalsIgnoreCase(method)) {
      while (true) {
        work(recordSourceList,since);
        Thread.sleep(interval);
      }
    }
 else {
      DateFormat dateFormat=new SimpleDateFormat("String_Node_Str");
      while (true) {
        String currentTime=dateFormat.format(new Date());
        if (currentTime.equalsIgnoreCase(timeOfDay)) {
          work(recordSourceList,since);
        }
      }
    }
  }
 catch (  InterruptedException ex) {
    Mediator.getLogger(Daemon.class.getName()).log(Level.SEVERE,null,ex);
    System.exit(1);
  }
catch (  BadRecordSourceException ex) {
    Mediator.getLogger(Daemon.class.getName()).log(Level.SEVERE,null,ex);
    System.exit(1);
  }
catch (  ParserConfigurationException ex) {
    Mediator.getLogger(Daemon.class.getName()).log(Level.SEVERE,null,ex);
    System.exit(1);
  }
catch (  SAXException ex) {
    Mediator.getLogger(Daemon.class.getName()).log(Level.SEVERE,null,ex);
    System.exit(1);
  }
catch (  IOException ex) {
    Mediator.getLogger(Daemon.class.getName()).log(Level.SEVERE,null,ex);
    System.exit(1);
  }
catch (  SQLException ex) {
    Mediator.getLogger(Daemon.class.getName()).log(Level.SEVERE,null,ex);
    System.exit(1);
  }
}

Fixed version (ground truth):
@Override public void run(){
  try {
    Date since=null;
    if (lookback > 0) {
      Date now=new Date();
      since=new Date(now.getTime() - lookback);
    }
    List<RecordSource> recordSourceList=new ResourceManager().loadRecordSources();
    if ("String_Node_Str".equalsIgnoreCase(method)) {
      while (true) {
        work(recordSourceList,since);
        Thread.sleep(interval);
      }
    }
 else {
      DateFormat dateFormat=new SimpleDateFormat("String_Node_Str");
      while (true) {
        String currentTime=dateFormat.format(new Date());
        if (currentTime.equalsIgnoreCase(timeOfDay)) {
          work(recordSourceList,since);
        }
      }
    }
  }
 catch (  InterruptedException ex) {
    Mediator.getLogger(Daemon.class.getName()).log(Level.SEVERE,null,ex);
  }
catch (  BadRecordSourceException ex) {
    Mediator.getLogger(Daemon.class.getName()).log(Level.SEVERE,null,ex);
    System.exit(1);
  }
catch (  ParserConfigurationException ex) {
    Mediator.getLogger(Daemon.class.getName()).log(Level.SEVERE,null,ex);
    System.exit(1);
  }
catch (  SAXException ex) {
    Mediator.getLogger(Daemon.class.getName()).log(Level.SEVERE,null,ex);
    System.exit(1);
  }
catch (  IOException ex) {
    Mediator.getLogger(Daemon.class.getName()).log(Level.SEVERE,null,ex);
  }
catch (  SQLException ex) {
    Mediator.getLogger(Daemon.class.getName()).log(Level.SEVERE,null,ex);
  }
}
Program: 91220
Project: 91220
Buggy source:
private static void log(Level level,String msg,boolean quit,int exitCode){
  Logger.getLogger(CpadDataExtract.class.getName()).log(level,msg);
  if (quit) {
    System.exit(exitCode);
  }
}

Fixed version (ground truth):
private static void log(Level level,String msg,boolean quit,int exitCode){
  Mediator.getLogger(CpadDataExtract.class.getName()).log(level,msg);
  if (quit) {
    System.exit(exitCode);
  }
}
Program: 91223
Project: 91223
Buggy source:
public static void main(String[] args){
  try {
    companionProps=loadProperties("String_Node_Str");
    String method=companionProps.getProperty("String_Node_Str");
    int interval=Integer.parseInt(companionProps.getProperty("String_Node_Str"));
    String timeOfDay=companionProps.getProperty("String_Node_Str");
    if ("String_Node_Str".equalsIgnoreCase("String_Node_Str")) {
      while (true) {
        CpadDataExtract.work();
        Thread.sleep(interval);
      }
    }
 else     if ("String_Node_Str".equalsIgnoreCase("String_Node_Str")) {
      DateFormat sdf=new SimpleDateFormat("String_Node_Str");
      String currentTime=sdf.format(new java.util.Date());
      while (true) {
        if (currentTime.equalsIgnoreCase(timeOfDay)) {
          CpadDataExtract.work();
        }
      }
    }
 else {
      log(Level.SEVERE,"String_Node_Str" + "String_Node_Str" + "String_Node_Str",1);
    }
  }
 catch (  InterruptedException ex) {
    Logger.getLogger(CpadDataExtract.class.getName()).log(Level.SEVERE,null,ex);
  }
catch (  FileNotFoundException ex) {
    Logger.getLogger(CpadDataExtract.class.getName()).log(Level.SEVERE,null,ex);
  }
}

Fixed version (ground truth):
public static void main(String[] args){
  try {
    new Mediator();
    companionProps=loadProperties("String_Node_Str");
    String method=companionProps.getProperty("String_Node_Str");
    int interval=Integer.parseInt(companionProps.getProperty("String_Node_Str"));
    String timeOfDay=companionProps.getProperty("String_Node_Str");
    if ("String_Node_Str".equalsIgnoreCase(method)) {
      while (true) {
        CpadDataExtract.work();
        Thread.sleep(interval);
      }
    }
 else {
      DateFormat sdf=new SimpleDateFormat("String_Node_Str");
      String currentTime=sdf.format(new java.util.Date());
      while (true) {
        if (currentTime.equalsIgnoreCase(timeOfDay)) {
          CpadDataExtract.work();
        }
      }
    }
  }
 catch (  InterruptedException ex) {
    Mediator.getLogger(CpadDataExtract.class.getName()).log(Level.SEVERE,null,ex);
  }
catch (  FileNotFoundException ex) {
    Mediator.getLogger(CpadDataExtract.class.getName()).log(Level.SEVERE,null,ex);
  }
}
Program: 91224
Project: 91224
Buggy source:
private static Properties loadProperties(String propertiesFile) throws FileNotFoundException {
  try {
    Properties properties=new Properties();
    File propFile=new File(propertiesFile);
    String propFilePath=propFile.getAbsolutePath();
    FileInputStream fis=new FileInputStream(propFilePath);
    properties.load(fis);
    return properties;
  }
 catch (  IOException ex) {
    Logger.getLogger(CpadDataExtract.class.getName()).log(Level.SEVERE,"String_Node_Str" + propertiesFile,ex);
    throw new FileNotFoundException("String_Node_Str" + propertiesFile);
  }
}

Fixed version (ground truth):
private static Properties loadProperties(String propertiesFile) throws FileNotFoundException {
  try {
    Properties properties=new Properties();
    File propFile=new File(propertiesFile);
    String propFilePath=propFile.getAbsolutePath();
    FileInputStream fis=new FileInputStream(propFilePath);
    properties.load(fis);
    return properties;
  }
 catch (  IOException ex) {
    Mediator.getLogger(CpadDataExtract.class.getName()).log(Level.SEVERE,"String_Node_Str" + propertiesFile,ex);
    throw new FileNotFoundException("String_Node_Str" + propertiesFile);
  }
}
Program: 91225
Project: 91225
Buggy source:
/** 
 * Reset hard from unclean condition. <p> WorkDir: Empty <br/> Index: f/g <br/> Merge: x
 * @throws Exception
 */
@Test public void testResetHardFromIndexEntryWithoutFileToTreeWithoutFile() throws Exception {
  ChangeRecorder recorder=new ChangeRecorder();
  ListenerHandle handle=null;
  try (Git git=new Git(db)){
    handle=db.getListenerList().addWorkingTreeModifiedListener(recorder);
    writeTrashFile("String_Node_Str","String_Node_Str");
    git.add().addFilepattern("String_Node_Str").call();
    RevCommit id1=git.commit().setMessage("String_Node_Str").call();
    writeTrashFile("String_Node_Str","String_Node_Str");
    git.rm().addFilepattern("String_Node_Str").call();
    recorder.assertEvent(ChangeRecorder.EMPTY,new String[]{"String_Node_Str"});
    git.add().addFilepattern("String_Node_Str").call();
    git.commit().setMessage("String_Node_Str").call();
    deleteTrashFile("String_Node_Str");
    deleteTrashFile("String_Node_Str");
    git.reset().setMode(ResetType.HARD).setRef(id1.getName()).call();
    assertIndex(mkmap("String_Node_Str","String_Node_Str"));
    recorder.assertEvent(new String[]{"String_Node_Str"},ChangeRecorder.EMPTY);
  }
  finally {
    if (handle != null) {
      handle.remove();
    }
  }
}

Fixed version (ground truth):
/** 
 * Reset hard from unclean condition. <p> WorkDir: Empty <br> Index: f/g <br> Merge: x
 * @throws Exception
 */
@Test public void testResetHardFromIndexEntryWithoutFileToTreeWithoutFile() throws Exception {
  ChangeRecorder recorder=new ChangeRecorder();
  ListenerHandle handle=null;
  try (Git git=new Git(db)){
    handle=db.getListenerList().addWorkingTreeModifiedListener(recorder);
    writeTrashFile("String_Node_Str","String_Node_Str");
    git.add().addFilepattern("String_Node_Str").call();
    RevCommit id1=git.commit().setMessage("String_Node_Str").call();
    writeTrashFile("String_Node_Str","String_Node_Str");
    git.rm().addFilepattern("String_Node_Str").call();
    recorder.assertEvent(ChangeRecorder.EMPTY,new String[]{"String_Node_Str"});
    git.add().addFilepattern("String_Node_Str").call();
    git.commit().setMessage("String_Node_Str").call();
    deleteTrashFile("String_Node_Str");
    deleteTrashFile("String_Node_Str");
    git.reset().setMode(ResetType.HARD).setRef(id1.getName()).call();
    assertIndex(mkmap("String_Node_Str","String_Node_Str"));
    recorder.assertEvent(new String[]{"String_Node_Str"},ChangeRecorder.EMPTY);
  }
  finally {
    if (handle != null) {
      handle.remove();
    }
  }
}
Program: 91226
Project: 91226
Buggy source:
/** 
 * Assert which renames should have happened, in traversal order.
 * @param expectedRenames the rename specs, each one in the form "srcPath->destPath"
 */
protected void assertRenames(String... expectedRenames){
  Assert.assertEquals("String_Node_Str" + expectedRenames.length + "String_Node_Str"+ diffCollector.diffs.size(),expectedRenames.length,diffCollector.diffs.size());
  for (int i=0; i < expectedRenames.length; i++) {
    DiffEntry diff=diffCollector.diffs.get(i);
    Assert.assertNotNull(diff);
    String[] split=expectedRenames[i].split("String_Node_Str");
    Assert.assertNotNull(split);
    Assert.assertEquals(2,split.length);
    String src=split[0];
    String target=split[1];
    Assert.assertEquals(src,diff.getOldPath());
    Assert.assertEquals(target,diff.getNewPath());
  }
}

Fixed version (ground truth):
/** 
 * Assert which renames should have happened, in traversal order.
 * @param expectedRenames the rename specs, each one in the form "srcPath-&gt;destPath"
 */
protected void assertRenames(String... expectedRenames){
  Assert.assertEquals("String_Node_Str" + expectedRenames.length + "String_Node_Str"+ diffCollector.diffs.size(),expectedRenames.length,diffCollector.diffs.size());
  for (int i=0; i < expectedRenames.length; i++) {
    DiffEntry diff=diffCollector.diffs.get(i);
    Assert.assertNotNull(diff);
    String[] split=expectedRenames[i].split("String_Node_Str");
    Assert.assertNotNull(split);
    Assert.assertEquals(2,split.length);
    String src=split[0];
    String target=split[1];
    Assert.assertEquals(src,diff.getOldPath());
    Assert.assertEquals(target,diff.getNewPath());
  }
}
Program: 91227
Project: 91227
Buggy source:
/** 
 * Steps: 1.Add file 'b' 2.Commit 3.Create branch '1' 4.Add symlink 'a' 5.Commit 6.Checkout branch '1' The working tree should not contain 'a' -> FileMode.MISSING after the checkout.
 * @throws Exception
 */
@Test public void fileModeTestMissingThenSymlink() throws Exception {
  try (Git git=new Git(db);TreeWalk tw=new TreeWalk(db)){
    writeTrashFile("String_Node_Str","String_Node_Str");
    git.add().addFilepattern("String_Node_Str").call();
    RevCommit commit1=git.commit().setMessage("String_Node_Str").call();
    Ref branch_1=git.branchCreate().setName("String_Node_Str").call();
    FileUtils.createSymLink(new File(db.getWorkTree(),"String_Node_Str"),"String_Node_Str");
    git.add().addFilepattern("String_Node_Str").call();
    RevCommit commit2=git.commit().setMessage("String_Node_Str").call();
    git.checkout().setName(branch_1.getName()).call();
    tw.addTree(commit1.getTree());
    tw.addTree(commit2.getTree());
    List<DiffEntry> scan=DiffEntry.scan(tw);
    assertEquals(1,scan.size());
    assertEquals(FileMode.SYMLINK,scan.get(0).getNewMode());
    assertEquals(FileMode.MISSING,scan.get(0).getOldMode());
  }
 }

Fixed version (ground truth):
/** 
 * Steps: 1.Add file 'b' 2.Commit 3.Create branch '1' 4.Add symlink 'a' 5.Commit 6.Checkout branch '1' The working tree should not contain 'a' -&gt; FileMode.MISSING after the checkout.
 * @throws Exception
 */
@Test public void fileModeTestMissingThenSymlink() throws Exception {
  try (Git git=new Git(db);TreeWalk tw=new TreeWalk(db)){
    writeTrashFile("String_Node_Str","String_Node_Str");
    git.add().addFilepattern("String_Node_Str").call();
    RevCommit commit1=git.commit().setMessage("String_Node_Str").call();
    Ref branch_1=git.branchCreate().setName("String_Node_Str").call();
    FileUtils.createSymLink(new File(db.getWorkTree(),"String_Node_Str"),"String_Node_Str");
    git.add().addFilepattern("String_Node_Str").call();
    RevCommit commit2=git.commit().setMessage("String_Node_Str").call();
    git.checkout().setName(branch_1.getName()).call();
    tw.addTree(commit1.getTree());
    tw.addTree(commit2.getTree());
    List<DiffEntry> scan=DiffEntry.scan(tw);
    assertEquals(1,scan.size());
    assertEquals(FileMode.SYMLINK,scan.get(0).getNewMode());
    assertEquals(FileMode.MISSING,scan.get(0).getOldMode());
  }
 }
Program: 91228
Project: 91228
Buggy source:
/** 
 * Get <code>RefSpec</code>s. </p>
 * @return the ref specs
 */
public List<RefSpec> getRefSpecs(){
  return refSpecs;
}

Fixed version (ground truth):
/** 
 * Get   {@code RefSpec}s.
 * @return the ref specs
 */
public List<RefSpec> getRefSpecs(){
  return refSpecs;
}
Program: 91229
Project: 91229
Buggy source:
/** 
 * Get time to live for garbage packs.
 * @return garbage packs older than this limit (in milliseconds) will bepruned as part of the garbage collection process if the value is > 0, otherwise garbage packs are retained.
 */
public long getGarbageTtlMillis(){
  return garbageTtlMillis;
}

Fixed version (ground truth):
/** 
 * Get time to live for garbage packs.
 * @return garbage packs older than this limit (in milliseconds) will bepruned as part of the garbage collection process if the value is &gt; 0, otherwise garbage packs are retained.
 */
public long getGarbageTtlMillis(){
  return garbageTtlMillis;
}
Program: 91230
Project: 91230
Buggy source:
/** 
 * Set the   {@code gc --auto} option.With this option, gc checks whether any housekeeping is required; if not, it exits without performing any work. Some JGit commands run {@code gc --auto} after performing operations that could create manyloose objects. <p/> Housekeeping is required if there are too many loose objects or too many packs in the repository. If the number of loose objects exceeds the value of the gc.auto option JGit GC consolidates all existing packs into a single pack (equivalent to  {@code -A} option), whereas git-core wouldcombine all loose objects into a single pack using  {@code repack -d -l}. Setting the value of   {@code gc.auto} to 0 disables automatic packing ofloose objects. <p/> If the number of packs exceeds the value of  {@code gc.autoPackLimit}, then existing packs (except those marked with a .keep file) are consolidated into a single pack by using the   {@code -A} option of repack.Setting  {@code gc.autoPackLimit} to 0 disables automatic consolidation ofpacks. <p/> Like git the following jgit commands run auto gc: <ul> <li>fetch</li> <li>merge</li> <li>rebase</li> <li>receive-pack</li> </ul> The auto gc for receive-pack can be suppressed by setting the config option  {@code receive.autogc = false}
 * @param auto defines whether gc should do automatic housekeeping
 */
public void setAuto(boolean auto){
  this.automatic=auto;
}

Fixed version (ground truth):
/** 
 * Set the   {@code gc --auto} option.With this option, gc checks whether any housekeeping is required; if not, it exits without performing any work. Some JGit commands run {@code gc --auto} after performing operations that could create manyloose objects. <p> Housekeeping is required if there are too many loose objects or too many packs in the repository. If the number of loose objects exceeds the value of the gc.auto option JGit GC consolidates all existing packs into a single pack (equivalent to  {@code -A} option), whereas git-core wouldcombine all loose objects into a single pack using  {@code repack -d -l}. Setting the value of   {@code gc.auto} to 0 disables automatic packing ofloose objects. <p> If the number of packs exceeds the value of  {@code gc.autoPackLimit}, then existing packs (except those marked with a .keep file) are consolidated into a single pack by using the   {@code -A} option of repack.Setting  {@code gc.autoPackLimit} to 0 disables automatic consolidation ofpacks. <p> Like git the following jgit commands run auto gc: <ul> <li>fetch</li> <li>merge</li> <li>rebase</li> <li>receive-pack</li> </ul> The auto gc for receive-pack can be suppressed by setting the config option  {@code receive.autogc = false}
 * @param auto defines whether gc should do automatic housekeeping
 */
public void setAuto(boolean auto){
  this.automatic=auto;
}
Program: 91231
Project: 91231
Buggy source:
/** 
 * Get the remote this branch is configured to fetch from/push to>
 * @return the remote this branch is configured to fetch from/push to, or{@code null} if not defined
 * @since 3.5
 */
public String getRemote(){
  return config.getString(ConfigConstants.CONFIG_BRANCH_SECTION,branchName,ConfigConstants.CONFIG_KEY_REMOTE);
}

Fixed version (ground truth):
/** 
 * Get the remote this branch is configured to fetch from/push to
 * @return the remote this branch is configured to fetch from/push to, or{@code null} if not defined
 * @since 3.5
 */
public String getRemote(){
  return config.getString(ConfigConstants.CONFIG_BRANCH_SECTION,branchName,ConfigConstants.CONFIG_KEY_REMOTE);
}
Program: 91233
Project: 91233
Buggy source:
/** 
 * Check whether any housekeeping is required; if yes, run garbage collection; if not, exit without performing any work. Some JGit commands run autoGC after performing operations that could create many loose objects. <p/> Currently this option is supported for repositories of type  {@code FileRepository} only. See{@link org.eclipse.jgit.internal.storage.file.GC#setAuto(boolean)} forconfiguration details.
 * @param monitor to report progress
 * @since 4.6
 */
public void autoGC(ProgressMonitor monitor){
}

Fixed version (ground truth):
/** 
 * Check whether any housekeeping is required; if yes, run garbage collection; if not, exit without performing any work. Some JGit commands run autoGC after performing operations that could create many loose objects. <p> Currently this option is supported for repositories of type  {@code FileRepository} only. See{@link org.eclipse.jgit.internal.storage.file.GC#setAuto(boolean)} forconfiguration details.
 * @param monitor to report progress
 * @since 4.6
 */
public void autoGC(ProgressMonitor monitor){
}
Program: 91234
Project: 91234
Buggy source:
/** 
 * <Get the URI as an ASCII string.
 * @return the URI as an ASCII string. Password is not included.
 */
public String toASCIIString(){
  return format(false,true);
}

Fixed version (ground truth):
/** 
 * Get the URI as an ASCII string.
 * @return the URI as an ASCII string. Password is not included.
 */
public String toASCIIString(){
  return format(false,true);
}
Program: 91237
Project: 91237
Buggy source:
/** 
 * @return the matching candidates (or at least a subset of them). 
 */
public Collection<ObjectId> getCandidates(){
  return candidates;
}

Fixed version (ground truth):
/** 
 * Get the matching candidates (or at least a subset of them)
 * @return the matching candidates (or at least a subset of them)
 */
public Collection<ObjectId> getCandidates(){
  return candidates;
}
Program: 91238
Project: 91238
Buggy source:
/** 
 * @return the AbbreviatedObjectId that has more than one result. 
 */
public AbbreviatedObjectId getAbbreviatedObjectId(){
  return missing;
}

Fixed version (ground truth):
/** 
 * Get the   {@code AbbreviatedObjectId} that has more than one result
 * @return the {@code AbbreviatedObjectId} that has more than one result
 */
public AbbreviatedObjectId getAbbreviatedObjectId(){
  return missing;
}
Program: 91239
Project: 91239
Buggy source:
/** 
 * @param message
 */
public CancelledException(String message){
  super(message);
}

Fixed version (ground truth):
/** 
 * Constructor for CancelledException
 * @param message error message
 */
public CancelledException(String message){
  super(message);
}
Program: 91240
Project: 91240
Buggy source:
/** 
 * @return the relative paths of the conflicting files (relative to theworking directory root).
 * @since 4.4
 */
public String[] getConflictingFiles(){
  return conflicting;
}

Fixed version (ground truth):
/** 
 * Get the relative paths of the conflicting files
 * @return the relative paths of the conflicting files (relative to theworking directory root).
 * @since 4.4
 */
public String[] getConflictingFiles(){
  return conflicting;
}
Program: 91241
Project: 91241
Buggy source:
/** 
 * Construct a CheckoutConflictException for the specified set of files
 * @param files
 */
public CheckoutConflictException(String[] files){
  super(MessageFormat.format(JGitText.get().checkoutConflictWithFiles,buildList(files)));
  conflicting=files;
}

Fixed version (ground truth):
/** 
 * Construct a CheckoutConflictException for the specified set of files
 * @param files an array of relative file paths
 */
public CheckoutConflictException(String[] files){
  super(MessageFormat.format(JGitText.get().checkoutConflictWithFiles,buildList(files)));
  conflicting=files;
}
Program: 91242
Project: 91242
Buggy source:
/** 
 * @param returnCode return code returned by the command
 * @param message error message
 * @param cause exception causing this exception
 */
public CommandFailedException(int returnCode,String message,Throwable cause){
  super(message,cause);
  this.returnCode=returnCode;
}

Fixed version (ground truth):
/** 
 * Constructor for CommandFailedException
 * @param returnCode return code returned by the command
 * @param message error message
 * @param cause exception causing this exception
 */
public CommandFailedException(int returnCode,String message,Throwable cause){
  super(message,cause);
  this.returnCode=returnCode;
}