Program: 139578
Project: 139578
Buggy source:
@Override public void mouseDoubleClick(MouseEvent e){
  Tree tree=(Tree)e.getSource();
  Point point=new Point(e.x,e.y);
  TreeItem item=tree.getItem(point);
  if (item != null) {
    Object obj=item.getData();
    if (obj instanceof AbstractFolderNode) {
      AbstractFolderNode node=(AbstractFolderNode)obj;
      node.loadChildren();
      Object[] children=node.getChildren();
      if (children != null) {
        if (item.getText().indexOf("String_Node_Str") > 0) {
          item.setText(item.getText().substring(0,item.getText().indexOf("String_Node_Str")) + "String_Node_Str" + children.length+ "String_Node_Str");
        }
 else {
          item.setText(item.getText() + "String_Node_Str" + children.length+ "String_Node_Str");
        }
      }
    }
    if (obj instanceof Analysis) {
      Analysis analysis=(Analysis)obj;
      List<RenderedObject> tempList=new ArrayList<RenderedObject>();
      tempList.add(analysis);
      IFolder analysesFolder=ResourceManager.getDataProfilingFolder().getFolder(DQStructureManager.ANALYSIS);
      IFile file=AnaResourceFileHelper.getInstance().findCorrespondingFile(tempList,analysesFolder).get(0);
      CorePlugin.getDefault().openEditor(file,"String_Node_Str");
    }
    if (obj instanceof IndicatorDefinition) {
      IndicatorDefinition indicatorDefinition=(IndicatorDefinition)obj;
      IndicatorEditorInput input=new IndicatorEditorInput(indicatorDefinition);
      try {
        CorePlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getActivePage().openEditor(input,IndicatorEditor.class.getName());
      }
 catch (      PartInitException e1) {
        log.error(e1,e1);
      }
    }
  }
  super.mouseDoubleClick(e);
}

Fixed version (ground truth):
@Override public void mouseDoubleClick(MouseEvent e){
  Tree tree=(Tree)e.getSource();
  Point point=new Point(e.x,e.y);
  TreeItem item=tree.getItem(point);
  if (item != null) {
    Object obj=item.getData();
    if (obj instanceof AbstractFolderNode) {
      AbstractFolderNode node=(AbstractFolderNode)obj;
      node.loadChildren();
      Object[] children=node.getChildren();
      if (children != null) {
        if (item.getText().indexOf("String_Node_Str") > 0) {
          item.setText(item.getText().substring(0,item.getText().indexOf("String_Node_Str")) + "String_Node_Str" + children.length+ "String_Node_Str");
        }
 else {
          item.setText(item.getText() + "String_Node_Str" + children.length+ "String_Node_Str");
        }
      }
    }
    if (obj instanceof Analysis) {
      Analysis analysis=(Analysis)obj;
      List<RenderedObject> tempList=new ArrayList<RenderedObject>();
      tempList.add(analysis);
      IFolder analysesFolder=ResourceManager.getDataProfilingFolder().getFolder(DQStructureManager.ANALYSIS);
      IFile file=AnaResourceFileHelper.getInstance().findCorrespondingFile(tempList,analysesFolder).get(0);
      CorePlugin.getDefault().openEditor(file,"String_Node_Str");
    }
    if (obj instanceof IndicatorDefinition) {
      IndicatorDefinition indicatorDefinition=(IndicatorDefinition)obj;
      indicatorDefinition=DefinitionHandler.getInstance().getIndicatorDefinition(indicatorDefinition.getLabel());
      IndicatorEditorInput input=new IndicatorEditorInput(indicatorDefinition);
      try {
        CorePlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getActivePage().openEditor(input,IndicatorEditor.class.getName());
      }
 catch (      PartInitException e1) {
        log.error(e1,e1);
      }
    }
  }
  super.mouseDoubleClick(e);
}