Buggy code:
public class ProgressMonitorDialog extends Dialog implements IRunnableContext { private static String DEFAULT_TASKNAME = JFaceResources . getString ( "ProgressMonitorDialog.message" ) ; private static int LABEL_DLUS = 21 ; private static int BAR_DLUS = 9 ; protected ProgressIndicator progressIndicator ; protected Label taskLabel ; protected Label subTaskLabel ; protected Button cancel ; protected boolean operationCancelableState = false ; protected boolean enableCancelButton ; private ProgressMonitorDialog . ProgressMonitor progressMonitor = new ProgressMonitorDialog . ProgressMonitor ( ) ; private String task ; private int runningRunnables ; private Cursor arrowCursor ; private Cursor waitCursor ; private class ProgressMonitor implements IProgressMonitor { private String fSubTask = "" ; private boolean fIsCanceled ; protected boolean forked = false ; public void beginTask ( String name , int totalWork ) { } public void done ( ) { } public void setTaskName ( String name ) { } public boolean isCanceled ( ) { } public void setCanceled ( boolean b ) { } public void subTask ( String name ) { } public void worked ( int work ) { } public void internalWorked ( double work ) { } } public ProgressMonitorDialog ( Shell parent ) { } private void asyncSetOperationCancelButtonEnabled ( final boolean b ) { } public boolean close ( ) { } protected void configureShell ( Shell shell ) { } protected void createButtonsForButtonBar ( Composite parent ) { } protected Control createContents ( Composite parent ) { } protected Control createDialogArea ( Composite parent ) { Label iconLabel = new Label ( parent , SWT . LEFT ) ; iconLabel . setLayoutData ( new GridData ( ( ( GridData . HORIZONTAL_ALIGN_CENTER ) | ( GridData . VERTICAL_ALIGN_BEGINNING ) ) ) ) ; Image i = JFaceResources . getImageRegistry ( ) . get ( DLG_IMG_INFO ) ; if ( i != null ) iconLabel . setImage ( i ) ; else { iconLabel . setText ( JFaceResources . getString ( "Image_not_found" ) ) ; } taskLabel = new Label ( parent , ( ( SWT . LEFT ) | ( SWT . WRAP ) ) ) ; GridData gd = new GridData ( ( ( ( ( GridData . GRAB_HORIZONTAL ) | ( GridData . GRAB_VERTICAL ) ) | ( GridData . HORIZONTAL_ALIGN_FILL ) ) | ( GridData . VERTICAL_ALIGN_CENTER ) ) ) ; gd . heightHint = convertVerticalDLUsToPixels ( ProgressMonitorDialog . LABEL_DLUS ) ; taskLabel . setLayoutData ( gd ) ; taskLabel . setText ( ProgressMonitorDialog . DEFAULT_TASKNAME ) ; taskLabel . setFont ( parent . getFont ( ) ) ; progressIndicator = new ProgressIndicator ( parent ) ; gd = new GridData ( ) ; gd . heightHint = convertVerticalDLUsToPixels ( ProgressMonitorDialog . BAR_DLUS ) ; <START_BUG> gd . horizontalAlignment = gd . FILL ; <END_BUG> gd . grabExcessHorizontalSpace = true ; gd . horizontalSpan = 2 ; progressIndicator . setLayoutData ( gd ) ; subTaskLabel = new Label ( parent , ( ( SWT . LEFT ) | ( SWT . WRAP ) ) ) ; gd = new GridData ( GridData . FILL_HORIZONTAL ) ; gd . heightHint = convertVerticalDLUsToPixels ( ProgressMonitorDialog . LABEL_DLUS ) ; gd . horizontalSpan = 2 ; subTaskLabel . setLayoutData ( gd ) ; subTaskLabel . setFont ( parent . getFont ( ) ) ; return parent ; } protected Point getInitialSize ( ) { } public IProgressMonitor getProgressMonitor ( ) { } public void run ( boolean fork , boolean cancelable , IRunnableWithProgress runnable ) throws InterruptedException , InvocationTargetException { } public void setCancelable ( boolean cancelable ) { } private void setOperationCancelButtonEnabled ( boolean b ) { } }

Fix:
gd . horizontalAlignment = GridData . FILL ;