nus-yam/ex-repair huggingface dataset:
Program: 82877
Project: 82877
Buggy source:
/** 
 * Create a parameterized type along with any necessary enclosing parameterized types. Enclosing parameterized types are necessary when the base type is a non-static member and the enclosing type is also generic.
 */
private static JParameterizedType createParameterizedTypeRecursive(JGenericType baseType,Map<JTypeParameter,JClassType> substitutionMap){
  JClassType enclosingType=baseType.getEnclosingType();
  if (baseType.isMemberType() && !baseType.isStatic()) {
    JGenericType isGenericEnclosingType=enclosingType.isGenericType();
    if (isGenericEnclosingType != null) {
      enclosingType=createParameterizedTypeRecursive(isGenericEnclosingType,substitutionMap);
    }
  }
  JTypeParameter[] typeParameters=baseType.getTypeParameters();
  JClassType[] newTypeArgs=new JClassType[typeParameters.length];
  TypeOracle oracle=baseType.getOracle();
  for (int i=0; i < newTypeArgs.length; ++i) {
    JClassType newTypeArg=substitutionMap.get(typeParameters[i]);
    if (newTypeArg == null) {
      newTypeArg=oracle.getWildcardType(true,typeParameters[i].getFirstBound());
    }
    newTypeArgs[i]=newTypeArg;
  }
  JParameterizedType parameterizedType=oracle.getParameterizedType(baseType,enclosingType,newTypeArgs);
  return parameterizedType;
}

Fixed version (ground truth):
/** 
 * Create a parameterized type along with any necessary enclosing parameterized types. Enclosing parameterized types are necessary when the base type is a non-static member and the enclosing type is also generic.
 */
private static JParameterizedType createParameterizedTypeRecursive(JGenericType baseType,Map<JTypeParameter,JClassType> substitutionMap){
  JClassType enclosingType=baseType.getEnclosingType();
  if (baseType.isMemberType() && !baseType.isStatic()) {
    JGenericType isGenericEnclosingType=enclosingType.isGenericType();
    if (isGenericEnclosingType != null) {
      enclosingType=createParameterizedTypeRecursive(isGenericEnclosingType,substitutionMap);
    }
  }
  JTypeParameter[] typeParameters=baseType.getTypeParameters();
  JClassType[] newTypeArgs=new JClassType[typeParameters.length];
  TypeOracle oracle=baseType.getOracle();
  for (int i=0; i < newTypeArgs.length; ++i) {
    JClassType newTypeArg=substitutionMap.get(typeParameters[i]);
    if (newTypeArg == null) {
      newTypeArg=oracle.getWildcardType(BoundType.EXTENDS,typeParameters[i].getFirstBound());
    }
    newTypeArgs[i]=newTypeArg;
  }
  JParameterizedType parameterizedType=oracle.getParameterizedType(baseType,enclosingType,newTypeArgs);
  return parameterizedType;
}
Program: 82878
Project: 82878
Buggy source:
/** 
 * Returns the lower bounds of this wildcard type. If no lower bounds were declared, an empty array is returned.
 * @return the lower bounds of this wildcard type
 */
public JClassType[] getLowerBounds(){
  if (lazyLowerBounds == null) {
    if (isUpperBound) {
      lazyLowerBounds=TypeOracle.NO_JCLASSES;
    }
 else {
      lazyLowerBounds=new JClassType[]{getFirstBound()};
    }
  }
  return lazyLowerBounds;
}

Fixed version (ground truth):
/** 
 * Returns the lower bounds of this wildcard type. If no lower bounds were declared, an empty array is returned.
 * @return the lower bounds of this wildcard type
 */
public JClassType[] getLowerBounds(){
  if (lazyLowerBounds == null) {
    if (isUpperBound()) {
      lazyLowerBounds=TypeOracle.NO_JCLASSES;
    }
 else {
      lazyLowerBounds=new JClassType[]{getFirstBound()};
    }
  }
  return lazyLowerBounds;
}
Program: 82879
Project: 82879
Buggy source:
@Override JClassType getSubstitutedType(JParameterizedType parameterizedType){
  return getOracle().getWildcardType(isUpperBound,getFirstBound().getSubstitutedType(parameterizedType));
}

Fixed version (ground truth):
@Override JClassType getSubstitutedType(JParameterizedType parameterizedType){
  return getOracle().getWildcardType(boundType,getFirstBound().getSubstitutedType(parameterizedType));
}
Program: 82880
Project: 82880
Buggy source:
/** 
 * Returns <code>true</code> if this instance has the same bounds that are requested.
 * @param otherWildcard
 * @return <code>true</code> if this instance has the same bounds that arerequested
 */
boolean boundsMatch(JWildcardType otherWildcard){
  return isUpperBound == otherWildcard.isUpperBound && getFirstBound() == otherWildcard.getFirstBound();
}

Fixed version (ground truth):
/** 
 * Returns <code>true</code> if this instance has the same bounds that are requested.
 * @param otherWildcard
 * @return <code>true</code> if this instance has the same bounds that arerequested
 */
boolean boundsMatch(JWildcardType otherWildcard){
  return isUpperBound() == otherWildcard.isUpperBound() && getFirstBound() == otherWildcard.getFirstBound();
}
Program: 82881
Project: 82881
Buggy source:
private String toString(boolean simpleName){
  String str="String_Node_Str" + (isUpperBound ? "String_Node_Str" : "String_Node_Str");
  if (simpleName) {
    return str + getFirstBound().getSimpleSourceName();
  }
 else {
    return str + getFirstBound().getParameterizedQualifiedSourceName();
  }
}

Fixed version (ground truth):
private String toString(boolean simpleName){
  String str="String_Node_Str";
  if (isUnbound()) {
    return str;
  }
 else {
    str+=(isUpperBound() ? "String_Node_Str" : "String_Node_Str");
    if (simpleName) {
      return str + getFirstBound().getSimpleSourceName();
    }
 else {
      return str + getFirstBound().getParameterizedQualifiedSourceName();
    }
  }
}
Program: 82882
Project: 82882
Buggy source:
public JWildcardType(boolean isUpperBound,JClassType typeBound){
  this.isUpperBound=isUpperBound;
  super.setBaseType(typeBound);
}

Fixed version (ground truth):
public JWildcardType(BoundType boundType,JClassType typeBound){
  this.boundType=boundType;
  super.setBaseType(typeBound);
}
Program: 82883
Project: 82883
Buggy source:
@Override public JClassType getErasedType(){
  if (isUpperBound) {
    return getFirstBound().getErasedType();
  }
  return getOracle().getJavaLangObject();
}

