Program: 96020
Project: 96020
Buggy source:
/** 
 * Initializes m_map with name strings from xml file and its translations.
 */
@SuppressWarnings("String_Node_Str") private void initMap(){
  m_map=new HashMap<String,String>(10007);
  CompSystem compSystem=ComponentBuilder.getInstance().getCompSystem();
  for (Iterator itComp=compSystem.getComponents().iterator(); itComp.hasNext(); ) {
    Component component=(Component)itComp.next();
    String compType=component.getType();
    final List realizedTypes=component.getRealizedTypes();
    if (!component.isVisible() && !realizedTypes.isEmpty()) {
      String i18nType=realizedTypes.get(0).toString();
      if (!m_map.containsKey(compType)) {
        String value=CompSystemI18n.getString(i18nType);
        m_map.put(compType,value);
        m_map.put(value,compType);
      }
    }
 else {
      if (!m_map.containsKey(compType)) {
        String value=CompSystemI18n.getString(compType);
        m_map.put(compType,value);
        m_map.put(value,compType);
      }
    }
    if (component.isConcrete()) {
      ConcreteComponent cc=(ConcreteComponent)component;
      if (cc.hasDefaultMapping()) {
        String logicalName=cc.getDefaultMapping().getLogicalName();
        if (!m_map.containsKey(logicalName)) {
          String value=CompSystemI18n.getString(logicalName);
          m_map.put(logicalName,value);
          m_map.put(value,logicalName);
        }
      }
    }
    final List<Action> actions=component.getActions();
    for (    Action action : actions) {
      String actionName=action.getName();
      if (!m_map.containsKey(actionName)) {
        m_map.put(actionName,CompSystemI18n.getString(actionName));
      }
      List<Param> params=action.getParams();
      for (      Param param : params) {
        String paramName=param.getName();
        if (!m_map.containsKey(paramName)) {
          String value=CompSystemI18n.getString(paramName);
          m_map.put(paramName,value);
          m_map.put(value,paramName);
        }
        String paramType=param.getType();
        if (!m_map.containsKey(paramType)) {
          String value=CompSystemI18n.getString(paramType);
          m_map.put(paramType,value);
          m_map.put(value,paramType);
        }
        Iterator iter=param.valueSetIterator();
        while (iter.hasNext()) {
          ValueSetElement vSet=(ValueSetElement)iter.next();
          String paramValue=vSet.getValue();
          if (!m_map.containsKey(paramValue)) {
            String value=CompSystemI18n.getString(paramValue);
            m_map.put(paramValue,value);
            m_map.put(value,paramValue);
          }
        }
      }
    }
  }
  for (  Object o : compSystem.getEventTypes().keySet()) {
    String value=I18n.getString(o.toString());
    m_map.put(o.toString(),value);
    m_map.put(value,o.toString());
  }
}

Fixed version (ground truth):
/** 
 * Initializes m_map with name strings from xml file and its translations.
 */
@SuppressWarnings("String_Node_Str") private void initMap(){
  m_map=new HashMap<String,String>(10007);
  CompSystem compSystem=ComponentBuilder.getInstance().getCompSystem();
  for (Iterator itComp=compSystem.getComponents().iterator(); itComp.hasNext(); ) {
    Component component=(Component)itComp.next();
    String compType=component.getType();
    final List realizedTypes=component.getRealizedTypes();
    if (!component.isVisible() && !realizedTypes.isEmpty()) {
      String i18nType=realizedTypes.get(0).toString();
      if (!m_map.containsKey(compType)) {
        String value=CompSystemI18n.getString(i18nType);
        m_map.put(compType,value);
        m_map.put(value,compType);
      }
    }
 else {
      if (!m_map.containsKey(compType)) {
        String value=CompSystemI18n.getString(compType);
        m_map.put(compType,value);
        m_map.put(value,compType);
      }
    }
    if (component.isConcrete()) {
      ConcreteComponent cc=(ConcreteComponent)component;
      if (cc.hasDefaultMapping()) {
        String logicalName=cc.getDefaultMapping().getLogicalName();
        if (!m_map.containsKey(logicalName)) {
          String value=CompSystemI18n.getString(logicalName);
          m_map.put(logicalName,value);
          m_map.put(value,logicalName);
        }
      }
    }
    final List<Action> actions=component.getActions();
    for (    Action action : actions) {
      String actionName=action.getName();
      if (!m_map.containsKey(actionName)) {
        m_map.put(actionName,CompSystemI18n.getString(actionName));
      }
      List<Param> params=action.getParams();
      for (      Param param : params) {
        String paramName=param.getName();
        if (!m_map.containsKey(paramName)) {
          String value=CompSystemI18n.getString(paramName);
          m_map.put(paramName,value);
          m_map.put(value,paramName);
        }
        String paramType=param.getType();
        if (!m_map.containsKey(paramType)) {
          String value=CompSystemI18n.getString(paramType);
          m_map.put(paramType,value);
          m_map.put(value,paramType);
        }
        Iterator iter=param.valueSetIterator();
        while (iter.hasNext()) {
          ValueSetElement vSet=(ValueSetElement)iter.next();
          String paramValue=vSet.getValue();
          if (!m_map.containsKey(paramValue)) {
            String value=CompSystemI18n.getString(paramValue,true);
            m_map.put(paramValue,value);
            m_map.put(value,paramValue);
          }
        }
      }
    }
  }
  for (  Object o : compSystem.getEventTypes().keySet()) {
    String value=I18n.getString(o.toString());
    m_map.put(o.toString(),value);
    m_map.put(value,o.toString());
  }
}