Program: 128588
Project: 128588
Buggy source:
private static <E>void initDynamicNodes(Class<E> clazz) throws Exception {
  IExtensionRegistry registry=Platform.getExtensionRegistry();
  IConfigurationElement[] configurationElements=registry.getConfigurationElementsFor("String_Node_Str");
  try {
    for (int i=0; i < configurationElements.length; i++) {
      IConfigurationElement element=configurationElements[i];
      Object extensionNode=element.createExecutableExtension("String_Node_Str");
      if (extensionNode instanceof IExtendRepositoryNode) {
        IExtendRepositoryNode diyNode=(IExtendRepositoryNode)extensionNode;
        String label=element.getAttribute("String_Node_Str");
        String type=element.getAttribute("String_Node_Str");
        String folder=element.getAttribute("String_Node_Str");
        if (folder == null) {
          folder="String_Node_Str";
        }
        String isResouce=element.getAttribute("String_Node_Str");
        String rightAttribute=element.getAttribute("String_Node_Str");
        if (rightAttribute == null) {
          rightAttribute="String_Node_Str";
        }
        String productsAttribute=element.getAttribute("String_Node_Str");
        String[] products=productsAttribute.split("String_Node_Str");
        String[] user_right=rightAttribute.split("String_Node_Str");
        boolean isResource=false;
        if (isResouce != null) {
          isResource=Boolean.parseBoolean(isResouce);
        }
        boolean[] resource=new boolean[]{isResource};
        if (products == null) {
          products=new String[]{productsAttribute};
        }
        if (user_right == null) {
          user_right=new String[]{rightAttribute};
        }
        int ordinal=diyNode.getOrdinal();
        Constructor<E> dynamicConstructor=getConstructor(clazz,new Class[]{String.class,String.class,String.class,boolean.class,int.class,String[].class,String[].class,boolean[].class});
        dynamicConstructor.newInstance(label,folder,type,false,ordinal,products,user_right,resource);
      }
    }
  }
 catch (  CoreException e) {
    ExceptionHandler.process(e);
  }
}

Fixed version (ground truth):
private static <E>void initDynamicNodes(Class<E> clazz) throws Exception {
  IExtensionRegistry registry=Platform.getExtensionRegistry();
  IConfigurationElement[] configurationElements=registry.getConfigurationElementsFor("String_Node_Str");
  try {
    for (    IConfigurationElement element : configurationElements) {
      Object extensionNode=element.createExecutableExtension("String_Node_Str");
      if (extensionNode instanceof IExtendRepositoryNode) {
        IExtendRepositoryNode diyNode=(IExtendRepositoryNode)extensionNode;
        String label=element.getAttribute("String_Node_Str");
        String type=element.getAttribute("String_Node_Str");
        String folder=element.getAttribute("String_Node_Str");
        if (folder == null) {
          folder="String_Node_Str";
        }
        String isResouce=element.getAttribute("String_Node_Str");
        String rightAttribute=element.getAttribute("String_Node_Str");
        if (rightAttribute == null) {
          rightAttribute="String_Node_Str";
        }
        String productsAttribute=element.getAttribute("String_Node_Str");
        String[] products=productsAttribute.split("String_Node_Str");
        String[] user_right=rightAttribute.split("String_Node_Str");
        boolean isResource=false;
        if (isResouce != null) {
          isResource=Boolean.parseBoolean(isResouce);
        }
        boolean[] resource=new boolean[]{isResource};
        if (products == null) {
          products=new String[]{productsAttribute};
        }
        if (user_right == null) {
          user_right=new String[]{rightAttribute};
        }
        int ordinal=diyNode.getOrdinal();
        Constructor<E> dynamicConstructor=getConstructor(clazz,new Class[]{String.class,String.class,String.class,boolean.class,int.class,String[].class,String[].class,boolean[].class});
        dynamicConstructor.newInstance(label,folder,type,false,ordinal,products,user_right,resource);
      }
    }
  }
 catch (  CoreException e) {
    ExceptionHandler.process(e);
  }
}