Program: 119454
Project: 119454
Buggy source:
public static void checkLastGenerationHasCompilationError(boolean updateProblemsView) throws ProcessorException {
  boolean ret=false;
  boolean isJob=true;
  Item item=null;
  IProxyRepositoryFactory proxyRepositoryFactory=CorePlugin.getDefault().getRepositoryService().getProxyRepositoryFactory();
  Integer line=null;
  String errorMessage=null;
  try {
    for (    JobInfo jobInfo : LastGenerationInfo.getInstance().getLastGeneratedjobs()) {
      item=null;
      List<IRepositoryViewObject> allVersions=proxyRepositoryFactory.getAllVersion(jobInfo.getJobId());
      for (      IRepositoryViewObject repositoryObject2 : allVersions) {
        Property property2=repositoryObject2.getProperty();
        if (jobInfo.getJobVersion().equals(property2.getVersion())) {
          item=property2.getItem();
          break;
        }
      }
      if (item == null) {
        continue;
      }
      ITalendSynchronizer synchronizer=CorePlugin.getDefault().getCodeGeneratorService().createRoutineSynchronizer();
      if (GlobalServiceRegister.getDefault().isServiceRegistered(ICamelDesignerCoreService.class)) {
        ICamelDesignerCoreService camelService=(ICamelDesignerCoreService)GlobalServiceRegister.getDefault().getService(ICamelDesignerCoreService.class);
        if (camelService.isInstanceofCamel(item)) {
          synchronizer=CorePlugin.getDefault().getCodeGeneratorService().createCamelBeanSynchronizer();
        }
      }
      IFile file=synchronizer.getFile(item);
      IMarker[] markers=file.findMarkers(IMarker.PROBLEM,true,IResource.DEPTH_ONE);
      for (      IMarker marker : markers) {
        Integer lineNr=(Integer)marker.getAttribute(IMarker.LINE_NUMBER);
        String message=(String)marker.getAttribute(IMarker.MESSAGE);
        Integer severity=(Integer)marker.getAttribute(IMarker.SEVERITY);
        Integer start=(Integer)marker.getAttribute(IMarker.CHAR_START);
        Integer end=(Integer)marker.getAttribute(IMarker.CHAR_END);
        if (lineNr != null && message != null && severity != null && start != null && end != null) {
switch (severity) {
case IMarker.SEVERITY_ERROR:
            ret=true;
          line=lineNr;
        errorMessage=message;
      break;
default :
    break;
}
}
}
if (updateProblemsView) {
Problems.addRoutineFile(file,ProblemType.JOB,item.getProperty().getLabel(),item.getProperty().getVersion(),true);
}
if (ret) {
break;
}
}
}
 catch (Exception e) {
ExceptionHandler.process(e);
}
if (ret && item != null) {
if (isJob) {
throw new ProcessorException(Messages.getString("String_Node_Str") + "String_Node_Str" + Messages.getString("String_Node_Str",item.getProperty().getLabel())+ "String_Node_Str"+ Messages.getString("String_Node_Str")+ "String_Node_Str"+ line+ "String_Node_Str"+ Messages.getString("String_Node_Str")+ "String_Node_Str"+ errorMessage+ "String_Node_Str"+ Messages.getString("String_Node_Str"));
}
 else {
throw new ProcessorException(Messages.getString("String_Node_Str") + "String_Node_Str" + Messages.getString("String_Node_Str",item.getProperty().getLabel())+ "String_Node_Str"+ Messages.getString("String_Node_Str")+ "String_Node_Str"+ line+ "String_Node_Str"+ Messages.getString("String_Node_Str")+ "String_Node_Str"+ errorMessage+ "String_Node_Str"+ Messages.getString("String_Node_Str"));
}
}
}

Fixed version (ground truth):
public static void checkLastGenerationHasCompilationError(boolean updateProblemsView) throws ProcessorException {
  if (updateProblemsView && CommonsPlugin.isHeadless()) {
    updateProblemsView=false;
  }
  boolean ret=false;
  boolean isJob=true;
  Item item=null;
  IProxyRepositoryFactory proxyRepositoryFactory=CorePlugin.getDefault().getRepositoryService().getProxyRepositoryFactory();
  Integer line=null;
  String errorMessage=null;
  try {
    for (    JobInfo jobInfo : LastGenerationInfo.getInstance().getLastGeneratedjobs()) {
      item=null;
      List<IRepositoryViewObject> allVersions=proxyRepositoryFactory.getAllVersion(jobInfo.getJobId());
      for (      IRepositoryViewObject repositoryObject2 : allVersions) {
        Property property2=repositoryObject2.getProperty();
        if (jobInfo.getJobVersion().equals(property2.getVersion())) {
          item=property2.getItem();
          break;
        }
      }
      if (item == null) {
        continue;
      }
      ITalendSynchronizer synchronizer=CorePlugin.getDefault().getCodeGeneratorService().createRoutineSynchronizer();
      if (GlobalServiceRegister.getDefault().isServiceRegistered(ICamelDesignerCoreService.class)) {
        ICamelDesignerCoreService camelService=(ICamelDesignerCoreService)GlobalServiceRegister.getDefault().getService(ICamelDesignerCoreService.class);
        if (camelService.isInstanceofCamel(item)) {
          synchronizer=CorePlugin.getDefault().getCodeGeneratorService().createCamelBeanSynchronizer();
        }
      }
      IFile file=synchronizer.getFile(item);
      IMarker[] markers=file.findMarkers(IMarker.PROBLEM,true,IResource.DEPTH_ONE);
      for (      IMarker marker : markers) {
        Integer lineNr=(Integer)marker.getAttribute(IMarker.LINE_NUMBER);
        String message=(String)marker.getAttribute(IMarker.MESSAGE);
        Integer severity=(Integer)marker.getAttribute(IMarker.SEVERITY);
        Integer start=(Integer)marker.getAttribute(IMarker.CHAR_START);
        Integer end=(Integer)marker.getAttribute(IMarker.CHAR_END);
        if (lineNr != null && message != null && severity != null && start != null && end != null) {
switch (severity) {
case IMarker.SEVERITY_ERROR:
            ret=true;
          line=lineNr;
        errorMessage=message;
      break;
default :
    break;
}
}
}
if (updateProblemsView) {
Problems.addRoutineFile(file,ProblemType.JOB,item.getProperty().getLabel(),item.getProperty().getVersion(),true);
}
if (ret) {
break;
}
}
}
 catch (Exception e) {
ExceptionHandler.process(e);
}
if (ret && item != null) {
if (isJob) {
throw new ProcessorException(Messages.getString("String_Node_Str") + "String_Node_Str" + Messages.getString("String_Node_Str",item.getProperty().getLabel())+ "String_Node_Str"+ Messages.getString("String_Node_Str")+ "String_Node_Str"+ line+ "String_Node_Str"+ Messages.getString("String_Node_Str")+ "String_Node_Str"+ errorMessage+ "String_Node_Str"+ Messages.getString("String_Node_Str"));
}
 else {
throw new ProcessorException(Messages.getString("String_Node_Str") + "String_Node_Str" + Messages.getString("String_Node_Str",item.getProperty().getLabel())+ "String_Node_Str"+ Messages.getString("String_Node_Str")+ "String_Node_Str"+ line+ "String_Node_Str"+ Messages.getString("String_Node_Str")+ "String_Node_Str"+ errorMessage+ "String_Node_Str"+ Messages.getString("String_Node_Str"));
}
}
}