Program: 185237
Project: 185237
Buggy source:
@Override public void updateFromFeed(Map<String,List<Map<String,String>>> data){
  if (data != null) {
    Collection<FeedProvider> feeds=getVisibleFeedProviders();
    Map<String,Double> valuesMap=new ConcurrentHashMap<String,Double>();
    for (    FeedProvider provider : feeds) {
      String feedId=provider.getSubscriptionId();
      List<Map<String,String>> dataForThisFeed=data.get(feedId);
      if (dataForThisFeed != null && !dataForThisFeed.isEmpty()) {
        Map<String,String> entry=dataForThisFeed.get(dataForThisFeed.size() - 1);
        try {
          Object value=entry.get(FeedProvider.NORMALIZED_VALUE_KEY);
          RenderingInfo ri=provider.getRenderingInfo(entry);
          value=ri.getValueText();
          valuesMap.put(feedId,Double.valueOf(ri.getValueText()));
          ;
          for (          AbstractComponent parameter : telemetryElements) {
            if (feedId.startsWith("String_Node_Str")) {
              if (feedId.substring(4).equals(parameter.getExternalKey())) {
                telemetryTable.getModel().setValueAt(value,telemetryElements.indexOf(parameter),2);
              }
            }
 else {
              if (feedId.equals(parameter.getExternalKey())) {
                telemetryTable.getModel().setValueAt(value,telemetryElements.indexOf(parameter),2);
              }
            }
          }
        }
 catch (        ClassCastException ex) {
          logger.error("String_Node_Str",ex);
        }
catch (        NumberFormatException ex) {
          logger.error("String_Node_Str",ex);
        }
      }
    }
    FeedProvider.RenderingInfo multiValueInfo=getMulti().getCapability(Evaluator.class).evaluate(data,getFeedProviders(getMulti()));
    if (multiValueInfo != null) {
      resultOutput.setText(multiValueInfo.getValueText() + multiValueInfo.getStatusText());
      resultOutput.setForeground(multiValueInfo.getValueColor());
    }
 else {
      resultOutput.setText("String_Node_Str");
    }
    if (getSelectedExpression() != null) {
      MultiExpression expression=new MultiExpression(Enum.valueOf(SetLogic.class,getSelectedExpression().getMultiSetLogic().name()),getSelectedExpression().getPUIs().split(MultiRuleExpression.parameterDelimiter,0),getSelectedExpression().getSinglePui(),getSelectedExpression().getOperator(),getSelectedExpression().getVal().toString(),getSelectedExpression().getDisplay());
      String ruleResult=expression.execute(valuesMap);
      if (ruleResult != null) {
        controlPanel.setRuleResultField(ruleResult);
      }
 else {
        controlPanel.setRuleResultField("String_Node_Str");
      }
    }
  }
}

Fixed version (ground truth):
@Override public void updateFromFeed(Map<String,List<Map<String,String>>> data){
  if (data != null) {
    Collection<FeedProvider> feeds=getVisibleFeedProviders();
    Map<String,Double> valuesMap=new HashMap<String,Double>();
    for (    FeedProvider provider : feeds) {
      String feedId=provider.getSubscriptionId();
      List<Map<String,String>> dataForThisFeed=data.get(feedId);
      if (dataForThisFeed != null && !dataForThisFeed.isEmpty()) {
        Map<String,String> entry=dataForThisFeed.get(dataForThisFeed.size() - 1);
        try {
          RenderingInfo ri=provider.getRenderingInfo(entry);
          Object value=ri.getValueText();
          valuesMap.put(feedId,Double.valueOf(ri.getValueText()));
          ;
          for (          AbstractComponent parameter : telemetryElements) {
            FeedProvider fp=parameter.getCapability(FeedProvider.class);
            if (fp != null && feedId.equals(fp.getSubscriptionId())) {
              telemetryTable.getModel().setValueAt(value,telemetryElements.indexOf(parameter),2);
            }
          }
        }
 catch (        ClassCastException ex) {
          logger.error("String_Node_Str",ex);
        }
catch (        NumberFormatException ex) {
          logger.error("String_Node_Str",ex);
        }
      }
    }
    FeedProvider.RenderingInfo multiValueInfo=getMulti().getCapability(Evaluator.class).evaluate(data,getFeedProviders(getMulti()));
    if (multiValueInfo != null) {
      resultOutput.setText(multiValueInfo.getValueText() + multiValueInfo.getStatusText());
      resultOutput.setForeground(multiValueInfo.getValueColor());
    }
 else {
      resultOutput.setText("String_Node_Str");
    }
    if (getSelectedExpression() != null) {
      MultiExpression expression=new MultiExpression(Enum.valueOf(SetLogic.class,getSelectedExpression().getMultiSetLogic().name()),getSelectedExpression().getPUIs().split(MultiRuleExpression.parameterDelimiter,0),getSelectedExpression().getSinglePui(),getSelectedExpression().getOperator(),getSelectedExpression().getVal().toString(),getSelectedExpression().getDisplay());
      String ruleResult=expression.execute(valuesMap);
      if (ruleResult != null) {
        controlPanel.setRuleResultField(ruleResult);
      }
 else {
        controlPanel.setRuleResultField("String_Node_Str");
      }
    }
  }
}