Program: 188345
Project: 188345
Buggy source:
protected void updateWorkflowOptions(){
  isListEmpty=true;
  if (selectedPlugin == null) {
    workflowListDescription.clear();
    workflowListDescriptionCategories.setText("String_Node_Str");
    workflowListDescription.setVisible(false);
    workflowListDescriptionCategories.setVisible(false);
    workflowOptions.setPluginInfo(null);
  }
 else {
    String pluginName=messages.pluginLabel(selectedPlugin.getName(),selectedPlugin.getVersion());
    name.setText(pluginName);
    workflowListTitle.setText(pluginName);
    String description=selectedPlugin.getDescription();
    if (description != null && description.length() > 0) {
      String[] split=description.split("String_Node_Str");
      workflowListDescription.clear();
      for (      String s : split) {
        Label descriptionLine=new Label(s);
        descriptionLine.addStyleName("String_Node_Str");
        descriptionLine.addStyleName("String_Node_Str");
        workflowListDescription.add(descriptionLine);
      }
      List<String> categoryTranslations=new ArrayList<>();
      for (      String category : selectedPlugin.getCategories()) {
        categoryTranslations.add(messages.showPluginCategories(category));
      }
      SafeHtml categories=messages.createJobCategoryWorkflow(categoryTranslations);
      workflowListDescriptionCategories.setHTML(categories);
      workflowListDescription.setVisible(true);
      workflowListDescriptionCategories.setVisible(true);
    }
 else {
      workflowListDescription.setVisible(false);
      workflowListDescriptionCategories.setVisible(false);
    }
    if (selectedPlugin.getParameters().isEmpty()) {
      workflowPanel.setVisible(false);
    }
 else {
      workflowPanel.setVisible(true);
      workflowOptions.setPluginInfo(selectedPlugin);
    }
    targetList.clear();
    List<String> rodaClasses=getPluginNames(selectedPlugin.getObjectClasses());
    for (    String objectClass : rodaClasses) {
      targetList.addItem(messages.allOfAObject(objectClass),objectClass);
    }
    targetList.addChangeHandler(new ChangeHandler(){
      @Override public void onChange(      ChangeEvent event){
        targetListPanel.clear();
        defineTargetInformation(targetList.getSelectedValue());
      }
    }
);
    targetListPanel.clear();
    defineTargetInformation(targetList.getSelectedValue());
  }
}

Fixed version (ground truth):
protected void updateWorkflowOptions(){
  isListEmpty=true;
  if (selectedPlugin == null) {
    workflowListDescription.clear();
    workflowListDescriptionCategories.setText("String_Node_Str");
    workflowListDescription.setVisible(false);
    workflowListDescriptionCategories.setVisible(false);
    workflowOptions.setPluginInfo(null);
  }
 else {
    String pluginName=messages.pluginLabelWithVersion(selectedPlugin.getName(),selectedPlugin.getVersion());
    name.setText(pluginName);
    workflowListTitle.setText(pluginName);
    String description=selectedPlugin.getDescription();
    if (description != null && description.length() > 0) {
      String[] split=description.split("String_Node_Str");
      workflowListDescription.clear();
      for (      String s : split) {
        Label descriptionLine=new Label(s);
        descriptionLine.addStyleName("String_Node_Str");
        descriptionLine.addStyleName("String_Node_Str");
        workflowListDescription.add(descriptionLine);
      }
      List<String> categoryTranslations=new ArrayList<>();
      for (      String category : selectedPlugin.getCategories()) {
        categoryTranslations.add(messages.showPluginCategories(category));
      }
      SafeHtml categories=messages.createJobCategoryWorkflow(categoryTranslations);
      workflowListDescriptionCategories.setHTML(categories);
      workflowListDescription.setVisible(true);
      workflowListDescriptionCategories.setVisible(true);
    }
 else {
      workflowListDescription.setVisible(false);
      workflowListDescriptionCategories.setVisible(false);
    }
    if (selectedPlugin.getParameters().isEmpty()) {
      workflowPanel.setVisible(false);
    }
 else {
      workflowPanel.setVisible(true);
      workflowOptions.setPluginInfo(selectedPlugin);
    }
    targetList.clear();
    List<String> rodaClasses=getPluginNames(selectedPlugin.getObjectClasses());
    for (    String objectClass : rodaClasses) {
      targetList.addItem(messages.allOfAObject(objectClass),objectClass);
    }
    targetList.addChangeHandler(new ChangeHandler(){
      @Override public void onChange(      ChangeEvent event){
        targetListPanel.clear();
        defineTargetInformation(targetList.getSelectedValue());
      }
    }
);
    targetListPanel.clear();
    defineTargetInformation(targetList.getSelectedValue());
  }
}