Program: 168232
Project: 168232
Buggy source:
@PostConstruct public void postConstruct(Composite parent){
  final Shell shell=parent.getShell();
  appendLog("String_Node_Str");
  String[] congresses=null;
  try {
    congresses=AvailableRecords.getAllCongresses();
  }
 catch (  IOException e) {
    e.printStackTrace();
  }
  appendLog("String_Node_Str");
  String[] senatorsArray=null;
  try {
    senatorsArray=AvailableRecords.getAllSenators(congresses);
  }
 catch (  IOException e2) {
    e2.printStackTrace();
  }
  final String[] allSenators=senatorsArray;
  appendLog("String_Node_Str");
  Composite composite=new Composite(parent,SWT.NONE);
  composite.setSize(588,300);
  composite.setLocation(0,0);
  Label lblSenator=new Label(composite,SWT.NONE);
  lblSenator.setBounds(10,36,55,15);
  lblSenator.setText("String_Node_Str");
  final DateTime dateTime=new DateTime(composite,SWT.BORDER);
  dateTime.setEnabled(false);
  dateTime.setBounds(89,133,101,24);
  final DateTime dateTime_1=new DateTime(composite,SWT.BORDER);
  dateTime_1.setEnabled(false);
  dateTime_1.setBounds(288,133,101,24);
  Label lblToDate=new Label(composite,SWT.NONE);
  lblToDate.setBounds(245,137,21,15);
  lblToDate.setText("String_Node_Str");
  txtMaxDocs=new Text(composite,SWT.BORDER);
  txtMaxDocs.setToolTipText("String_Node_Str");
  txtMaxDocs.setEnabled(false);
  txtMaxDocs.setBounds(189,184,40,21);
  Label lblFrom=new Label(composite,SWT.NONE);
  lblFrom.setBounds(26,137,35,15);
  lblFrom.setText("String_Node_Str");
  final Combo cmbSenator=new Combo(composite,SWT.NONE);
  cmbSenator.setBounds(89,67,300,23);
  cmbSenator.setItems(allSenators);
  cmbSenator.add("String_Node_Str",0);
  cmbSenator.add("String_Node_Str",1);
  cmbSenator.add("String_Node_Str",2);
  cmbSenator.add("String_Node_Str",3);
  cmbSenator.select(0);
  final Combo cmbCongress=new Combo(composite,SWT.NONE);
  cmbCongress.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      try {
        String selectedCongress=cmbCongress.getText().trim();
        if (selectedCongress.equals("String_Node_Str")) {
          cmbSenator.setItems(allSenators);
          cmbSenator.add("String_Node_Str",0);
          cmbSenator.add("String_Node_Str",1);
          cmbSenator.add("String_Node_Str",2);
          cmbSenator.add("String_Node_Str",3);
          cmbSenator.select(0);
        }
 else {
          cmbSenator.setItems(AvailableRecords.getSenators(selectedCongress));
          cmbSenator.add("String_Node_Str",0);
          cmbSenator.add("String_Node_Str",1);
          cmbSenator.add("String_Node_Str",2);
          cmbSenator.add("String_Node_Str",3);
          cmbSenator.select(0);
          String congress=cmbCongress.getText().replaceAll("String_Node_Str","String_Node_Str").trim();
          int cNum=-1;
          if (!congress.equals("String_Node_Str")) {
            cNum=Integer.parseInt(congress);
            cNum=2 * (cNum - 101);
            dateTime.setYear(1989 + cNum);
            dateTime.setDay(3);
            dateTime.setMonth(0);
            dateTime_1.setYear(1990 + cNum);
            dateTime_1.setDay(3);
            dateTime_1.setMonth(0);
          }
        }
      }
 catch (      IOException e1) {
        e1.printStackTrace();
      }
      cmbSenator.select(0);
    }
  }
);
  cmbCongress.setItems(congresses);
  cmbCongress.setBounds(89,33,101,23);
  cmbCongress.select(0);
  Label lblSenator_1=new Label(composite,SWT.NONE);
  lblSenator_1.setBounds(10,70,55,15);
  lblSenator_1.setText("String_Node_Str");
  final Button btnDateRange=new Button(composite,SWT.CHECK);
  btnDateRange.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      if (btnDateRange.getSelection()) {
        dateTime.setEnabled(true);
        dateTime_1.setEnabled(true);
      }
 else {
        dateTime.setEnabled(false);
        dateTime_1.setEnabled(false);
      }
    }
  }
);
  btnDateRange.setBounds(9,112,93,16);
  btnDateRange.setText("String_Node_Str");
  Button btnExtract=new Button(composite,SWT.NONE);
  btnExtract.addMouseListener(new MouseAdapter(){
    @Override public void mouseUp(    MouseEvent e){
      int maxDocs=-1;
      if (txtMaxDocs.getText() != "String_Node_Str")       maxDocs=Integer.parseInt(txtMaxDocs.getText().trim());
      SenateCrawler senateCrawler=new SenateCrawler();
      IEclipseContext iEclipseContext=context;
      ContextInjectionFactory.inject(senateCrawler,iEclipseContext);
      String dateFrom="String_Node_Str";
      String dateTo="String_Node_Str";
      if (btnDateRange.getSelection()) {
        dateFrom=(dateTime.getMonth() + 1) + "String_Node_Str" + dateTime.getDay()+ "String_Node_Str"+ dateTime.getYear();
        dateTo=(dateTime_1.getMonth() + 1) + "String_Node_Str" + dateTime_1.getDay()+ "String_Node_Str"+ dateTime_1.getYear();
      }
      String senator=cmbSenator.getText().replaceAll("String_Node_Str","String_Node_Str").trim();
      String congress=cmbCongress.getText().replaceAll("String_Node_Str","String_Node_Str").trim();
      int cNum=-1;
      if (!congress.equals("String_Node_Str"))       cNum=Integer.parseInt(congress);
      try {
        long startTime=System.currentTimeMillis();
        appendLog("String_Node_Str");
        senateCrawler.initialize(maxDocs,cNum,senator,dateFrom,dateTo,txtOutput.getText());
        appendLog("String_Node_Str" + (System.currentTimeMillis() - startTime) / (float)1000 + "String_Node_Str");
        appendLog("String_Node_Str");
      }
 catch (      IOException e1) {
        e1.printStackTrace();
      }
    }
  }
);
  btnExtract.setBounds(10,263,75,25);
  btnExtract.setText("String_Node_Str");
  Label lblOutput=new Label(composite,SWT.NONE);
  lblOutput.setBounds(10,231,80,15);
  lblOutput.setText("String_Node_Str");
  txtOutput=new Text(composite,SWT.BORDER);
  txtOutput.setBounds(104,225,258,21);
  Button button=new Button(composite,SWT.NONE);
  button.addMouseListener(new MouseAdapter(){
    @Override public void mouseUp(    MouseEvent e){
      DirectoryDialog od=new DirectoryDialog(shell);
      od.open();
      String oDirectory=od.getFilterPath();
      txtOutput.setText(oDirectory);
    }
  }
);
  button.setBounds(358,224,40,25);
  button.setText("String_Node_Str");
  final Button btnLimitRecords=new Button(composite,SWT.CHECK);
  btnLimitRecords.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      if (btnLimitRecords.getSelection())       txtMaxDocs.setEnabled(true);
 else       txtMaxDocs.setEnabled(false);
    }
  }
);
  btnLimitRecords.setBounds(10,189,161,16);
  btnLimitRecords.setText("String_Node_Str");
  Label lblNewLabel=new Label(composite,SWT.BORDER | SWT.SHADOW_NONE);
  lblNewLabel.setBounds(433,14,133,215);
  lblNewLabel.setText("String_Node_Str");
}

