Program: 78601
Project: 78601
Buggy source:
protected void okPressed(){
  try {
    inputGroup.setName(nameEditor.getText());
    String newToc=UIUtil.convertToModelString(tocEditor.getText(),true);
    if (newToc != inputGroup.getTocExpression()) {
      if (newToc == null || !newToc.equals(inputGroup.getTocExpression())) {
        inputGroup.setTocExpression(newToc);
      }
    }
    int index=keyChooser.getSelectionIndex();
    String oldKeyExpr=inputGroup.getKeyExpr();
    String newKeyExpr=getKeyExpression();
    inputGroup.setKeyExpr(newKeyExpr);
    if (newKeyExpr != null && !newKeyExpr.equals(oldKeyExpr)) {
      SlotHandle slotHandle=null;
      if (inputGroup instanceof ListGroupHandle) {
        slotHandle=inputGroup.getHeader();
      }
 else       if (inputGroup instanceof TableGroupHandle) {
        if (inputGroup.getHeader().getCount() != 0) {
          RowHandle rowHandle=((RowHandle)inputGroup.getHeader().get(0));
          CellHandle cellHandle=(CellHandle)rowHandle.getCells().get(0);
          slotHandle=cellHandle.getContent();
        }
      }
      if (slotHandle != null) {
        DesignElementHandle dataItemHandle=InsertInLayoutUtil.performInsert(newKeyExpr.trim(),slotHandle,inputGroup.getContainer());
        slotHandle.add(dataItemHandle);
      }
    }
    index=intervalType.getSelectionIndex();
    inputGroup.setInterval(intervalChoices[index].getName());
    if (index != 0) {
      inputGroup.setIntervalRange(intervalRange.getSelection());
    }
 else {
      inputGroup.setProperty(GroupHandle.INTERVAL_RANGE_PROP,null);
    }
    if (intervalBaseText.getEnabled()) {
      inputGroup.setIntervalBase(UIUtil.convertToModelString(intervalBaseText.getText(),false));
    }
 else {
      inputGroup.setIntervalBase(null);
    }
    if (inputGroup instanceof TableGroupHandle) {
      if (includeHeader.getSelection() != inputGroup.hasHeader()) {
        if (includeHeader.getSelection()) {
          inputGroup.getHeader().add(createRow());
        }
 else {
          inputGroup.clearContents(GroupHandle.HEADER_SLOT);
        }
      }
      if (includeFooter.getSelection() != inputGroup.hasFooter()) {
        if (includeFooter.getSelection()) {
          inputGroup.getFooter().add(createRow());
        }
 else {
          inputGroup.clearContents(GroupHandle.FOOTER_SLOT);
        }
      }
    }
    if (ascending.getSelection()) {
      inputGroup.setSortDirection(DesignChoiceConstants.SORT_DIRECTION_ASC);
    }
 else {
      inputGroup.setSortDirection(DesignChoiceConstants.SORT_DIRECTION_DESC);
    }
  }
 catch (  SemanticException e) {
    ExceptionHandler.handle(e);
    return;
  }
  setResult(inputGroup);
  super.okPressed();
}

Fixed version (ground truth):
protected void okPressed(){
  try {
    inputGroup.setName(nameEditor.getText());
    String newToc=UIUtil.convertToModelString(tocEditor.getText(),true);
    if (newToc != inputGroup.getTocExpression()) {
      if (newToc == null || !newToc.equals(inputGroup.getTocExpression())) {
        inputGroup.setTocExpression(newToc);
      }
    }
    int index=keyChooser.getSelectionIndex();
    String oldKeyExpr=inputGroup.getKeyExpr();
    String newKeyExpr=getKeyExpression();
    inputGroup.setKeyExpr(newKeyExpr);
    if (newKeyExpr != null && !newKeyExpr.equals(oldKeyExpr)) {
      SlotHandle slotHandle=null;
      if (inputGroup instanceof ListGroupHandle) {
        slotHandle=inputGroup.getHeader();
      }
 else       if (inputGroup instanceof TableGroupHandle) {
        if (inputGroup.getHeader().getCount() != 0) {
          RowHandle rowHandle=((RowHandle)inputGroup.getHeader().get(0));
          CellHandle cellHandle=(CellHandle)rowHandle.getCells().get(0);
          slotHandle=cellHandle.getContent();
        }
      }
      if (slotHandle != null) {
        Object insertObject;
        if (index == -1) {
          insertObject=newKeyExpr.trim();
        }
 else {
          insertObject=columnList.get(index);
        }
        DesignElementHandle dataItemHandle=InsertInLayoutUtil.performInsert(insertObject,slotHandle,inputGroup.getContainer());
        slotHandle.add(dataItemHandle);
      }
    }
    index=intervalType.getSelectionIndex();
    inputGroup.setInterval(intervalChoices[index].getName());
    if (index != 0) {
      inputGroup.setIntervalRange(intervalRange.getSelection());
    }
 else {
      inputGroup.setProperty(GroupHandle.INTERVAL_RANGE_PROP,null);
    }
    if (intervalBaseText.getEnabled()) {
      inputGroup.setIntervalBase(UIUtil.convertToModelString(intervalBaseText.getText(),false));
    }
 else {
      inputGroup.setIntervalBase(null);
    }
    if (inputGroup instanceof TableGroupHandle) {
      if (includeHeader.getSelection() != inputGroup.hasHeader()) {
        if (includeHeader.getSelection()) {
          inputGroup.getHeader().add(createRow());
        }
 else {
          inputGroup.clearContents(GroupHandle.HEADER_SLOT);
        }
      }
      if (includeFooter.getSelection() != inputGroup.hasFooter()) {
        if (includeFooter.getSelection()) {
          inputGroup.getFooter().add(createRow());
        }
 else {
          inputGroup.clearContents(GroupHandle.FOOTER_SLOT);
        }
      }
    }
    if (ascending.getSelection()) {
      inputGroup.setSortDirection(DesignChoiceConstants.SORT_DIRECTION_ASC);
    }
 else {
      inputGroup.setSortDirection(DesignChoiceConstants.SORT_DIRECTION_DESC);
    }
  }
 catch (  SemanticException e) {
    ExceptionHandler.handle(e);
    return;
  }
  setResult(inputGroup);
  super.okPressed();
}