Program: 148376
Project: 148376
Buggy source:
public void run(){
  JobProcesssOptionsDialog dialog=new JobProcesssOptionsDialog(server.getSite().getShell(),"String_Node_Str");
  dialog.setBlockOnOpen(true);
  int ret=dialog.open();
  if (ret == Dialog.CANCEL)   return;
  String itemstr="String_Node_Str";
  if (dialog.isExchange()) {
    itemstr="String_Node_Str" + "String_Node_Str" + "String_Node_Str";
  }
 else {
    itemstr="String_Node_Str" + "String_Node_Str" + "String_Node_Str";
  }
  if (this.server != null) {
    ISelection selection=server.getViewer().getSelection();
    xobject=(TreeObject)((IStructuredSelection)selection).getFirstElement();
  }
  if (xobject.getType() != TreeObject.JOB)   return;
  try {
    WSTransformerV2 transformer=new WSTransformerV2();
    try {
      WSTransformerProcessStep[] steps=new WSTransformerProcessStep[3];
      WSTransformerVariablesMapping[] input=new WSTransformerVariablesMapping[1];
      input[0]=new WSTransformerVariablesMapping("String_Node_Str","String_Node_Str",null);
      WSTransformerVariablesMapping[] output=new WSTransformerVariablesMapping[1];
      output[0]=new WSTransformerVariablesMapping("String_Node_Str","String_Node_Str",null);
      steps[0]=new WSTransformerProcessStep("String_Node_Str","String_Node_Str",itemstr,input,output,false);
      input=new WSTransformerVariablesMapping[1];
      input[0]=new WSTransformerVariablesMapping("String_Node_Str","String_Node_Str",null);
      output=new WSTransformerVariablesMapping[1];
      output[0]=new WSTransformerVariablesMapping("String_Node_Str","String_Node_Str",null);
      String parameter="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str";
      steps[1]=new WSTransformerProcessStep("String_Node_Str","String_Node_Str",parameter,input,output,false);
      input=new WSTransformerVariablesMapping[1];
      input[0]=new WSTransformerVariablesMapping("String_Node_Str","String_Node_Str",null);
      output=new WSTransformerVariablesMapping[1];
      output[0]=new WSTransformerVariablesMapping("String_Node_Str","String_Node_Str",null);
      String server="String_Node_Str" + xobject.getEndpointHost() + "String_Node_Str"+ xobject.getEndpointPort();
      String filename=xobject.getDisplayName();
      String jobname=null;
      String jobversion=null;
      if (filename.lastIndexOf("String_Node_Str") > 0 && filename.lastIndexOf("String_Node_Str") > 0) {
        jobname=filename.substring(0,filename.lastIndexOf("String_Node_Str"));
        jobversion=filename.substring(0,filename.lastIndexOf("String_Node_Str"));
      }
      if (jobname == null || jobname.length() == 0)       return;
      if (filename.endsWith("String_Node_Str")) {
        String version=jobversion.substring(jobname.length() + 1);
        parameter="String_Node_Str" + "String_Node_Str" + jobname + "String_Node_Str"+ version+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str";
      }
 else {
        parameter="String_Node_Str" + "String_Node_Str" + server + "String_Node_Str"+ jobversion+ "String_Node_Str"+ jobname+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str";
      }
      steps[2]=new WSTransformerProcessStep("String_Node_Str","String_Node_Str",parameter,input,output,false);
      transformer.setName("String_Node_Str" + filename);
      transformer.setDescription("String_Node_Str" + filename);
      transformer.setProcessSteps(steps);
      Util.getPort(xobject).putTransformerV2(new WSPutTransformerV2(transformer));
      TreeObject obj=new TreeObject(transformer.getName(),xobject.getServerRoot(),TreeObject.TRANSFORMER,new WSTransformerV2PK(transformer.getName()),null);
      TreeParent folder=xobject.findServerFolder(xobject.TRANSFORMER);
      folder.addChild(obj);
    }
 catch (    Exception e) {
      log.error(e.getStackTrace());
    }
  }
 catch (  Exception e) {
  }
 finally {
  }
}

