Program: 130043
Project: 130043
Buggy source:
public Property getProperty(){
  exception=null;
  try {
    IProxyRepositoryFactory factory=null;
    if (!GlobalServiceRegister.getDefault().isServiceRegistered(IProxyRepositoryService.class)) {
      return null;
    }
    factory=((IProxyRepositoryService)GlobalServiceRegister.getDefault().getService(IProxyRepositoryService.class)).getProxyRepositoryFactory();
    IRepositoryViewObject object=factory.getLastVersion(id);
    if (object == null) {
      throw new PersistenceException("String_Node_Str" + label + "String_Node_Str"+ id+ "String_Node_Str");
    }
    this.customImage=null;
    Property property=object.getProperty();
    this.id=property.getId();
    this.author=property.getAuthor();
    this.creationDate=property.getCreationDate();
    this.description=property.getDescription();
    this.modificationDate=property.getModificationDate();
    this.label=property.getLabel();
    this.purpose=property.getPurpose();
    this.statusCode=property.getStatusCode();
    this.version=property.getVersion();
    this.type=ERepositoryObjectType.getItemType(property.getItem());
    this.deleted=property.getItem().getState().isDeleted();
    this.path=property.getItem().getState().getPath();
    repositoryStatus=factory.getStatus(property.getItem());
    InformationLevel informationLevel=property.getMaxInformationLevel();
    informationStatus=factory.getStatus(informationLevel);
    if (type == ERepositoryObjectType.JOBLET) {
      JobletProcessItem item=(JobletProcessItem)property.getItem();
      if (item.getIcon() != null && item.getIcon().getInnerContent() != null && item.getIcon().getInnerContent().length == 0) {
        customImage=getJobletCustomIcon(property);
        customImage=ImageUtils.propertyLabelScale(property.getId(),customImage,ICON_SIZE.ICON_16);
      }
    }
 else     if (type == ERepositoryObjectType.DOCUMENTATION) {
      Item item=property.getItem();
      if (item instanceof DocumentationItem) {
        customImage=coreSerivce.getImageWithDocExt(((DocumentationItem)item).getExtension());
      }
 else       if (item instanceof LinkDocumentationItem) {
        customImage=coreSerivce.getImageWithSpecial(customImage).createImage();
      }
    }
    return property;
  }
 catch (  PersistenceException e) {
    exception=e;
    if (!CommonsPlugin.isHeadless() && PlatformUI.isWorkbenchRunning()) {
      MessageDialog.openError(Display.getCurrent().getActiveShell(),"String_Node_Str",exception.getMessage());
    }
  }
  return null;
}

Fixed version (ground truth):
public Property getProperty(){
  exception=null;
  try {
    IProxyRepositoryFactory factory=null;
    if (!GlobalServiceRegister.getDefault().isServiceRegistered(IProxyRepositoryService.class)) {
      return null;
    }
    factory=((IProxyRepositoryService)GlobalServiceRegister.getDefault().getService(IProxyRepositoryService.class)).getProxyRepositoryFactory();
    IRepositoryViewObject object=factory.getLastVersion(id);
    if (object == null) {
      throw new PersistenceException("String_Node_Str" + label + "String_Node_Str"+ id+ "String_Node_Str");
    }
    this.customImage=null;
    Property property=object.getProperty();
    this.id=property.getId();
    this.author=property.getAuthor();
    this.creationDate=property.getCreationDate();
    this.description=property.getDescription();
    this.modificationDate=property.getModificationDate();
    this.label=property.getLabel();
    this.purpose=property.getPurpose();
    this.statusCode=property.getStatusCode();
    this.version=property.getVersion();
    this.type=ERepositoryObjectType.getItemType(property.getItem());
    this.deleted=property.getItem().getState().isDeleted();
    this.path=property.getItem().getState().getPath();
    repositoryStatus=factory.getStatus(property.getItem());
    InformationLevel informationLevel=property.getMaxInformationLevel();
    informationStatus=factory.getStatus(informationLevel);
    this.customImage=ImageProvider.getImage(RepositoryImageProvider.getIcon(type));
    if (type == ERepositoryObjectType.JOBLET) {
      JobletProcessItem item=(JobletProcessItem)property.getItem();
      if (item.getIcon() != null && item.getIcon().getInnerContent() != null && item.getIcon().getInnerContent().length == 0) {
        customImage=getJobletCustomIcon(property);
        customImage=ImageUtils.propertyLabelScale(property.getId(),customImage,ICON_SIZE.ICON_16);
      }
    }
 else     if (type == ERepositoryObjectType.DOCUMENTATION) {
      Item item=property.getItem();
      if (item instanceof DocumentationItem) {
        customImage=coreSerivce.getImageWithDocExt(((DocumentationItem)item).getExtension());
      }
 else       if (item instanceof LinkDocumentationItem) {
        customImage=coreSerivce.getImageWithSpecial(customImage).createImage();
      }
    }
    return property;
  }
 catch (  PersistenceException e) {
    exception=e;
    if (!CommonsPlugin.isHeadless() && PlatformUI.isWorkbenchRunning()) {
      MessageDialog.openError(Display.getCurrent().getActiveShell(),"String_Node_Str",exception.getMessage());
    }
  }
  return null;
}