Fixed version (ground truth):
@Override public JClassType getErasedType(){
  if (isUpperBound()) {
    return getFirstBound().getErasedType();
  }
  return getOracle().getJavaLangObject();
}
Program: 82884
Project: 82884
Buggy source:
@Override public JClassType[] getSubtypes(){
  if (isUpperBound) {
    return getFirstBound().getSubtypes();
  }
  return TypeOracle.NO_JCLASSES;
}

Fixed version (ground truth):
@Override public JClassType[] getSubtypes(){
  if (isUpperBound()) {
    return getFirstBound().getSubtypes();
  }
  return TypeOracle.NO_JCLASSES;
}
Program: 82885
Project: 82885
Buggy source:
@Override public JClassType getSuperclass(){
  if (isUpperBound) {
    return getFirstBound();
  }
  return getOracle().getJavaLangObject();
}

Fixed version (ground truth):
@Override public JClassType getSuperclass(){
  if (isUpperBound()) {
    return getFirstBound();
  }
  return getOracle().getJavaLangObject();
}
Program: 82886
Project: 82886
Buggy source:
/** 
 * Returns the upper bounds of this wildcard type. If no upper bounds were declared, an array containing   {@link Object} is returned.
 * @return the upper bounds of this wildcard type
 */
public JClassType[] getUpperBounds(){
  if (lazyUpperBounds == null) {
    if (isUpperBound) {
      lazyUpperBounds=new JClassType[]{getFirstBound()};
    }
 else {
      lazyUpperBounds=new JClassType[]{getOracle().getJavaLangObject()};
    }
  }
  return lazyUpperBounds;
}

Fixed version (ground truth):
/** 
 * Returns the upper bounds of this wildcard type. If no upper bounds were declared, an array containing   {@link Object} is returned.
 * @return the upper bounds of this wildcard type
 */
public JClassType[] getUpperBounds(){
  if (lazyUpperBounds == null) {
    if (isUpperBound()) {
      lazyUpperBounds=new JClassType[]{getFirstBound()};
    }
 else {
      lazyUpperBounds=new JClassType[]{getOracle().getJavaLangObject()};
    }
  }
  return lazyUpperBounds;
}
Program: 82887
Project: 82887
Buggy source:
public JWildcardType getWildcardType(boolean isUpperBound,JClassType typeBound){
  JWildcardType wildcardType=new JWildcardType(isUpperBound,typeBound);
  String sig=wildcardType.getQualifiedSourceName();
  List<JWildcardType> candidates=wildcardTypes.get(sig);
  if (candidates == null) {
    candidates=new ArrayList<JWildcardType>();
    wildcardTypes.put(sig,candidates);
  }
 else {
    for (    JWildcardType candidate : candidates) {
      if (candidate.boundsMatch(wildcardType)) {
        return candidate;
      }
    }
  }
  candidates.add(wildcardType);
  return wildcardType;
}

Fixed version (ground truth):
public JWildcardType getWildcardType(JWildcardType.BoundType boundType,JClassType typeBound){
  JWildcardType wildcardType=new JWildcardType(boundType,typeBound);
  String sig=wildcardType.getQualifiedSourceName();
  List<JWildcardType> candidates=wildcardTypes.get(sig);
  if (candidates == null) {
    candidates=new ArrayList<JWildcardType>();
    wildcardTypes.put(sig,candidates);
  }
 else {
    for (    JWildcardType candidate : candidates) {
      if (candidate.boundsMatch(wildcardType)) {
        return candidate;
      }
    }
  }
  candidates.add(wildcardType);
  return wildcardType;
}
Program: 82888
Project: 82888
Buggy source:
public void testGenericClass_UpperBoundWildcard() throws NotFoundException {
  TypeOracle oracle=moduleContext.getOracle();
  JGenericType genericType=getGenericTestType();
  JWildcardType upperBoundWildcard=oracle.getWildcardType(true,integerType);
  JClassType type=oracle.getParameterizedType(genericType,new JClassType[]{upperBoundWildcard});
  JParameterizedType parameterizedType=type.isParameterized();
  validateTypeSubstitution(genericType,parameterizedType,new ParameterizedSubstitution(parameterizedType));
}

Fixed version (ground truth):
public void testGenericClass_UpperBoundWildcard() throws NotFoundException {
  TypeOracle oracle=moduleContext.getOracle();
  JGenericType genericType=getGenericTestType();
  JWildcardType upperBoundWildcard=oracle.getWildcardType(BoundType.EXTENDS,integerType);
  JClassType type=oracle.getParameterizedType(genericType,new JClassType[]{upperBoundWildcard});
  JParameterizedType parameterizedType=type.isParameterized();
  validateTypeSubstitution(genericType,parameterizedType,new ParameterizedSubstitution(parameterizedType));
}
Program: 82890
Project: 82890
Buggy source:
public void testGenericClass_LowerBoundWildcard() throws NotFoundException {
  TypeOracle oracle=moduleContext.getOracle();
  JGenericType genericType=getGenericTestType();
  JWildcardType lowerBoundWildcard=oracle.getWildcardType(false,integerType);
  JClassType type=oracle.getParameterizedType(genericType,new JClassType[]{lowerBoundWildcard});
  JParameterizedType parameterizedType=type.isParameterized();
  validateTypeSubstitution(genericType,parameterizedType,new ParameterizedSubstitution(parameterizedType));
}

Fixed version (ground truth):
public void testGenericClass_LowerBoundWildcard() throws NotFoundException {
  TypeOracle oracle=moduleContext.getOracle();
  JGenericType genericType=getGenericTestType();
  JWildcardType lowerBoundWildcard=oracle.getWildcardType(BoundType.SUPER,integerType);
  JClassType type=oracle.getParameterizedType(genericType,new JClassType[]{lowerBoundWildcard});
  JParameterizedType parameterizedType=type.isParameterized();
  validateTypeSubstitution(genericType,parameterizedType,new ParameterizedSubstitution(parameterizedType));
}
Program: 82891
Project: 82891
Buggy source:
public void testGenericClass_UnboundWildcard() throws NotFoundException {
  TypeOracle oracle=moduleContext.getOracle();
  JGenericType genericType=getGenericTestType();
  JWildcardType upperBoundWildcard=oracle.getWildcardType(true,oracle.getJavaLangObject());
  JClassType type=oracle.getParameterizedType(genericType,new JClassType[]{upperBoundWildcard});
  JParameterizedType parameterizedType=type.isParameterized();
  validateTypeSubstitution(genericType,parameterizedType,new ParameterizedSubstitution(parameterizedType));
}