Fixed version (ground truth):
public void run(){
  JobProcesssOptionsDialog dialog=new JobProcesssOptionsDialog(server.getSite().getShell(),"String_Node_Str");
  dialog.setBlockOnOpen(true);
  int ret=dialog.open();
  if (ret == Dialog.CANCEL)   return;
  String itemstr="String_Node_Str";
  if (dialog.isExchange()) {
    itemstr="String_Node_Str" + "String_Node_Str" + "String_Node_Str";
  }
 else {
    itemstr="String_Node_Str" + "String_Node_Str" + "String_Node_Str";
  }
  if (this.server != null) {
    ISelection selection=server.getViewer().getSelection();
    xobject=(TreeObject)((IStructuredSelection)selection).getFirstElement();
  }
  if (xobject.getType() != TreeObject.JOB)   return;
  try {
    WSTransformerV2 transformer=new WSTransformerV2();
    try {
      WSTransformerProcessStep[] steps=new WSTransformerProcessStep[3];
      WSTransformerVariablesMapping[] input=new WSTransformerVariablesMapping[1];
      input[0]=new WSTransformerVariablesMapping("String_Node_Str","String_Node_Str",null);
      WSTransformerVariablesMapping[] output=new WSTransformerVariablesMapping[1];
      output[0]=new WSTransformerVariablesMapping("String_Node_Str","String_Node_Str",null);
      steps[0]=new WSTransformerProcessStep("String_Node_Str","String_Node_Str",itemstr,input,output,false);
      input=new WSTransformerVariablesMapping[1];
      input[0]=new WSTransformerVariablesMapping("String_Node_Str","String_Node_Str",null);
      output=new WSTransformerVariablesMapping[1];
      output[0]=new WSTransformerVariablesMapping("String_Node_Str","String_Node_Str",null);
      String parameter="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str";
      steps[1]=new WSTransformerProcessStep("String_Node_Str","String_Node_Str",parameter,input,output,false);
      input=new WSTransformerVariablesMapping[1];
      input[0]=new WSTransformerVariablesMapping("String_Node_Str","String_Node_Str",null);
      output=new WSTransformerVariablesMapping[1];
      output[0]=new WSTransformerVariablesMapping("String_Node_Str","String_Node_Str",null);
      String server="String_Node_Str" + xobject.getEndpointHost() + "String_Node_Str"+ xobject.getEndpointPort();
      String filename=xobject.getDisplayName();
      String jobname=null;
      String jobversion=null;
      if (filename.lastIndexOf("String_Node_Str") > 0 && filename.lastIndexOf("String_Node_Str") > 0) {
        jobname=filename.substring(0,filename.lastIndexOf("String_Node_Str"));
        jobversion=filename.substring(0,filename.lastIndexOf("String_Node_Str"));
      }
      if (jobname == null || jobname.length() == 0)       return;
      if (filename.endsWith("String_Node_Str")) {
        String version=jobversion.substring(jobname.length() + 1);
        parameter="String_Node_Str" + "String_Node_Str" + jobname + "String_Node_Str"+ version+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str";
      }
 else {
        parameter="String_Node_Str" + "String_Node_Str" + server + "String_Node_Str"+ jobversion+ "String_Node_Str"+ jobname+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str";
      }
      steps[2]=new WSTransformerProcessStep("String_Node_Str","String_Node_Str",parameter,input,output,false);
      transformer.setName("String_Node_Str" + filename);
      transformer.setDescription("String_Node_Str" + filename);
      transformer.setProcessSteps(steps);
      Util.getPort(xobject).putTransformerV2(new WSPutTransformerV2(transformer));
      TreeObject obj=new TreeObject(transformer.getName(),xobject.getServerRoot(),TreeObject.TRANSFORMER,new WSTransformerV2PK(transformer.getName()),null);
      TreeParent folder=xobject.findServerFolder(xobject.TRANSFORMER);
      folder.addChild(obj);
    }
 catch (    Exception e) {
      log.error(e.getMessage(),e);
    }
  }
 catch (  Exception e) {
  }
 finally {
  }
}