Program: 32839
Project: 32839
Buggy source:
/** 
 * For implementing the ListEventListener interface.
 */
public void listChanged(ListEvent listChanges){
  int highestChangeIndex=0;
  while (listChanges.next()) {
    int changeIndex=listChanges.getIndex();
    int changeType=listChanges.getType();
    if (changeIndex < highestChangeIndex) {
      new Exception(name + "String_Node_Str" + changeCount+ "String_Node_Str"+ changeIndex+ "String_Node_Str"+ highestChangeIndex+ "String_Node_Str"+ listChanges).printStackTrace();
    }
    highestChangeIndex=changeIndex;
    if (changeIndex < 0)     new Exception(name + "String_Node_Str" + changeCount+ "String_Node_Str"+ changeIndex+ "String_Node_Str"+ listChanges).printStackTrace();
    if (changeType == ListEvent.INSERT) {
      if (changeIndex > size)       new Exception(name + "String_Node_Str" + changeCount+ "String_Node_Str"+ changeIndex+ "String_Node_Str"+ size+ "String_Node_Str"+ listChanges).printStackTrace();
      size++;
    }
 else     if (changeType == ListEvent.DELETE) {
      if (changeIndex >= size)       new Exception(name + "String_Node_Str" + changeCount+ "String_Node_Str"+ changeIndex+ "String_Node_Str"+ size+ "String_Node_Str"+ listChanges).printStackTrace();
      size--;
    }
 else     if (changeType == ListEvent.UPDATE) {
      if (changeIndex >= size)       new Exception(name + "String_Node_Str" + changeCount+ "String_Node_Str"+ changeIndex+ "String_Node_Str"+ size+ "String_Node_Str"+ listChanges).printStackTrace();
    }
  }
  if (size != source.size()) {
    new Exception(name + "String_Node_Str" + changeCount+ "String_Node_Str"+ size+ "String_Node_Str"+ source.size()+ "String_Node_Str"+ listChanges).printStackTrace();
  }
  changeCount++;
}

Fixed version (ground truth):
/** 
 * For implementing the ListEventListener interface.
 */
public void listChanged(ListEvent listChanges){
  if (verbose) {
    System.out.println(name + "String_Node_Str" + listChanges);
  }
  int highestChangeIndex=0;
  while (listChanges.next()) {
    int changeIndex=listChanges.getIndex();
    int changeType=listChanges.getType();
    if (changeIndex < highestChangeIndex) {
      new Exception(name + "String_Node_Str" + changeCount+ "String_Node_Str"+ changeIndex+ "String_Node_Str"+ highestChangeIndex+ "String_Node_Str"+ listChanges).printStackTrace();
    }
    highestChangeIndex=changeIndex;
    if (changeIndex < 0)     new Exception(name + "String_Node_Str" + changeCount+ "String_Node_Str"+ changeIndex+ "String_Node_Str"+ listChanges).printStackTrace();
    if (changeType == ListEvent.INSERT) {
      if (changeIndex > size)       new Exception(name + "String_Node_Str" + changeCount+ "String_Node_Str"+ changeIndex+ "String_Node_Str"+ size+ "String_Node_Str"+ listChanges).printStackTrace();
      size++;
    }
 else     if (changeType == ListEvent.DELETE) {
      if (changeIndex >= size)       new Exception(name + "String_Node_Str" + changeCount+ "String_Node_Str"+ changeIndex+ "String_Node_Str"+ size+ "String_Node_Str"+ listChanges).printStackTrace();
      size--;
    }
 else     if (changeType == ListEvent.UPDATE) {
      if (changeIndex >= size)       new Exception(name + "String_Node_Str" + changeCount+ "String_Node_Str"+ changeIndex+ "String_Node_Str"+ size+ "String_Node_Str"+ listChanges).printStackTrace();
    }
  }
  if (size != source.size()) {
    new Exception(name + "String_Node_Str" + changeCount+ "String_Node_Str"+ size+ "String_Node_Str"+ source.size()+ "String_Node_Str"+ listChanges).printStackTrace();
  }
  changeCount++;
}