Fixed version (ground truth):
public void testGenericClass_UnboundWildcard() throws NotFoundException {
  TypeOracle oracle=moduleContext.getOracle();
  JGenericType genericType=getGenericTestType();
  JWildcardType upperBoundWildcard=oracle.getWildcardType(BoundType.EXTENDS,oracle.getJavaLangObject());
  JClassType type=oracle.getParameterizedType(genericType,new JClassType[]{upperBoundWildcard});
  JParameterizedType parameterizedType=type.isParameterized();
  validateTypeSubstitution(genericType,parameterizedType,new ParameterizedSubstitution(parameterizedType));
}
Program: 82892
Project: 82892
Buggy source:
/** 
 * Tests the subtypes of MyList<Integer>. These should be: <ul> <li><code>MyIntegerList</code></li> <li><code>MyCustomList&lt;? extends Serializable, Integer&gt;</code></li> </ul>
 * @throws NotFoundException
 */
@Override public void testGetSubtypes() throws NotFoundException {
  TypeOracle oracle=moduleContext.getOracle();
  JGenericType genericType=oracle.getType(MyList.class.getName()).isGenericType();
  JParameterizedType parameterizedType=oracle.getParameterizedType(genericType,new JClassType[]{integerType});
  JClassType[] actualSubtypes=parameterizedType.getSubtypes();
  JGenericType myCustomListType=oracle.getType(MyCustomList.class.getName()).isGenericType();
  JParameterizedType parameterizedMyCustomList=oracle.getParameterizedType(myCustomListType,new JClassType[]{oracle.getWildcardType(true,oracle.getType(Serializable.class.getName())),integerType});
  JClassType[] expected={oracle.getType(MyIntegerList.class.getName()),parameterizedMyCustomList};
  validateEquals(oracle,expected,actualSubtypes);
}

Fixed version (ground truth):
/** 
 * Tests the subtypes of MyList<Integer>. These should be: <ul> <li><code>MyIntegerList</code></li> <li><code>MyCustomList&lt;? extends Serializable, Integer&gt;</code></li> </ul>
 * @throws NotFoundException
 */
@Override public void testGetSubtypes() throws NotFoundException {
  TypeOracle oracle=moduleContext.getOracle();
  JGenericType genericType=oracle.getType(MyList.class.getName()).isGenericType();
  JParameterizedType parameterizedType=oracle.getParameterizedType(genericType,new JClassType[]{integerType});
  JClassType[] actualSubtypes=parameterizedType.getSubtypes();
  JGenericType myCustomListType=oracle.getType(MyCustomList.class.getName()).isGenericType();
  JParameterizedType parameterizedMyCustomList=oracle.getParameterizedType(myCustomListType,new JClassType[]{oracle.getWildcardType(BoundType.EXTENDS,oracle.getType(Serializable.class.getName())),integerType});
  JClassType[] expected={oracle.getType(MyIntegerList.class.getName()),parameterizedMyCustomList};
  validateEquals(oracle,expected,actualSubtypes);
}
Program: 82893
Project: 82893
Buggy source:
/** 
 * Extracts a string from an (OLECHAR*) type.
 */
public static String extractStringFromOleCharPtr(int pOleChar){
  int size=COM.SysStringByteLen(pOleChar);
  if (size > 8192) {
    size=8192;
  }
  char[] buffer=new char[(size + 1) / 2];
  OS.MoveMemory(buffer,pOleChar,size);
  String s=new String(buffer);
  if (s.indexOf('\0') != -1) {
    return s.substring(0,s.indexOf('\0'));
  }
 else {
    return s;
  }
}

Fixed version (ground truth):
/** 
 * Extracts a string from an (OLECHAR*) type.
 */
public static String extractStringFromOleCharPtr(int pOleChar){
  int length=OS.wcslen(pOleChar);
  char[] buffer=new char[length];
  OS.MoveMemory(buffer,pOleChar,length);
  return String.valueOf(buffer);
}
Program: 82894
Project: 82894
Buggy source:
/** 
 * Create the data for JSON table to capture the mapping from a class to its query types.
 */
private void computeSourceClass(JClassType type){
  if (type == null || alreadyRan.contains(type)) {
    return;
  }
  alreadyRan.add(type);
  computeSourceClass(type.extnds);
  if (!program.typeOracle.isInstantiatedType(type) || program.isJavaScriptObject(type)) {
    return;
  }
  Set<JReferenceType> yesSet=null;
  for (  JReferenceType qType : queriedTypes.keySet()) {
    Set<JReferenceType> querySet=queriedTypes.get(qType);
    if (program.typeOracle.canTriviallyCast(type,qType)) {
      for (      JReferenceType argType : querySet) {
        if (program.typeOracle.canTriviallyCast(type,argType)) {
          if (yesSet == null) {
            yesSet=new HashSet<JReferenceType>();
          }
          yesSet.add(qType);
          break;
        }
      }
    }
  }
  if (yesSet == null && type != program.getTypeJavaLangObject()) {
    return;
  }
  JReferenceType[] yesArray=new JReferenceType[nextQueryId];
  if (yesSet != null) {
    for (    JReferenceType yesType : yesSet) {
      yesArray[queryIds.get(yesType)]=yesType;
    }
  }
  JsonObject jsonObject=new JsonObject(program);
  for (int i=0; i < nextQueryId; ++i) {
    if (yesArray[i] != null) {
      JIntLiteral labelExpr=program.getLiteralInt(i);
      JIntLiteral valueExpr=program.getLiteralInt(1);
      jsonObject.propInits.add(new JsonPropInit(program,labelExpr,valueExpr));
    }
  }
  classes.add(type);
  jsonObjects.add(jsonObject);
}

Fixed version (ground truth):
/** 
 * Create the data for JSON table to capture the mapping from a class to its query types.
 */
