Program: 123013
Project: 123013
Buggy source:
/** 
 * DOC amaumont Comment method "initGraphicComponents".
 * @param parent
 */
private void initGraphicComponents(Composite parent){
  setExpandHorizontal(true);
  setExpandVertical(true);
  this.setBackground(parent.getDisplay().getSystemColor(SWT.COLOR_DARK_GRAY));
  FormData layouData=new FormData();
  layouData.left=new FormAttachment(0,0);
  layouData.right=new FormAttachment(100,0);
  layouData.top=new FormAttachment(0,0);
  layouData.bottom=new FormAttachment(100,0);
  setLayoutData(layouData);
  this.setLayout(new FormLayout());
  final Composite panel=new Composite(this,SWT.NONE);
  setContent(panel);
  FormLayout layout2=new FormLayout();
  layout2.marginWidth=5 + 2;
  layout2.marginHeight=4;
  layout2.spacing=6 + 1;
  panel.setLayout(layout2);
  GridData data;
  GridLayout layout=new GridLayout();
  Group execGroup=new Group(panel,SWT.NONE);
  execGroup.setText(Messages.getString("String_Node_Str"));
  layout=new GridLayout();
  layout.marginHeight=0;
  layout.marginWidth=0;
  execGroup.setLayout(layout);
  FormData layouDatag=new FormData();
  layouDatag.left=new FormAttachment(0,0);
  layouDatag.right=new FormAttachment(100,0);
  layouDatag.top=new FormAttachment(0,0);
  layouDatag.bottom=new FormAttachment(100,0);
  execGroup.setLayoutData(layouDatag);
  ScrolledComposite execScroll=new ScrolledComposite(execGroup,SWT.V_SCROLL | SWT.H_SCROLL);
  execScroll.setExpandHorizontal(true);
  execScroll.setExpandVertical(true);
  execScroll.setLayoutData(new GridData(GridData.FILL_BOTH));
  Composite execContent=new Composite(execScroll,SWT.NONE);
  layout=new GridLayout();
  execContent.setLayout(new FormLayout());
  execScroll.setContent(execContent);
  Composite execHeader=new Composite(execContent,SWT.NONE);
  FormLayout formLayout=new FormLayout();
  formLayout.marginWidth=7;
  formLayout.marginHeight=4;
  formLayout.spacing=7;
  execHeader.setLayout(formLayout);
  FormData layoutData=new FormData();
  layoutData.left=new FormAttachment(0,0);
  layoutData.right=new FormAttachment(100,0);
  layoutData.top=new FormAttachment(0,0);
  layoutData.bottom=new FormAttachment(0,50);
  execHeader.setLayoutData(layoutData);
  run=new Button(execHeader,SWT.PUSH);
  run.setText("String_Node_Str" + Messages.getString("String_Node_Str"));
  run.setData(ProcessView.EXEC_ID);
  run.setToolTipText(Messages.getString("String_Node_Str"));
  run.setImage(ImageProvider.getImage(ERunprocessImages.RUN_PROCESS_ACTION));
  run.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent event){
      errorMessMap.clear();
      execButtonPressed();
    }
  }
);
  IBrandingService brandingService=(IBrandingService)GlobalServiceRegister.getDefault().getService(IBrandingService.class);
  if (processContext == null) {
    run.setEnabled(false);
  }
  FormData formData=new FormData();
  Point debugSize=null;
  Point execSize=null;
  formData.left=new FormAttachment(0);
  execSize=computeSize(run.getText());
  formData.right=new FormAttachment(0,execSize.x + 70);
  formData.height=30;
  run.setLayoutData(formData);
  killBtn=new Button(execHeader,SWT.PUSH);
  killBtn.setText(Messages.getString("String_Node_Str"));
  killBtn.setToolTipText(Messages.getString("String_Node_Str"));
  killBtn.setImage(ImageProvider.getImage(ERunprocessImages.KILL_PROCESS_ACTION));
  setButtonLayoutData(killBtn);
  killBtn.setEnabled(false);
  formData=new FormData();
  formData.top=new FormAttachment(run,0,SWT.TOP);
  formData.left=new FormAttachment(run,0,SWT.RIGHT);
  Point killSize=computeSize(killBtn.getText());
  formData.right=new FormAttachment(run,30 + 70,SWT.RIGHT);
  formData.height=30;
  killBtn.setLayoutData(formData);
  clearTracePerfBtn=new Button(execHeader,SWT.PUSH);
  clearTracePerfBtn.setText(Messages.getString("String_Node_Str"));
  clearTracePerfBtn.setToolTipText(Messages.getString("String_Node_Str"));
  clearTracePerfBtn.setImage(ImageProvider.getImage(RunProcessPlugin.imageDescriptorFromPlugin(RunProcessPlugin.PLUGIN_ID,"String_Node_Str")));
  clearTracePerfBtn.setEnabled(false);
  formData=new FormData();
  formData.top=new FormAttachment(killBtn,0,SWT.TOP);
  formData.left=new FormAttachment(killBtn,0,SWT.RIGHT);
  formData.right=new FormAttachment(killBtn,10 + 70,SWT.RIGHT);
  formData.height=30;
  clearTracePerfBtn.setLayoutData(formData);
  consoleText=new StyledText(execContent,SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL| SWT.READ_ONLY);
  consoleText.setWordWrap(true);
  data=new GridData(GridData.FILL_BOTH);
  data.horizontalSpan=2;
  data.minimumHeight=MINIMUM_HEIGHT;
  data.minimumWidth=MINIMUM_WIDTH;
  layouData=new FormData();
  layouData.left=new FormAttachment(0,10);
  layouData.right=new FormAttachment(100,0);
  layouData.top=new FormAttachment(0,50);
  layouData.bottom=new FormAttachment(100,-30);
  consoleText.setLayoutData(layouData);
  consoleText.addKeyListener(new KeyListener(){
    public void keyPressed(    KeyEvent evt){
      if ((evt.stateMask == SWT.CTRL) && (evt.keyCode == 'a')) {
        if (consoleText.getText().length() > 0)         consoleText.setSelection(0,(consoleText.getText().length() - 1));
      }
 else       if ((evt.stateMask == SWT.CTRL) && (evt.keyCode == 'f')) {
        FindDialog td=new FindDialog(Display.getCurrent().getActiveShell());
        td.setConsoleText(consoleText);
        td.setBlockOnOpen(true);
        td.open();
      }
    }
    public void keyReleased(    KeyEvent arg0){
    }
  }
);
  setConsoleFont();
  IPreferenceStore preferenceStore=CorePlugin.getDefault().getPreferenceStore();
  preferenceStore.addPropertyChangeListener(new IPropertyChangeListener(){
    public void propertyChange(    org.eclipse.jface.util.PropertyChangeEvent event){
      if (TalendDesignerPrefConstants.CONSOLT_TEXT_FONT.endsWith(event.getProperty())) {
        setConsoleFont();
      }
    }
  }
);
  pcl=new PropertyChangeListener(){
    public void propertyChange(    PropertyChangeEvent evt){
      runProcessContextChanged(evt);
    }
  }