Fixed version (ground truth):
@PostConstruct public void postConstruct(Composite parent){
  final Shell shell=parent.getShell();
  appendLog("String_Node_Str");
  String[] congresses=null;
  try {
    congresses=AvailableRecords.getAllCongresses();
  }
 catch (  IOException e) {
    e.printStackTrace();
  }
  appendLog("String_Node_Str");
  String[] senatorsArray=null;
  try {
    senatorsArray=AvailableRecords.getAllSenators(congresses);
  }
 catch (  IOException e2) {
    e2.printStackTrace();
  }
  final String[] allSenators=senatorsArray;
  appendLog("String_Node_Str");
  Composite composite=new Composite(parent,SWT.NONE);
  composite.setSize(588,300);
  composite.setLocation(0,0);
  Label lblSenator=new Label(composite,SWT.NONE);
  lblSenator.setBounds(10,36,55,15);
  lblSenator.setText("String_Node_Str");
  final DateTime dateTime=new DateTime(composite,SWT.BORDER);
  dateTime.setEnabled(false);
  dateTime.setBounds(89,133,101,24);
  final DateTime dateTime_1=new DateTime(composite,SWT.BORDER);
  dateTime_1.setEnabled(false);
  dateTime_1.setBounds(288,133,101,24);
  Label lblToDate=new Label(composite,SWT.NONE);
  lblToDate.setBounds(245,137,21,15);
  lblToDate.setText("String_Node_Str");
  txtMaxDocs=new Text(composite,SWT.BORDER);
  txtMaxDocs.setToolTipText("String_Node_Str");
  txtMaxDocs.setEnabled(false);
  txtMaxDocs.setBounds(189,184,40,21);
  Label lblFrom=new Label(composite,SWT.NONE);
  lblFrom.setBounds(26,137,35,15);
  lblFrom.setText("String_Node_Str");
  final Combo cmbSenator=new Combo(composite,SWT.NONE);
  cmbSenator.setBounds(89,67,300,23);
  cmbSenator.setItems(allSenators);
  cmbSenator.add("String_Node_Str",0);
  cmbSenator.add("String_Node_Str",1);
  cmbSenator.add("String_Node_Str",2);
  cmbSenator.add("String_Node_Str",3);
  cmbSenator.select(0);
  final Combo cmbCongress=new Combo(composite,SWT.NONE);
  cmbCongress.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      try {
        String selectedCongress=cmbCongress.getText().trim();
        if (selectedCongress.equals("String_Node_Str")) {
          cmbSenator.setItems(allSenators);
          cmbSenator.add("String_Node_Str",0);
          cmbSenator.add("String_Node_Str",1);
          cmbSenator.add("String_Node_Str",2);
          cmbSenator.add("String_Node_Str",3);
          cmbSenator.select(0);
        }
 else {
          cmbSenator.setItems(AvailableRecords.getSenators(selectedCongress));
          cmbSenator.add("String_Node_Str",0);
          cmbSenator.add("String_Node_Str",1);
          cmbSenator.add("String_Node_Str",2);
          cmbSenator.add("String_Node_Str",3);
          cmbSenator.select(0);
          String congress=cmbCongress.getText().replaceAll("String_Node_Str","String_Node_Str").trim();
          int cNum=-1;
          if (!congress.equals("String_Node_Str")) {
            cNum=Integer.parseInt(congress);
            cNum=2 * (cNum - 101);
            dateTime.setYear(1989 + cNum);
            dateTime.setDay(3);
            dateTime.setMonth(0);
            dateTime_1.setYear(1990 + cNum);
            dateTime_1.setDay(3);
            dateTime_1.setMonth(0);
          }
        }
      }
 catch (      IOException e1) {
        e1.printStackTrace();
      }
      cmbSenator.select(0);
    }
  }
);
  cmbCongress.setItems(congresses);
  cmbCongress.setBounds(89,33,101,23);
  cmbCongress.select(0);
  Label lblSenator_1=new Label(composite,SWT.NONE);
  lblSenator_1.setBounds(10,70,55,15);
  lblSenator_1.setText("String_Node_Str");
  final Button btnDateRange=new Button(composite,SWT.CHECK);
  btnDateRange.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      if (btnDateRange.getSelection()) {
        dateTime.setEnabled(true);
        dateTime_1.setEnabled(true);
      }
 else {
        dateTime.setEnabled(false);
        dateTime_1.setEnabled(false);
      }
    }
  }
);
  btnDateRange.setBounds(9,112,93,16);
  btnDateRange.setText("String_Node_Str");
  Button btnExtract=new Button(composite,SWT.NONE);
  btnExtract.addMouseListener(new MouseAdapter(){
    @Override public void mouseUp(    MouseEvent e){
      int maxDocs=-1;
      if (!txtMaxDocs.getText().equals("String_Node_Str"))       maxDocs=Integer.parseInt(txtMaxDocs.getText().trim());
      SenateCrawler senateCrawler=new SenateCrawler();
      IEclipseContext iEclipseContext=context;
      ContextInjectionFactory.inject(senateCrawler,iEclipseContext);
      String dateFrom="String_Node_Str";
      String dateTo="String_Node_Str";
      if (btnDateRange.getSelection()) {
        dateFrom=(dateTime.getMonth() + 1) + "String_Node_Str" + dateTime.getDay()+ "String_Node_Str"+ dateTime.getYear();
        dateTo=(dateTime_1.getMonth() + 1) + "String_Node_Str" + dateTime_1.getDay()+ "String_Node_Str"+ dateTime_1.getYear();
      }
      String senator=cmbSenator.getText().replaceAll("String_Node_Str","String_Node_Str").trim();
      String congress=cmbCongress.getText().replaceAll("String_Node_Str","String_Node_Str").trim();
      int cNum=-1;
      if (!congress.equals("String_Node_Str"))       cNum=Integer.parseInt(congress);
      try {
        long startTime=System.currentTimeMillis();
        appendLog("String_Node_Str");
        senateCrawler.initialize(maxDocs,cNum,senator,dateFrom,dateTo,txtOutput.getText());
        appendLog("String_Node_Str" + (System.currentTimeMillis() - startTime) / (float)1000 + "String_Node_Str");
        appendLog("String_Node_Str");
      }
 catch (      IOException e1) {
        e1.printStackTrace();
      }
    }
  }
);
  btnExtract.setBounds(10,263,75,25);
  btnExtract.setText("String_Node_Str");
  Label lblOutput=new Label(composite,SWT.NONE);
  lblOutput.setBounds(10,231,80,15);
  lblOutput.setText("String_Node_Str");
  txtOutput=new Text(composite,SWT.BORDER);
  txtOutput.setBounds(104,225,258,21);
  Button button=new Button(composite,SWT.NONE);
  button.addMouseListener(new MouseAdapter(){
    @Override public void mouseUp(    MouseEvent e){
      DirectoryDialog od=new DirectoryDialog(shell);
      od.open();
      String oDirectory=od.getFilterPath();
      txtOutput.setText(oDirectory);
    }
  }
);
  button.setBounds(358,224,40,25);
  button.setText("String_Node_Str");
  final Button btnLimitRecords=new Button(composite,SWT.CHECK);
  btnLimitRecords.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      if (btnLimitRecords.getSelection())       txtMaxDocs.setEnabled(true);
 else       txtMaxDocs.setEnabled(false);
    }
  }
);
  btnLimitRecords.setBounds(10,189,161,16);
  btnLimitRecords.setText("String_Node_Str");
  Label lblNewLabel=new Label(composite,SWT.BORDER | SWT.SHADOW_NONE);
  lblNewLabel.setBounds(433,14,133,215);
  lblNewLabel.setText("String_Node_Str");
}