private void computeSourceClass(JClassType type){
  if (type == null || alreadyRan.contains(type)) {
    return;
  }
  alreadyRan.add(type);
  computeSourceClass(type.extnds);
  if (!program.typeOracle.isInstantiatedType(type) || program.isJavaScriptObject(type)) {
    return;
  }
  Set<JReferenceType> yesSet=null;
  for (  JReferenceType qType : queriedTypes.keySet()) {
    Set<JReferenceType> querySet=queriedTypes.get(qType);
    if (program.typeOracle.canTriviallyCast(type,qType)) {
      for (      JReferenceType argType : querySet) {
        if (program.typeOracle.canTriviallyCast(type,argType)) {
          if (yesSet == null) {
            yesSet=new HashSet<JReferenceType>();
          }
          yesSet.add(qType);
          break;
        }
      }
    }
  }
  JReferenceType[] yesArray=new JReferenceType[nextQueryId];
  if (yesSet != null) {
    for (    JReferenceType yesType : yesSet) {
      yesArray[queryIds.get(yesType)]=yesType;
    }
  }
  JsonObject jsonObject=new JsonObject(program);
  for (int i=1; i < nextQueryId; ++i) {
    if (yesArray[i] != null) {
      JIntLiteral labelExpr=program.getLiteralInt(i);
      JIntLiteral valueExpr=program.getLiteralInt(1);
      jsonObject.propInits.add(new JsonPropInit(program,labelExpr,valueExpr));
    }
  }
  if (jsonObject.propInits.isEmpty() && type != program.getTypeJavaLangObject() && type != program.getTypeJavaLangString()) {
    return;
  }
  classes.add(type);
  jsonObjects.add(jsonObject);
}
Program: 82895
Project: 82895
Buggy source:
public void testArrayStore(){
  JavaScriptObject[] jsoArray=new JavaScriptObject[1];
  jsoArray[0]=makeJSO();
  jsoArray[0]=makeFoo();
  jsoArray[0]=makeBar();
  Foo[] fooArray=new Foo[1];
  fooArray[0]=(Foo)makeJSO();
  fooArray[0]=makeFoo();
  fooArray[0]=makeBar().cast();
  Bar[] barArray=new Bar[1];
  barArray[0]=(Bar)makeJSO();
  barArray[0]=makeBar();
  barArray[0]=makeFoo().cast();
  Object[] objArray=jsoArray;
  try {
    objArray[0]=new Object();
    fail("String_Node_Str");
  }
 catch (  ArrayStoreException expected) {
  }
}

Fixed version (ground truth):
public void testArrayStore(){
  JavaScriptObject[] jsoArray=new JavaScriptObject[1];
  jsoArray[0]=makeJSO();
  jsoArray[0]=makeFoo();
  jsoArray[0]=makeBar();
  Foo[] fooArray=new Foo[1];
  fooArray[0]=(Foo)makeJSO();
  fooArray[0]=makeFoo();
  fooArray[0]=makeBar().cast();
  Bar[] barArray=new Bar[1];
  barArray[0]=(Bar)makeJSO();
  barArray[0]=makeBar();
  barArray[0]=makeFoo().cast();
  Object[] objArray=jsoArray;
  try {
    objArray[0]=new Object();
    fail("String_Node_Str");
  }
 catch (  ArrayStoreException expected) {
  }
  objArray=new Object[1];
  objArray[0]=makeJSO();
  objArray[0]=makeFoo();
  objArray[0]=makeBar();
}
Program: 82896
Project: 82896
Buggy source:
private native String escapeValue(String toEscape);

Fixed version (ground truth):
static native String escapeValue(String toEscape);
Program: 82897
Project: 82897
Buggy source:
public void onWindowResized(int width,int height){
  int shortcutHeight=height - shortcuts.getAbsoluteTop() - 8;
  if (shortcutHeight < 1) {
    shortcutHeight=1;
  }
  shortcuts.setHeight("String_Node_Str" + shortcutHeight);
  mailDetail.adjustSize(width,height);
}

Fixed version (ground truth):
public void onWindowResized(int width,int height){
  int shortcutHeight=height - shortcuts.getAbsoluteTop() - 8;
  if (shortcutHeight < 1) {
    shortcutHeight=1;
  }
  shortcuts.setHeight(shortcutHeight + "String_Node_Str");
  mailDetail.adjustSize(width,height);
}
Program: 82898
Project: 82898
Buggy source:
/** 
 * Adjusts the widget's size such that it fits within the window's client area.
 */
public void adjustSize(int windowWidth,int windowHeight){
  int scrollWidth=windowWidth - scroller.getAbsoluteLeft() - 9;
  if (scrollWidth < 1) {
    scrollWidth=1;
  }
  int scrollHeight=windowHeight - scroller.getAbsoluteTop() - 9;
  if (scrollHeight < 1) {
    scrollHeight=1;
  }
  scroller.setSize("String_Node_Str" + scrollWidth,"String_Node_Str" + scrollHeight);
}

Fixed version (ground truth):
/** 
 * Adjusts the widget's size such that it fits within the window's client area.
 */
public void adjustSize(int windowWidth,int windowHeight){
  int scrollWidth=windowWidth - scroller.getAbsoluteLeft() - 9;
  if (scrollWidth < 1) {
    scrollWidth=1;
  }
  int scrollHeight=windowHeight - scroller.getAbsoluteTop() - 9;
  if (scrollHeight < 1) {
    scrollHeight=1;
  }
  scroller.setPixelSize(scrollWidth,scrollHeight);
}
Program: 82901
Project: 82901
Buggy source:
public JsniFieldRef(JProgram program,SourceInfo info,JField field,JReferenceType enclosingType){
  super(program,info,field.isStatic() ? null : program.getLiteralNull(),field,enclosingType);
}

Fixed version (ground truth):
public JsniFieldRef(JProgram program,SourceInfo info,String ident,JField field,JReferenceType enclosingType){
  super(program,info,field.isStatic() ? null : program.getLiteralNull(),field,enclosingType);
  this.ident=ident;
}
Program: 82902
Project: 82902
Buggy source:
public JsniMethodRef(JProgram program,SourceInfo info,JMethod method){
  super(program,info,method.isStatic() ? null : program.getLiteralNull(),method);
}

Fixed version (ground truth):
public JsniMethodRef(JProgram program,SourceInfo info,String ident,JMethod method){
  super(program,info,method.isStatic() ? null : program.getLiteralNull(),method);
  this.ident=ident;
}
Program: 82904
Project: 82904
Buggy source:
public boolean isPackage(char[][] parentPkg,char[] pkg){
  final char[] pathChars=CharOperation.concatWith(parentPkg,pkg,'.');
  String packageName=String.valueOf(pathChars);
  if (knownPackages.contains(packageName)) {
    return true;
  }
 else   if (sourceOracle.isPackage(packageName)) {
    rememberPackage(packageName);
    return true;
  }
 else {
    return false;
  }
}