;
  streamListener=new IStreamListener(){
    public void streamAppended(    String text,    IStreamMonitor monitor){
      IProcessMessage message=new ProcessMessage(ProcessMessage.MsgType.STD_OUT,text);
      processContext.addDebugResultToConsole(message);
    }
  }
;
  addListeners();
  createLineLimitedControl(execContent);
}

Fixed version (ground truth):
/** 
 * DOC amaumont Comment method "initGraphicComponents".
 * @param parent
 */
private void initGraphicComponents(Composite parent){
  setExpandHorizontal(true);
  setExpandVertical(true);
  this.setBackground(parent.getDisplay().getSystemColor(SWT.COLOR_DARK_GRAY));
  FormData layouData=new FormData();
  layouData.left=new FormAttachment(0,0);
  layouData.right=new FormAttachment(100,0);
  layouData.top=new FormAttachment(0,0);
  layouData.bottom=new FormAttachment(100,0);
  setLayoutData(layouData);
  this.setLayout(new FormLayout());
  final Composite panel=new Composite(this,SWT.NONE);
  setContent(panel);
  FormLayout layout2=new FormLayout();
  layout2.marginWidth=5 + 2;
  layout2.marginHeight=4;
  layout2.spacing=6 + 1;
  panel.setLayout(layout2);
  GridData data;
  GridLayout layout=new GridLayout();
  Group execGroup=new Group(panel,SWT.NONE);
  execGroup.setText(Messages.getString("String_Node_Str"));
  layout=new GridLayout();
  layout.marginHeight=0;
  layout.marginWidth=0;
  execGroup.setLayout(layout);
  FormData layouDatag=new FormData();
  layouDatag.left=new FormAttachment(0,0);
  layouDatag.right=new FormAttachment(100,0);
  layouDatag.top=new FormAttachment(0,0);
  layouDatag.bottom=new FormAttachment(100,0);
  execGroup.setLayoutData(layouDatag);
  ScrolledComposite execScroll=new ScrolledComposite(execGroup,SWT.V_SCROLL | SWT.H_SCROLL);
  execScroll.setExpandHorizontal(true);
  execScroll.setExpandVertical(true);
  execScroll.setLayoutData(new GridData(GridData.FILL_BOTH));
  Composite execContent=new Composite(execScroll,SWT.NONE);
  layout=new GridLayout();
  execContent.setLayout(new FormLayout());
  execScroll.setContent(execContent);
  Composite execHeader=new Composite(execContent,SWT.NONE);
  FormLayout formLayout=new FormLayout();
  formLayout.marginWidth=7;
  formLayout.marginHeight=4;
  formLayout.spacing=7;
  execHeader.setLayout(formLayout);
  FormData layoutData=new FormData();
  layoutData.left=new FormAttachment(0,0);
  layoutData.right=new FormAttachment(100,0);
  layoutData.top=new FormAttachment(0,0);
  layoutData.bottom=new FormAttachment(0,50);
  execHeader.setLayoutData(layoutData);
  run=new Button(execHeader,SWT.PUSH);
  run.setText("String_Node_Str" + Messages.getString("String_Node_Str"));
  run.setData(ProcessView.EXEC_ID);
  run.setToolTipText(Messages.getString("String_Node_Str"));
  run.setImage(ImageProvider.getImage(ERunprocessImages.RUN_PROCESS_ACTION));
  run.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent event){
      errorMessMap.clear();
      execButtonPressed();
    }
  }
);
  IBrandingService brandingService=(IBrandingService)GlobalServiceRegister.getDefault().getService(IBrandingService.class);
  if (processContext == null) {
    run.setEnabled(false);
  }
  FormData formData=new FormData();
  Point debugSize=null;
  Point execSize=null;
  formData.left=new FormAttachment(0);
  execSize=computeSize(run.getText());
  formData.right=new FormAttachment(0,execSize.x + 70);
  formData.height=30;
  run.setLayoutData(formData);
  killBtn=new Button(execHeader,SWT.PUSH);
  killBtn.setText(Messages.getString("String_Node_Str"));
  killBtn.setToolTipText(Messages.getString("String_Node_Str"));
  killBtn.setImage(ImageProvider.getImage(ERunprocessImages.KILL_PROCESS_ACTION));
  setButtonLayoutData(killBtn);
  killBtn.setEnabled(false);
  formData=new FormData();
  formData.top=new FormAttachment(run,0,SWT.TOP);
  formData.left=new FormAttachment(run,0,SWT.RIGHT);
  Point killSize=computeSize(killBtn.getText());
  formData.right=new FormAttachment(run,30 + 70,SWT.RIGHT);
  formData.height=30;
  killBtn.setLayoutData(formData);
  clearTracePerfBtn=new Button(execHeader,SWT.PUSH);
  clearTracePerfBtn.setText(Messages.getString("String_Node_Str"));
  clearTracePerfBtn.setToolTipText(Messages.getString("String_Node_Str"));
  clearTracePerfBtn.setImage(ImageProvider.getImage(RunProcessPlugin.imageDescriptorFromPlugin(RunProcessPlugin.PLUGIN_ID,"String_Node_Str")));
  clearTracePerfBtn.setEnabled(false);
  formData=new FormData();
  formData.top=new FormAttachment(killBtn,0,SWT.TOP);
  formData.left=new FormAttachment(killBtn,0,SWT.RIGHT);
  formData.right=new FormAttachment(killBtn,10 + 70,SWT.RIGHT);
  formData.height=30;
  clearTracePerfBtn.setLayoutData(formData);
  consoleText=new StyledText(execContent,SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL| SWT.READ_ONLY);
  consoleText.setWordWrap(true);
  data=new GridData(GridData.FILL_BOTH);
  data.horizontalSpan=2;
  data.minimumHeight=MINIMUM_HEIGHT;
  data.minimumWidth=MINIMUM_WIDTH;
  layouData=new FormData();
  layouData.left=new FormAttachment(0,10);
  layouData.right=new FormAttachment(100,0);
  layouData.top=new FormAttachment(0,50);
  layouData.bottom=new FormAttachment(100,-30);
  consoleText.setLayoutData(layouData);
  consoleText.addKeyListener(new KeyListener(){
    @Override public void keyPressed(    KeyEvent evt){
      if ((evt.stateMask == SWT.CTRL) && (evt.keyCode == 'a')) {
        if (consoleText.getText().length() > 0) {
          consoleText.setSelection(0,(consoleText.getText().length() - 1));
        }
      }
 else       if ((evt.stateMask == SWT.CTRL) && (evt.keyCode == 'f')) {
        FindDialog td=new FindDialog(Display.getCurrent().getActiveShell());
        td.setConsoleText(consoleText);
        td.setBlockOnOpen(true);
        td.open();
      }
    }
    @Override public void keyReleased(    KeyEvent arg0){
    }
  }
);
  setConsoleFont();
  IPreferenceStore preferenceStore=CorePlugin.getDefault().getPreferenceStore();
  preferenceStore.addPropertyChangeListener(new IPropertyChangeListener(){
    @Override public void propertyChange(    org.eclipse.jface.util.PropertyChangeEvent event){
      if (TalendDesignerPrefConstants.CONSOLT_TEXT_FONT.endsWith(event.getProperty())) {
        setConsoleFont();
      }
    }
  }
);
  pcl=new PropertyChangeListener(){
    @Override public void propertyChange(    PropertyChangeEvent evt){
      runProcessContextChanged(evt);
    }
  }
;
  streamListener=new IStreamListener(){
    @Override public void streamAppended(    String text,    IStreamMonitor monitor){
      IProcessMessage message=new ProcessMessage(ProcessMessage.MsgType.STD_OUT,text);
      processContext.addDebugResultToConsole(message);
    }
  }
;
  addListeners();
  createLineLimitedControl(execContent);
}