Program: 2378
Project: 2378
Buggy source:
ColorStateList loadColorStateList(TypedValue value,int id) throws NotFoundException {
  if (TRACE_FOR_PRELOAD) {
    if ((id >>> 24) == 0x1) {
      final String name=getResourceName(id);
      if (name != null)       android.util.Log.d("String_Node_Str",name);
    }
  }
  final long key=(((long)value.assetCookie) << 32) | value.data;
  ColorStateList csl;
  if (value.type >= TypedValue.TYPE_FIRST_COLOR_INT && value.type <= TypedValue.TYPE_LAST_COLOR_INT) {
    csl=sPreloadedColorStateLists.get(key);
    if (csl != null) {
      return csl;
    }
    csl=ColorStateList.valueOf(value.data);
    if (mPreloading) {
      if (verifyPreloadConfig(value,"String_Node_Str")) {
        sPreloadedColorStateLists.put(key,csl);
      }
    }
    return csl;
  }
  csl=getCachedColorStateList(key);
  if (csl != null) {
    return csl;
  }
  csl=sPreloadedColorStateLists.get(key);
  if (csl != null) {
    return csl;
  }
  if (value.string == null) {
    throw new NotFoundException("String_Node_Str" + value);
  }
  String file=value.string.toString();
  if (file.endsWith("String_Node_Str")) {
    try {
      XmlResourceParser rp=loadXmlResourceParser(file,id,value.assetCookie,"String_Node_Str");
      csl=ColorStateList.createFromXml(this,rp);
      rp.close();
    }
 catch (    Exception e) {
      NotFoundException rnf=new NotFoundException("String_Node_Str" + file + "String_Node_Str"+ Integer.toHexString(id));
      rnf.initCause(e);
      throw rnf;
    }
  }
 else {
    throw new NotFoundException("String_Node_Str" + file + "String_Node_Str"+ Integer.toHexString(id)+ "String_Node_Str");
  }
  if (csl != null) {
    if (mPreloading) {
      if (verifyPreloadConfig(value,"String_Node_Str")) {
        sPreloadedColorStateLists.put(key,csl);
      }
    }
 else {
synchronized (mAccessLock) {
        mColorStateListCache.put(key,new WeakReference<ColorStateList>(csl));
      }
    }
  }
  return csl;
}

Fixed version (ground truth):
ColorStateList loadColorStateList(TypedValue value,int id) throws NotFoundException {
  if (TRACE_FOR_PRELOAD) {
    if ((id >>> 24) == 0x1) {
      final String name=getResourceName(id);
      if (name != null)       android.util.Log.d("String_Node_Str",name);
    }
  }
  final long key=(((long)value.assetCookie) << 32) | value.data;
  ColorStateList csl;
  if (value.type >= TypedValue.TYPE_FIRST_COLOR_INT && value.type <= TypedValue.TYPE_LAST_COLOR_INT) {
    csl=sPreloadedColorStateLists.get(key);
    if (csl != null) {
      return csl;
    }
    csl=ColorStateList.valueOf(value.data);
    if (mPreloading) {
      if (verifyPreloadConfig(value.changingConfigurations,value.resourceId,"String_Node_Str")) {
        sPreloadedColorStateLists.put(key,csl);
      }
    }
    return csl;
  }
  csl=getCachedColorStateList(key);
  if (csl != null) {
    return csl;
  }
  csl=sPreloadedColorStateLists.get(key);
  if (csl != null) {
    return csl;
  }
  if (value.string == null) {
    throw new NotFoundException("String_Node_Str" + value);
  }
  String file=value.string.toString();
  if (file.endsWith("String_Node_Str")) {
    try {
      XmlResourceParser rp=loadXmlResourceParser(file,id,value.assetCookie,"String_Node_Str");
      csl=ColorStateList.createFromXml(this,rp);
      rp.close();
    }
 catch (    Exception e) {
      NotFoundException rnf=new NotFoundException("String_Node_Str" + file + "String_Node_Str"+ Integer.toHexString(id));
      rnf.initCause(e);
      throw rnf;
    }
  }
 else {
    throw new NotFoundException("String_Node_Str" + file + "String_Node_Str"+ Integer.toHexString(id)+ "String_Node_Str");
  }
  if (csl != null) {
    if (mPreloading) {
      if (verifyPreloadConfig(value.changingConfigurations,value.resourceId,"String_Node_Str")) {
        sPreloadedColorStateLists.put(key,csl);
      }
    }
 else {
synchronized (mAccessLock) {
        mColorStateListCache.put(key,new WeakReference<ColorStateList>(csl));
      }
    }
  }
  return csl;
}