Fixed version (ground truth):
private boolean isPackage(ClassLoader classLoader,String packageName){
  String packageAsPath=packageName.replace('.','/');
  return classLoader.getResource(packageAsPath) != null;
}
Program: 82905
Project: 82905
Buggy source:
private void doGetModule(HttpServletRequest request,HttpServletResponse response,TreeLogger logger,RequestParts parts) throws IOException {
  if ("String_Node_Str".equalsIgnoreCase(parts.moduleName)) {
    sendErrorResponse(response,HttpServletResponse.SC_NOT_FOUND,"String_Node_Str");
    return;
  }
  String msg="String_Node_Str" + parts.moduleName + "String_Node_Str";
  logger=logger.branch(TreeLogger.TRACE,msg,null);
  try {
    getModuleDef(logger,parts.moduleName);
  }
 catch (  UnableToCompleteException e) {
    sendErrorResponse(response,HttpServletResponse.SC_NOT_FOUND,"String_Node_Str" + Util.escapeXml(parts.moduleName) + "String_Node_Str");
    return;
  }
  response.setContentType("String_Node_Str");
  PrintWriter writer=response.getWriter();
  writer.println("String_Node_Str");
  writer.print("String_Node_Str");
  writer.print(parts.moduleName);
  writer.println("String_Node_Str");
  Map<String,String[]> params=request.getParameterMap();
  for (  Map.Entry<String,String[]> entry : params.entrySet()) {
    String[] values=entry.getValue();
    if (values.length > 0) {
      writer.print("String_Node_Str");
      writer.print(entry.getKey());
      writer.print("String_Node_Str");
      writer.print(values[values.length - 1]);
      writer.println("String_Node_Str");
    }
  }
  writer.println("String_Node_Str");
  writer.println("String_Node_Str" + "String_Node_Str");
  writer.println("String_Node_Str");
}

Fixed version (ground truth):
private void doGetModule(HttpServletRequest request,HttpServletResponse response,TreeLogger logger,RequestParts parts) throws IOException {
  if ("String_Node_Str".equalsIgnoreCase(parts.moduleName)) {
    sendErrorResponse(response,HttpServletResponse.SC_NOT_FOUND,"String_Node_Str");
    return;
  }
  String msg="String_Node_Str" + parts.moduleName + "String_Node_Str";
  logger=logger.branch(TreeLogger.TRACE,msg,null);
  try {
    getModuleDef(logger,parts.moduleName);
  }
 catch (  UnableToCompleteException e) {
    sendErrorResponse(response,HttpServletResponse.SC_NOT_FOUND,"String_Node_Str" + Util.escapeXml(parts.moduleName) + "String_Node_Str");
    return;
  }
  response.setContentType("String_Node_Str");
  PrintWriter writer=response.getWriter();
  writer.println("String_Node_Str");
  writer.print("String_Node_Str");
  writer.print(parts.moduleName);
  writer.println("String_Node_Str");
  Map<String,String[]> params=getParameterMap(request);
  for (  Map.Entry<String,String[]> entry : params.entrySet()) {
    String[] values=entry.getValue();
    if (values.length > 0) {
      writer.print("String_Node_Str");
      writer.print(entry.getKey());
      writer.print("String_Node_Str");
      writer.print(values[values.length - 1]);
      writer.println("String_Node_Str");
    }
  }
  writer.println("String_Node_Str");
  writer.println("String_Node_Str" + "String_Node_Str");
  writer.println("String_Node_Str");
}
Program: 82908
Project: 82908
Buggy source:
/** 
 * Possibly launches a browser window to run the specified module.
 * @param moduleName The module to run.
 * @param forceLaunch If <code>true</code>, forces a new browser window tobe launched (because <code>testCaseClassName</code> changed)
 * @throws UnableToCompleteException
 */
public abstract void maybeLaunchModule(String moduleName,boolean forceLaunch) throws UnableToCompleteException ;

Fixed version (ground truth):
/** 
 * Possibly launches a browser window to run the specified module.
 * @param moduleName the module to run
 * @param forceLaunch If <code>true</code>, forces a new browser window tobe launched (because <code>testCaseClassName</code> changed)
 * @throws UnableToCompleteException
 */
public abstract void maybeLaunchModule(String moduleName,boolean forceLaunch) throws UnableToCompleteException ;
Program: 82909
Project: 82909
Buggy source:
@Override public void maybeLaunchModule(String moduleName,boolean forceLaunch) throws UnableToCompleteException {
  if (forceLaunch) {
    launchUrl(moduleName + "String_Node_Str");
  }
}

Fixed version (ground truth):
@Override public void maybeLaunchModule(String moduleName,boolean forceLaunch) throws UnableToCompleteException {
  if (forceLaunch) {
    launchUrl(getUrlSuffix(moduleName));
  }
}
Program: 82910
Project: 82910
Buggy source:
@Override public void maybeLaunchModule(String moduleName,boolean forceLaunch) throws UnableToCompleteException {
  if (forceLaunch) {
    BrowserWidget browserWindow=getBrowserWindow();
    shell.compileForWebMode(moduleName,browserWindow.getUserAgent());
    launchUrl(moduleName + "String_Node_Str" + PROP_GWT_HYBRID_MODE);
  }
}

Fixed version (ground truth):
@Override public void maybeLaunchModule(String moduleName,boolean forceLaunch) throws UnableToCompleteException {
  if (forceLaunch) {
    BrowserWidget browserWindow=getBrowserWindow();
    shell.compileForWebMode(moduleName,browserWindow.getUserAgent());
    launchUrl(getUrlSuffix(moduleName) + "String_Node_Str" + PROP_GWT_HYBRID_MODE);
  }
}
Program: 82911
Project: 82911
Buggy source:
@Override public void maybeLaunchModule(String moduleName,boolean forceLaunch) throws UnableToCompleteException {
  if (forceLaunch || !running) {
    shell.compileForWebMode(moduleName,null);
    String localhost;
    try {
      localhost=InetAddress.getLocalHost().getHostAddress();
    }
 catch (    UnknownHostException e) {
      throw new RuntimeException("String_Node_Str",e);
    }
    String url="String_Node_Str" + localhost + "String_Node_Str"+ shell.getPort()+ "String_Node_Str"+ moduleName;
    try {
      for (int i=0; i < remoteTokens.length; ++i) {
        int remoteToken=remoteTokens[i];
        BrowserManager mgr=browserManagers[i];
        if (remoteToken != 0) {
          mgr.killBrowser(remoteToken);
        }
        remoteTokens[i]=mgr.launchNewBrowser(url,INITIAL_KEEPALIVE_MS);
      }
    }
 catch (    Exception e) {
      shell.getTopLogger().log(TreeLogger.ERROR,"String_Node_Str",e);
      throw new UnableToCompleteException();
    }
    running=true;
  }
}

