Program: 101950
Project: 101950
Buggy source:
/** 
 * {@inheritDoc}
 * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite)
 */
@Override public void createControl(final Composite parent){
  final IDialogSettings settings=getDialogSettings();
  initDlgFolderName=settings.get(INITIAL_DIALOG_FOLDER_SETTING);
  final Composite hostPanel=new Composite(parent,SWT.NONE);
  hostPanel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
  hostPanel.setLayout(new GridLayout(1,false));
  DefaultScrolledComposite scrolledComposite=new DefaultScrolledComposite(hostPanel,SWT.H_SCROLL | SWT.V_SCROLL);
  scrolledComposite.setExpandHorizontal(true);
  scrolledComposite.setExpandVertical(true);
  GridLayoutFactory.fillDefaults().equalWidth(false).applyTo(scrolledComposite);
  GridDataFactory.fillDefaults().grab(true,false);
  final Composite panel=scrolledComposite.getPanel();
  panel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
  panel.setLayout(new GridLayout(3,false));
  setControl(panel);
  Composite ddlFileGroup=WidgetFactory.createGroup(panel,DdlImporterUiI18n.FILE_GROUP_LABEL,GridData.FILL_HORIZONTAL,3,3);
  WidgetFactory.createLabel(ddlFileGroup,GridData.VERTICAL_ALIGN_CENTER,DdlImporterUiI18n.DDL_FILE_LABEL);
  String[] ddlFileHistory=settings.getArray(HISTORY_SETTING);
  List<String> historyList=null;
  if (ddlFileHistory != null) {
    historyList=Arrays.asList(ddlFileHistory);
  }
 else {
    historyList=Collections.emptyList();
  }
  ddlFileCombo=WidgetFactory.createCombo(ddlFileGroup,SWT.NONE,GridData.FILL_HORIZONTAL,historyList,new LabelProvider(),false);
  ddlFileCombo.addModifyListener(new ModifyListener(){
    @Override public void modifyText(    final ModifyEvent event){
      ddlFileModified();
    }
  }
);
  ddlFileCombo.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    final SelectionEvent event){
      ddlFileSelected();
    }
  }
);
  final Composite buttonPanel=WidgetFactory.createPanel(ddlFileGroup,SWT.NO_TRIM);
  Button button=WidgetFactory.createButton(buttonPanel,DdlImporterUiI18n.CHOOSE_FROM_FILE_SYSTEM_BUTTON,GridData.HORIZONTAL_ALIGN_FILL);
  button.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    final SelectionEvent event){
      chooseDdlFile();
    }
  }
);
  button=WidgetFactory.createButton(buttonPanel,DdlImporterUiI18n.CHOOSE_FROM_WORKSPACE_BUTTON,GridData.HORIZONTAL_ALIGN_FILL);
  button.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    final SelectionEvent event){
      chooseDdlFileFromWorkspace();
    }
  }
);
  TabFolder tabFolder=createTabFolder(panel);
  createModelDefinitionTab(tabFolder);
  createNameOptionsTab(tabFolder);
  createDdlTab(tabFolder);
  scrolledComposite.sizeScrolledPanel();
  setControl(hostPanel);
  if (selectedFile != null) {
    if (relationalModel(selectedFile)) {
      modelNameFld.setText(selectedFile.getFullPath().removeFileExtension().lastSegment());
      generateModelName=false;
    }
 else {
      String ext=selectedFile.getFileExtension();
      if (ext != null) {
        ext=ext.toLowerCase();
        if ("String_Node_Str".equals(ext) || "String_Node_Str".equals(ext))         ddlFileCombo.setText(selectedFile.getLocation().toString());
      }
    }
  }
 else   validate();
}

Fixed version (ground truth):
/** 
 * {@inheritDoc}
 * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite)
 */
@Override public void createControl(final Composite parent){
  monospaceFont(parent);
  final IDialogSettings settings=getDialogSettings();
  initDlgFolderName=settings.get(INITIAL_DIALOG_FOLDER_SETTING);
  final Composite hostPanel=new Composite(parent,SWT.NONE);
  hostPanel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
  hostPanel.setLayout(new GridLayout(1,false));
  DefaultScrolledComposite scrolledComposite=new DefaultScrolledComposite(hostPanel,SWT.H_SCROLL | SWT.V_SCROLL);
  scrolledComposite.setExpandHorizontal(true);
  scrolledComposite.setExpandVertical(true);
  GridLayoutFactory.fillDefaults().equalWidth(false).applyTo(scrolledComposite);
  GridDataFactory.fillDefaults().grab(true,false);
  final Composite panel=scrolledComposite.getPanel();
  panel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
  panel.setLayout(new GridLayout(3,false));
  setControl(panel);
  Composite ddlFileGroup=WidgetFactory.createGroup(panel,DdlImporterUiI18n.FILE_GROUP_LABEL,GridData.FILL_HORIZONTAL,3,3);
  WidgetFactory.createLabel(ddlFileGroup,GridData.VERTICAL_ALIGN_CENTER,DdlImporterUiI18n.DDL_FILE_LABEL);
  String[] ddlFileHistory=settings.getArray(HISTORY_SETTING);
  List<String> historyList=null;
  if (ddlFileHistory != null) {
    historyList=Arrays.asList(ddlFileHistory);
  }
 else {
    historyList=Collections.emptyList();
  }
  ddlFileCombo=WidgetFactory.createCombo(ddlFileGroup,SWT.NONE,GridData.FILL_HORIZONTAL,historyList,new LabelProvider(),false);
  ddlFileCombo.addModifyListener(new ModifyListener(){
    @Override public void modifyText(    final ModifyEvent event){
      ddlFileModified();
    }
  }
);
  ddlFileCombo.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    final SelectionEvent event){
      ddlFileSelected();
    }
  }
);
  final Composite buttonPanel=WidgetFactory.createPanel(ddlFileGroup,SWT.NO_TRIM);
  Button button=WidgetFactory.createButton(buttonPanel,DdlImporterUiI18n.CHOOSE_FROM_FILE_SYSTEM_BUTTON,GridData.HORIZONTAL_ALIGN_FILL);
  button.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    final SelectionEvent event){
      chooseDdlFile();
    }
  }
);
  button=WidgetFactory.createButton(buttonPanel,DdlImporterUiI18n.CHOOSE_FROM_WORKSPACE_BUTTON,GridData.HORIZONTAL_ALIGN_FILL);
  button.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    final SelectionEvent event){
      chooseDdlFileFromWorkspace();
    }
  }
);
  TabFolder tabFolder=createTabFolder(panel);
  createModelDefinitionTab(tabFolder);
  createNameOptionsTab(tabFolder);
  createDdlTab(tabFolder);
  scrolledComposite.sizeScrolledPanel();
  setControl(hostPanel);
  if (selectedFile != null) {
    if (relationalModel(selectedFile)) {
      modelNameFld.setText(selectedFile.getFullPath().removeFileExtension().lastSegment());
      generateModelName=false;
    }
 else {
      String ext=selectedFile.getFileExtension();
      if (ext != null) {
        ext=ext.toLowerCase();
        if ("String_Node_Str".equals(ext) || "String_Node_Str".equals(ext))         ddlFileCombo.setText(selectedFile.getLocation().toString());
      }
    }
  }
 else   validate();
}