Program: 26855
Project: 26855
Buggy source:
public ModelViewDefinition(ProcessorManager manager,Element element){
  super(element,manager);
  ModelContainer containerKey=element.getAnnotation(ModelContainer.class);
  boolean putDefaultValue=containerKey != null && containerKey.putDefault();
  ModelView modelView=element.getAnnotation(ModelView.class);
  try {
    modelView.database();
  }
 catch (  MirroredTypeException mte) {
    this.databaseName=TypeName.get(mte.getTypeMirror());
  }
  databaseDefinition=manager.getDatabaseWriter(databaseName);
  this.viewTableName=getModelClassName() + databaseDefinition.classSeparator + TABLE_VIEW_TAG;
  setOutputClassName(databaseDefinition.classSeparator + DBFLOW_MODEL_VIEW_TAG);
  this.name=modelView.name();
  if (name == null || name.isEmpty()) {
    name=getModelClassName();
  }
  DeclaredType typeAdapterInterface=null;
  final DeclaredType modelViewType=manager.getTypeUtils().getDeclaredType(manager.getElements().getTypeElement(ClassNames.MODEL_VIEW.toString()),manager.getTypeUtils().getWildcardType(manager.getElements().getTypeElement(ClassNames.MODEL.toString()).asType(),null));
  for (  TypeMirror superType : manager.getTypeUtils().directSupertypes(element.asType())) {
    if (manager.getTypeUtils().isAssignable(superType,modelViewType)) {
      typeAdapterInterface=(DeclaredType)superType;
      break;
    }
  }
  if (typeAdapterInterface != null) {
    final List<? extends TypeMirror> typeArguments=typeAdapterInterface.getTypeArguments();
    modelReferenceClass=ClassName.get(manager.getElements().getTypeElement(typeArguments.get(0).toString()));
  }
  createColumnDefinitions((TypeElement)element);
  implementsLoadFromCursorListener=ProcessorUtils.implementsClass(manager.getProcessingEnvironment(),ClassNames.LOAD_FROM_CURSOR_LISTENER.toString(),(TypeElement)element);
  methods=new MethodDefinition[]{new LoadFromCursorMethod(this,false,implementsLoadFromCursorListener,putDefaultValue),new ExistenceMethod(this,false),new PrimaryConditionMethod(this,false)};
}

Fixed version (ground truth):
public ModelViewDefinition(ProcessorManager manager,Element element){
  super(element,manager);
  ModelContainer containerKey=element.getAnnotation(ModelContainer.class);
  boolean putDefaultValue=containerKey != null && containerKey.putDefault();
  ModelView modelView=element.getAnnotation(ModelView.class);
  if (modelView != null) {
    try {
      modelView.database();
    }
 catch (    MirroredTypeException mte) {
      this.databaseName=TypeName.get(mte.getTypeMirror());
    }
    databaseDefinition=manager.getDatabaseWriter(databaseName);
    this.viewTableName=getModelClassName() + databaseDefinition.classSeparator + TABLE_VIEW_TAG;
    setOutputClassName(databaseDefinition.classSeparator + DBFLOW_MODEL_VIEW_TAG);
    this.name=modelView.name();
    if (name == null || name.isEmpty()) {
      name=getModelClassName();
    }
  }
  DeclaredType typeAdapterInterface=null;
  final DeclaredType modelViewType=manager.getTypeUtils().getDeclaredType(manager.getElements().getTypeElement(ClassNames.MODEL_VIEW.toString()),manager.getTypeUtils().getWildcardType(manager.getElements().getTypeElement(ClassNames.MODEL.toString()).asType(),null));
  for (  TypeMirror superType : manager.getTypeUtils().directSupertypes(element.asType())) {
    if (manager.getTypeUtils().isAssignable(superType,modelViewType)) {
      typeAdapterInterface=(DeclaredType)superType;
      break;
    }
  }
  if (typeAdapterInterface != null) {
    final List<? extends TypeMirror> typeArguments=typeAdapterInterface.getTypeArguments();
    modelReferenceClass=ClassName.get(manager.getElements().getTypeElement(typeArguments.get(0).toString()));
  }
  if (element instanceof TypeElement) {
    createColumnDefinitions((TypeElement)element);
    implementsLoadFromCursorListener=ProcessorUtils.implementsClass(manager.getProcessingEnvironment(),ClassNames.LOAD_FROM_CURSOR_LISTENER.toString(),(TypeElement)element);
  }
 else {
    implementsLoadFromCursorListener=false;
  }
  methods=new MethodDefinition[]{new LoadFromCursorMethod(this,false,implementsLoadFromCursorListener,putDefaultValue),new ExistenceMethod(this,false),new PrimaryConditionMethod(this,false)};
}