Fixed version (ground truth):
@Override public void maybeLaunchModule(String moduleName,boolean forceLaunch) throws UnableToCompleteException {
  if (forceLaunch || !running) {
    shell.compileForWebMode(moduleName,null);
    String localhost;
    try {
      localhost=InetAddress.getLocalHost().getHostAddress();
    }
 catch (    UnknownHostException e) {
      throw new RuntimeException("String_Node_Str",e);
    }
    String url="String_Node_Str" + localhost + "String_Node_Str"+ shell.getPort()+ "String_Node_Str"+ getUrlSuffix(moduleName);
    try {
      for (int i=0; i < remoteTokens.length; ++i) {
        int remoteToken=remoteTokens[i];
        BrowserManager mgr=browserManagers[i];
        if (remoteToken != 0) {
          mgr.killBrowser(remoteToken);
        }
        remoteTokens[i]=mgr.launchNewBrowser(url,INITIAL_KEEPALIVE_MS);
      }
    }
 catch (    Exception e) {
      shell.getTopLogger().log(TreeLogger.ERROR,"String_Node_Str",e);
      throw new UnableToCompleteException();
    }
    running=true;
  }
}
Program: 82912
Project: 82912
Buggy source:
public boolean isAssignableTo(JClassType possibleSupertype){
  return areClassTypesAssignable(possibleSupertype,this);
}

Fixed version (ground truth):
/** 
 * Returns <code>true</code> if this   {@link JClassType} is assignable to thespecified  {@link JClassType} parameter.
 * @param possibleSupertype possible supertype of this {@link JClassType}
 * @return <code>true</code> if this {@link JClassType} is assignable to thespecified  {@link JClassType} parameter
 * @throws NullPointerException if <code>possibleSupertype</code> is<code>null</code>
 */
public boolean isAssignableTo(JClassType possibleSupertype){
  if (possibleSupertype == null) {
    throw new NullPointerException("String_Node_Str");
  }
  return areClassTypesAssignable(possibleSupertype,this);
}
Program: 82913
Project: 82913
Buggy source:
public boolean isAssignableFrom(JClassType possibleSubtype){
  return areClassTypesAssignable(this,possibleSubtype);
}

Fixed version (ground truth):
/** 
 * Returns <code>true</code> if this   {@link JClassType} is assignable fromthe specified  {@link JClassType} parameter.
 * @param possibleSubtype possible subtype of this {@link JClassType}
 * @return <code>true</code> if this {@link JClassType} is assignable fromthe specified  {@link JClassType} parameter
 * @throws NullPointerException if <code>possibleSubtype</code> is<code>null</code>
 */
public boolean isAssignableFrom(JClassType possibleSubtype){
  if (possibleSubtype == null) {
    throw new NullPointerException("String_Node_Str");
  }
  return areClassTypesAssignable(this,possibleSubtype);
}
Program: 82914
Project: 82914
Buggy source:
/** 
 * Returns all of the annotations declared on this instance.  NOTE: This method is for testing purposes only.
 */
abstract Annotation[] getDeclaredAnnotations();

Fixed version (ground truth):
/** 
 * Returns all of the annotations declared on this instance. NOTE: This method is for testing purposes only.
 */
abstract Annotation[] getDeclaredAnnotations();
Program: 82915
Project: 82915
Buggy source:
/** 
 * Returns all of the annotations declared or inherited by this instance.  NOTE: This method is for testing purposes only.
 */
abstract Annotation[] getAnnotations();

Fixed version (ground truth):
/** 
 * Returns all of the annotations declared or inherited by this instance. NOTE: This method is for testing purposes only.
 */
abstract Annotation[] getAnnotations();
Program: 82916
Project: 82916
Buggy source:
/** 
 * Adds a child widget to the panel, contained within the HTML element specified by a given id.
 * @param widget the widget to be added
 * @param id the id of the element within which it will be contained
 */
public void add(Widget widget,String id){
  Element elem=getElementById(getElement(),id);
  if (elem == null) {
    throw new NoSuchElementException(id);
  }
  super.add(widget,elem);
}

Fixed version (ground truth):
/** 
 * Adds a child widget to the panel, contained within the HTML element specified by a given id.
 * @param widget the widget to be added
 * @param id the id of the element within which it will be contained
 */
public void add(Widget widget,String id){
  final Element elem=(isAttached()) ? DOM.getElementById(id) : attachToDomAndGetElement(id);
  if (elem == null) {
    throw new NoSuchElementException(id);
  }
  super.add(widget,elem);
}
Program: 82917
Project: 82917
Buggy source:
/** 
 * Tests that   {@link DOM#isOrHasChild(Element,Element)} works consistentlyacross browsers.
 */
public void testIsOrHasChild(){
  Element div=DOM.createDiv();
  Element childDiv=DOM.createDiv();
  assertFalse(DOM.isOrHasChild(div,childDiv));
  DOM.appendChild(div,childDiv);
  assertTrue(DOM.isOrHasChild(div,childDiv));
  assertFalse(DOM.isOrHasChild(childDiv,div));
}

Fixed version (ground truth):
/** 
 * Tests that   {@link DOM#isOrHasChild(Element,Element)} works consistentlyacross browsers.
 */
public void testIsOrHasChild(){
  Element div=DOM.createDiv();
  Element childDiv=DOM.createDiv();
  assertFalse(DOM.isOrHasChild(div,childDiv));
  assertTrue(DOM.isOrHasChild(div,div));
  DOM.appendChild(div,childDiv);
  assertTrue(DOM.isOrHasChild(div,childDiv));
  assertFalse(DOM.isOrHasChild(childDiv,div));
  DOM.appendChild(RootPanel.getBodyElement(),div);
  assertTrue(DOM.isOrHasChild(div,childDiv));
  assertTrue(DOM.isOrHasChild(div,div));
  assertFalse(DOM.isOrHasChild(childDiv,div));
}
Program: 82918
Project: 82918
Buggy source:
/** 
 * Adds additional metadata.
 */
void addMetaData(String tagName,String[] values);

Fixed version (ground truth):
/** 
 * Adds additional metadata.
 * @deprecated Javadoc comment metadata has been deprecated in favor of properJava annotations. The only way to add a Java annotation is via the source code.
 */
@Deprecated void addMetaData(String tagName,String[] values);
Program: 82919
Project: 82919
Buggy source:
/** 
 * Gets each list of metadata for the specified tag name.
 */
String[][] getMetaData(String tagName);

Fixed version (ground truth):
/** 
 * Gets each list of metadata for the specified tag name.
 * @deprecated Javadoc comment metadata has been deprecated in favor of properJava annotations. See {@link HasAnnotations#getAnnotation(Class)} for equivalentfunctionality.
 */
@Deprecated String[][] getMetaData(String tagName);
Program: 82920
Project: 82920
Buggy source:
/** 
 * Gets the name of available metadata tags.
 */
String[] getMetaDataTags();

