Program: 127981
Project: 127981
Buggy source:
public static PaletteRoot createPaletteRootWithAllComponents(){
  Set<IComponent> components=ComponentsFactoryProvider.getInstance().getComponents();
  List<String> families=new ArrayList<String>();
  Hashtable<String,PaletteDrawer> ht=new Hashtable<String,PaletteDrawer>();
  PaletteRoot palette=new PaletteRoot();
  for (  IComponent component : components) {
    if (component.getComponentType() == EComponentType.JOBLET) {
      continue;
    }
    String family=component.getOriginalFamilyName();
    families.add(family);
  }
  Collections.sort(families);
  for (  String family : families) {
    String[] strings=family.split(ComponentsFactoryProvider.FAMILY_SEPARATOR_REGEX);
    for (    String string : strings) {
      PaletteDrawer componentsDrawer=ht.get(string);
      if (componentsDrawer == null) {
        componentsDrawer=createComponentDrawer(palette,ht,string,family);
      }
    }
  }
  for (  IComponent component : components) {
    if (component.getComponentType() == EComponentType.JOBLET) {
      continue;
    }
    String family=component.getOriginalFamilyName();
    String[] strings=family.split(ComponentsFactoryProvider.FAMILY_SEPARATOR_REGEX);
    for (    String string : strings) {
      CombinedTemplateCreationEntry componentEntry=new CombinedTemplateCreationEntry(component.getName(),component.getName(),null,null,component.getIcon24(),component.getIcon32());
      PaletteDrawer componentsDrawer=ht.get(string);
      componentEntry.setParent(componentsDrawer);
      componentsDrawer.add(componentEntry);
    }
  }
  return palette;
}

Fixed version (ground truth):
public static PaletteRoot createPaletteRootWithAllComponents(){
  Set<IComponent> components=ComponentsFactoryProvider.getInstance().getComponents();
  List<String> families=new ArrayList<String>();
  Hashtable<String,PaletteDrawer> ht=new Hashtable<String,PaletteDrawer>();
  PaletteRoot palette=new PaletteRoot();
  for (  IComponent component : components) {
    if (component.isTechnical() || component.getComponentType() == EComponentType.JOBLET) {
      continue;
    }
    String family=component.getOriginalFamilyName();
    families.add(family);
  }
  Collections.sort(families);
  for (  String family : families) {
    String[] strings=family.split(ComponentsFactoryProvider.FAMILY_SEPARATOR_REGEX);
    for (    String string : strings) {
      PaletteDrawer componentsDrawer=ht.get(string);
      if (componentsDrawer == null) {
        componentsDrawer=createComponentDrawer(palette,ht,string,family);
      }
    }
  }
  for (  IComponent component : components) {
    if (component.isTechnical() || component.getComponentType() == EComponentType.JOBLET) {
      continue;
    }
    String family=component.getOriginalFamilyName();
    String[] strings=family.split(ComponentsFactoryProvider.FAMILY_SEPARATOR_REGEX);
    for (    String string : strings) {
      CombinedTemplateCreationEntry componentEntry=new CombinedTemplateCreationEntry(component.getName(),component.getName(),null,null,component.getIcon24(),component.getIcon32());
      PaletteDrawer componentsDrawer=ht.get(string);
      componentEntry.setParent(componentsDrawer);
      componentsDrawer.add(componentEntry);
    }
  }
  return palette;
}