Program: 125075
Project: 125075
Buggy source:
@Override protected void init(RepositoryNode node){
  ERepositoryObjectType nodeType=(ERepositoryObjectType)node.getProperties(EProperties.CONTENT_TYPE);
  if (nodeType == null) {
    return;
  }
  IProxyRepositoryFactory factory=ProxyRepositoryFactory.getInstance();
  if (HCRepositoryUtil.isHadoopClusterNode(node) || (node instanceof HadoopFolderRepositoryNode && getNodeType().equals(nodeType))) {
    if (factory.isUserReadOnlyOnCurrentProject() || !ProjectManager.getInstance().isInCurrentMainProject(node) || (node.getObject() != null && factory.getStatus(node.getObject()) == ERepositoryStatus.DELETED)) {
      setEnabled(false);
      return;
    }
    this.setText(getCreateLabel());
    collectChildNames(node);
    creation=true;
    setEnabled(true);
    return;
  }
  if (!nodeType.equals(getNodeType())) {
    return;
  }
switch (node.getType()) {
case SIMPLE_FOLDER:
    if (node.getObject() != null && node.getObject().getProperty().getItem().getState().isDeleted()) {
      setEnabled(false);
      return;
    }
  break;
case SYSTEM_FOLDER:
if (factory.isUserReadOnlyOnCurrentProject() || !ProjectManager.getInstance().isInCurrentMainProject(node)) {
  setEnabled(false);
  return;
}
this.setText(getCreateLabel());
collectChildNames(node);
creation=true;
break;
case REPOSITORY_ELEMENT:
if (factory.isPotentiallyEditable(node.getObject())) {
this.setText(getEditLabel());
collectSiblingNames(node);
}
 else {
this.setText(getOpenLabel());
}
collectSiblingNames(node);
creation=false;
break;
default :
return;
}
setEnabled(true);
}

Fixed version (ground truth):
@Override protected void init(RepositoryNode node){
  ERepositoryObjectType nodeType=(ERepositoryObjectType)node.getProperties(EProperties.CONTENT_TYPE);
  if (nodeType == null) {
    return;
  }
  if (hideAction(node)) {
    return;
  }
  IProxyRepositoryFactory factory=ProxyRepositoryFactory.getInstance();
  if (HCRepositoryUtil.isHadoopClusterNode(node) || (node instanceof HadoopFolderRepositoryNode && getNodeType().equals(nodeType))) {
    if (factory.isUserReadOnlyOnCurrentProject() || !ProjectManager.getInstance().isInCurrentMainProject(node) || (node.getObject() != null && factory.getStatus(node.getObject()) == ERepositoryStatus.DELETED)) {
      setEnabled(false);
      return;
    }
    this.setText(getCreateLabel());
    collectChildNames(node);
    creation=true;
    setEnabled(true);
    return;
  }
  if (!nodeType.equals(getNodeType())) {
    return;
  }
switch (node.getType()) {
case SIMPLE_FOLDER:
    if (node.getObject() != null && node.getObject().getProperty().getItem().getState().isDeleted()) {
      setEnabled(false);
      return;
    }
  break;
case SYSTEM_FOLDER:
if (factory.isUserReadOnlyOnCurrentProject() || !ProjectManager.getInstance().isInCurrentMainProject(node)) {
  setEnabled(false);
  return;
}
this.setText(getCreateLabel());
collectChildNames(node);
creation=true;
break;
case REPOSITORY_ELEMENT:
if (factory.isPotentiallyEditable(node.getObject())) {
this.setText(getEditLabel());
collectSiblingNames(node);
}
 else {
this.setText(getOpenLabel());
}
collectSiblingNames(node);
creation=false;
break;
default :
return;
}
setEnabled(true);
}