Fixed version (ground truth):
/** 
 * Gets the name of available metadata tags.
 * @deprecated Javadoc comment metadata has been deprecated in favor of properJava annotations. The  {@link HasAnnotations} interface does notsupport a mechanism to enumerate all of the annotations on a member; the type of the desired annotation must be known.
 */
@Deprecated String[] getMetaDataTags();
Program: 82923
Project: 82923
Buggy source:
public static SourceInfo translateInfo(JsSourceInfo info){
  return null;
}

Fixed version (ground truth):
@SuppressWarnings("String_Node_Str") public static SourceInfo translateInfo(JsSourceInfo info){
  return null;
}
Program: 82924
Project: 82924
Buggy source:
public static char[] readFileAsChars(File file){
  if (!file.exists()) {
    return null;
  }
  Reader fileReader=null;
  try {
    fileReader=new InputStreamReader(new FileInputStream(file),DEFAULT_ENCODING);
    int length=(int)file.length();
    if (length < 0) {
      return null;
    }
    char[] fileContents=new char[length];
    int charsRead=fileReader.read(fileContents);
    if (charsRead < fileContents.length) {
      char[] trimmed=new char[charsRead];
      System.arraycopy(fileContents,0,trimmed,0,charsRead);
      fileContents=trimmed;
    }
    return fileContents;
  }
 catch (  IOException e) {
    return null;
  }
 finally {
    Utility.close(fileReader);
  }
}

Fixed version (ground truth):
public static char[] readFileAsChars(File file){
  String string=readFileAsString(file);
  if (string != null) {
    return string.toCharArray();
  }
  return null;
}
Program: 82925
Project: 82925
Buggy source:
/** 
 * @return null if the file could not be read
 */
public static char[] readURLAsChars(URL url){
  InputStreamReader reader=null;
  try {
    URLConnection connection=url.openConnection();
    connection.setUseCaches(false);
    reader=new InputStreamReader(connection.getInputStream(),DEFAULT_ENCODING);
    int contentLength=connection.getContentLength();
    if (contentLength < 0) {
      return null;
    }
    char[] fileContents=new char[contentLength];
    int charsRead=reader.read(fileContents);
    if (charsRead < fileContents.length) {
      char[] trimmed=new char[charsRead];
      System.arraycopy(fileContents,0,trimmed,0,charsRead);
      fileContents=trimmed;
    }
    return fileContents;
  }
 catch (  IOException e) {
    return null;
  }
 finally {
    Utility.close(reader);
  }
}

Fixed version (ground truth):
/** 
 * @return null if the file could not be read
 */
public static char[] readURLAsChars(URL url){
  byte[] bytes=readURLAsBytes(url);
  if (bytes != null) {
    return toString(bytes,DEFAULT_ENCODING).toCharArray();
  }
  return null;
}
Program: 82926
Project: 82926
Buggy source:
public static String readFileAsString(File file){
  try {
    URL toURL=file.toURI().toURL();
    char[] buf=readURLAsChars(toURL);
    if (buf == null) {
      return null;
    }
    return String.valueOf(buf);
  }
 catch (  MalformedURLException e) {
    return null;
  }
}

Fixed version (ground truth):
public static String readFileAsString(File file){
  byte[] bytes=readFileAsBytes(file);
  if (bytes != null) {
    return toString(bytes,DEFAULT_ENCODING);
  }
  return null;
}
Program: 82927
Project: 82927
Buggy source:
public static byte[] readFileAsBytes(File file){
  FileInputStream fileInputStream=null;
  try {
    fileInputStream=new FileInputStream(file);
    int length=(int)file.length();
    byte[] data=new byte[length];
    fileInputStream.read(data);
    return data;
  }
 catch (  IOException e) {
    return null;
  }
 finally {
    Utility.close(fileInputStream);
  }
}

Fixed version (ground truth):
public static byte[] readFileAsBytes(File file){
  FileInputStream fileInputStream=null;
  try {
    fileInputStream=new FileInputStream(file);
    int length=(int)file.length();
    return readBytesFromInputStream(fileInputStream,length);
  }
 catch (  IOException e) {
    return null;
  }
 finally {
    Utility.close(fileInputStream);
  }
}
Program: 82928
Project: 82928
Buggy source:
/** 
 * @return null if the file could not be read
 */
public static byte[] readURLAsBytes(URL url){
  InputStream input=null;
  try {
    URLConnection connection=url.openConnection();
    connection.setUseCaches(false);
    input=connection.getInputStream();
    int contentLength=connection.getContentLength();
    if (contentLength < 0) {
      return null;
    }
    byte[] data=new byte[contentLength];
    input.read(data);
    return data;
  }
 catch (  IOException e) {
    return null;
  }
 finally {
    Utility.close(input);
  }
}

Fixed version (ground truth):
/** 
 * @return null if the file could not be read
 */
public static byte[] readURLAsBytes(URL url){
  InputStream input=null;
  try {
    URLConnection connection=url.openConnection();
    connection.setUseCaches(false);
    input=connection.getInputStream();
    int contentLength=connection.getContentLength();
    if (contentLength < 0) {
      return null;
    }
    return readBytesFromInputStream(input,contentLength);
  }
 catch (  IOException e) {
    return null;
  }
 finally {
    Utility.close(input);
  }
}
Program: 82929
Project: 82929
Buggy source:
public Object invoke(Object proxy,Method method,Object[] args) throws Throwable {
  String name=method.getName();
  Object value=identifierToValue.get(name);
  if (value != null) {
    assert(method.getReturnType().isAssignableFrom(value.getClass()));
    return value;
  }
  JMethod jMethod=annotationType.findMethod(name,new JType[0]);
  if (jMethod != null) {
    JAnnotationMethod annotationMethod=jMethod.isAnnotationMethod();
    assert(annotationMethod != null);
    return annotationMethod.getDefaultValue();
  }
  if (method.getDeclaringClass() == Annotation.class && "String_Node_Str".equals(method.getName())) {
    return annotationClass;
  }
  return method.invoke(this,args);
}

