Program: 118214
Project: 118214
Buggy source:
private Command createCommand(SelectionEvent event){
  Control ctrl=(Control)event.getSource();
  String paramName=(String)ctrl.getData(PARAMETER_NAME);
  Command cmd=null;
  Boolean value=new Boolean(((Button)ctrl).getSelection());
  if (value && paramName.equals(EParameterName.USE_DYNAMIC_JOB.getName())) {
    if (elem instanceof Node) {
      String processParamName=EParameterName.PROCESS_TYPE_PROCESS.getName();
      IElementParameter processParameter=elem.getElementParameter(processParamName);
      if (processParameter != null) {
        String processId=String.valueOf(processParameter.getValue());
        IRepositoryNode repNode=null;
        if (StringUtils.isNotEmpty(processId)) {
          repNode=RepositorySeekerManager.getInstance().searchRepoViewNode(processId);
        }
        if (repNode != null && ERepositoryObjectType.PROCESS_MR != null && ERepositoryObjectType.PROCESS_MR.equals(repNode.getObjectType())) {
          cmd=new PropertyChangeCommand(elem,processParamName,"String_Node_Str");
          executeCommand(cmd);
        }
      }
    }
  }
  if (paramName.equals(EParameterName.ACTIVATE.getName())) {
    if (elem instanceof Node) {
      List<Node> nodeList=new ArrayList<Node>();
      nodeList.add((Node)elem);
      List<Connection> connList=new ArrayList<Connection>();
      cmd=new ChangeActivateStatusElementCommand(value,nodeList,connList);
    }
  }
 else {
    cmd=new PropertyChangeCommand(elem,paramName,value);
  }
  return cmd;
}

Fixed version (ground truth):
private Command createCommand(SelectionEvent event){
  Control ctrl=(Control)event.getSource();
  String paramName=(String)ctrl.getData(PARAMETER_NAME);
  Command cmd=null;
  Boolean value=new Boolean(((Button)ctrl).getSelection());
  if (value && paramName.equals(EParameterName.USE_DYNAMIC_JOB.getName())) {
    if (elem instanceof Node) {
      String processParamName=EParameterName.PROCESS_TYPE_PROCESS.getName();
      IElementParameter processParameter=elem.getElementParameter(processParamName);
      if (processParameter != null) {
        String processId=String.valueOf(processParameter.getValue());
        IRepositoryNode repNode=null;
        if (StringUtils.isNotEmpty(processId)) {
          repNode=RepositorySeekerManager.getInstance().searchRepoViewNode(processId);
        }
        if (repNode != null && ERepositoryObjectType.PROCESS_MR != null && ERepositoryObjectType.PROCESS_MR.equals(repNode.getObjectType())) {
          cmd=new PropertyChangeCommand(elem,processParamName,"String_Node_Str");
          executeCommand(cmd);
        }
      }
    }
  }
  if (paramName.equals(EParameterName.ACTIVATE.getName())) {
    if (elem instanceof Node) {
      List<Node> nodeList=new ArrayList<Node>();
      nodeList.add((Node)elem);
      List<Connection> connList=new ArrayList<Connection>();
      cmd=new ChangeActivateStatusElementCommand(value,nodeList,connList);
    }
 else     if (elem instanceof Connection) {
      List<Node> nodeList=new ArrayList<Node>();
      List<Connection> connList=new ArrayList<Connection>();
      connList.add((Connection)elem);
      cmd=new ChangeActivateStatusElementCommand(value,nodeList,connList);
    }
  }
 else {
    cmd=new PropertyChangeCommand(elem,paramName,value);
  }
  return cmd;
}