Fixed version (ground truth):
public Object invoke(Object proxy,Method method,Object[] args) throws Throwable {
  String name=method.getName();
  Object value=null;
  if (identifierToValue.containsKey(name)) {
    value=identifierToValue.get(name);
    assert(value != null);
  }
 else {
    JMethod jMethod=annotationType.findMethod(name,new JType[0]);
    if (jMethod != null) {
      JAnnotationMethod annotationMethod=jMethod.isAnnotationMethod();
      assert(annotationMethod != null);
      value=annotationMethod.getDefaultValue();
      assert(value != null);
    }
 else     if (method.getDeclaringClass() == Annotation.class && "String_Node_Str".equals(method.getName())) {
      value=annotationClass;
    }
  }
  if (value != null) {
    assert(isValidReturnType(method.getReturnType(),value.getClass()));
    return value;
  }
  return method.invoke(this,args);
}
Program: 82930
Project: 82930
Buggy source:
/** 
 * Called when the user sets the id using the   {@link #ensureDebugId(String)}method. Subclasses of   {@link UIObject} can override this method to add IDsto their sub elements.  If a subclass does override this method, it should list the IDs (relative to the base ID), that will be applied to each sub {@link Element} with a short description.  For example:<ul> <li>-mysubelement = Applies to my sub element.</li> </ul>  Subclasses should make a super call to this method to ensure that the ID of the main element is set. This method will not be called unless you inherit the DebugID module in your gwt.xml file by adding the following line: <pre class="code"> &lt;inherits name="com.google.gwt.user.DebugID"/&gt;</pre>
 * @param baseID the base ID used by the main element
 */
protected void onEnsureDebugId(String baseID){
  ensureDebugId(getElement(),"String_Node_Str",baseID);
}

Fixed version (ground truth):
/** 
 * Called when the user sets the id using the   {@link #ensureDebugId(String)}method. Subclasses of   {@link UIObject} can override this method to add IDsto their sub elements.  If a subclass does override this method, it should list the IDs (relative to the base ID), that will be applied to each sub {@link Element} with a short description.  For example:<ul> <li>-mysubelement = Applies to my sub element.</li> </ul>  Subclasses should make a super call to this method to ensure that the ID of the main element is set. This method will not be called unless you inherit the DebugID module in your gwt.xml file by adding the following line: <pre class="code"> &lt;inherits name="com.google.gwt.user.Debug"/&gt;</pre>
 * @param baseID the base ID used by the main element
 */
protected void onEnsureDebugId(String baseID){
  ensureDebugId(getElement(),"String_Node_Str",baseID);
}
Program: 82931
Project: 82931
Buggy source:
/** 
 * Ensure that the main   {@link Element} for this {@link UIObject} has an IDproperty set, which allows it to integrate with third-party libraries and test tools. Complex  {@link Widget}s will also set the IDs of their important sub-elements. If the main element already has an ID, this method will NOT override it. The debugID is only used when no other ID is present on the   {@link Element}. The ID that you specify will be prefixed by the static string  {@link #DEBUG_ID_PREFIX}. This method will be compiled out and will have no effect unless you inherit the DebugID module in your gwt.xml file by adding the following line: <pre class="code"> &lt;inherits name="com.google.gwt.user.DebugID"/&gt;</pre>
 * @param id the ID to set on the main element
 */
public final void ensureDebugId(String id){
  debugIdImpl.ensureDebugId(this,id);
}

Fixed version (ground truth):
/** 
 * Ensure that the main   {@link Element} for this {@link UIObject} has an IDproperty set, which allows it to integrate with third-party libraries and test tools. Complex  {@link Widget}s will also set the IDs of their important sub-elements. If the main element already has an ID, this method will NOT override it. The debugID is only used when no other ID is present on the   {@link Element}. The ID that you specify will be prefixed by the static string  {@link #DEBUG_ID_PREFIX}. This method will be compiled out and will have no effect unless you inherit the DebugID module in your gwt.xml file by adding the following line: <pre class="code"> &lt;inherits name="com.google.gwt.user.Debug"/&gt;</pre>
 * @param id the ID to set on the main element
 */
public final void ensureDebugId(String id){
  debugIdImpl.ensureDebugId(this,id);
}
Program: 82932
Project: 82932
Buggy source:
private List<JsStatement> parse(List<JsStatement> expected,boolean compact) throws Exception {
  TextOutput text=new DefaultTextOutput(compact);
  JsVisitor generator=new JsToStringGenerationVisitor(text);
  generator.acceptList(expected);
  return parser.parse(new JsProgram().getScope(),new StringReader(text.toString()),0);
}

Fixed version (ground truth):
private List<JsStatement> parse(List<JsStatement> expected,boolean compact) throws Exception {
  TextOutput text=new DefaultTextOutput(compact);
  JsVisitor generator=new JsSourceGenerationVisitor(text);
  generator.acceptList(expected);
  return parser.parse(new JsProgram().getScope(),new StringReader(text.toString()),0);
}
Program: 82933
Project: 82933
Buggy source:
public abstract boolean isAssignableTo(JClassType possibleSupertype);

Fixed version (ground truth):
public boolean isAssignableTo(JClassType possibleSupertype){
  return areClassTypesAssignable(possibleSupertype,this);
}
Program: 82934
Project: 82934
Buggy source:
public abstract boolean isAssignableFrom(JClassType possibleSubtype);

Fixed version (ground truth):
public boolean isAssignableFrom(JClassType possibleSubtype){
  return areClassTypesAssignable(this,possibleSubtype);
}
Program: 82935
Project: 82935
Buggy source:
/** 
 * @see UIObject#onEnsureDebugId(String) <ul> <li>-label => label next to checkbox</li> </ul>
 */
@Override protected void onEnsureDebugId(String baseID){
  super.onEnsureDebugId(baseID);
  ensureDebugId(labelElem,baseID,"String_Node_Str");
}

Fixed version (ground truth):
/** 
 * <b>Affected Elements:</b> <ul> <li>-label = label next to checkbox.</li> </ul>
 * @see UIObject#onEnsureDebugId(String)
 */
@Override protected void onEnsureDebugId(String baseID){
  super.onEnsureDebugId(baseID);
  ensureDebugId(labelElem,baseID,"String_Node_Str");
}
Program: 82936
Project: 82936
Buggy source:
/** 
 * @see UIObject#onEnsureDebugId(String) <ul> <li>-caption => text at the top of the  {@link DialogBox}</li> <li>-content => the table cell around the content</li> </ul>
 */
@Override protected void onEnsureDebugId(String baseID){
  super.onEnsureDebugId(baseID);
  caption.ensureDebugId(baseID + "String_Node_Str");
  ensureDebugId(panel.getCellFormatter().getElement(1,0),baseID,"String_Node_Str");
}

Fixed version (ground truth):
/** 
 * <b>Affected Elements:</b> <ul> <li>-caption = text at the top of the   {@link DialogBox}.</li> <li>-content = the table cell around the content.</li> </ul>
 * @see UIObject#onEnsureDebugId(String)
 */
@Override protected void onEnsureDebugId(String baseID){
  super.onEnsureDebugId(baseID);
  caption.ensureDebugId(baseID + "String_Node_Str");
  ensureDebugId(panel.getCellFormatter().getElement(1,0),baseID,"String_Node_Str");
}