Buggy code:
public class ChatComposite extends Composite { private static final String CHAT_OUTPUT_FONT = "ChatFont" ; private final LineChatClientView view ; private Color meColor = null ; private Color otherColor = null ; private Color systemColor = null ; Action appShare = null ; Action coBrowseURL = null ; Action outputClear = null ; Action outputCopy = null ; Action outputPaste = null ; Action outputSelectAll = null ; Action sendComponent = null ; Action sendComponentToServer = null ; Action sendFileToGroup = null ; Action sendFileToGroupAndLaunch = null ; Action sendMessage = null ; Action startProgram = null ; Action closeGroup = null ; Action sendShowViewRequest = null ; Action showChatWindow ; protected final String TEXT_INPUT_INIT = MessageLoader . getString ( "LineChatClientView.textinputinit" ) ; protected static final int DEFAULT_INPUT_HEIGHT = 25 ; protected static final int DEFAULT_INPUT_SEPARATOR = 5 ; Text textinput = null ; StyledText textoutput = null ; TableViewer tableView = null ; ChatDropTarget chatDropTarget = null ; TreeDropTarget treeDropTarget = null ; ChatWindow chatWindow ; boolean typing ; ChatComposite ( LineChatClientView view , Composite parent , TableViewer table , String initText ) { } ChatComposite ( LineChatClientView view , Composite parent , TableViewer table , String initText , ChatWindow chatWindow ) { } private StyledText createStyledTextWidget ( Composite parent ) { } public void appendText ( ChatLine text ) { } protected void clearInput ( ) { } private void contributeToActionBars ( ) { } protected void copyFileLocally ( String inputFile , String outputFile ) throws IOException { } private void fillContextMenu ( IMenuManager manager ) { } private void fillLocalPullDown ( IMenuManager manager ) { } private void fillTreeContextMenu ( IMenuManager manager ) { } private class ScreenCaptureJob extends UIJob { private final Color blackColor ; private final Color whiteColor ; private boolean isDragging = false ; private int downX = - 1 ; private int downY = - 1 ; private final ID targetID ; public ScreenCaptureJob ( Display display , ID targetID ) { } public IStatus runInUIThread ( IProgressMonitor monitor ) { } } private class ConfirmationDialog extends Dialog { private final Image image ; private final int width ; private final int height ; private final ID targetID ; private ConfirmationDialog ( Shell shell , ID targetID , Image image , int width , int height ) { } protected void buttonPressed ( int buttonId ) { } protected Control createDialogArea ( Composite parent ) { } protected Point getInitialSize ( ) { } public boolean close ( ) { } } private void sendImage ( ID targetID ) { final Job job = new ChatComposite . ScreenCaptureJob ( getDisplay ( ) , targetID ) ; <START_BUG> job . schedule ( ) ; <END_BUG> } private void fillTreeContextMenuUser ( IMenuManager man , final User user ) { } protected String [ ] getArgs ( String aString ) { } protected String getCommand ( String aString ) { } private String getID ( String title , String message , String initialValue ) { } protected void handleEnter ( ) { } protected void handleKeyPressed ( KeyEvent evt ) { } protected void handleKeyReleased ( KeyEvent evt ) { } private void hookContextMenu ( ) { } protected Control getTreeControl ( ) { } protected Control getTextControl ( ) { } protected void makeActions ( ) { } protected void sendShowViewRequest ( User touser ) { } protected void closeProjectGroup ( User user ) { } protected void outputClear ( ) { } protected void outputCopy ( ) { } protected void outputPaste ( ) { } protected void outputSelectAll ( ) { } protected int getChunkPreference ( ) { } protected int getDelayPreference ( ) { } protected void readStreamAndSend ( InputStream local , String fileName , Date startDate , ID target , final boolean launch ) { } protected void sendCoBrowseToUser ( User user ) { } protected void sendFile ( String pathName , final String fileName , Date startDate , ID target , boolean launch ) { } protected void sendFileToGroup ( boolean launch ) { } protected void sendFileToUser ( User user , boolean launch ) { } protected void sendMessageToGroup ( ) { } protected void sendPrivateTextMsg ( User data ) { } protected void sendRepObjectToGroup ( User user ) { } protected void sendRepObjectToServer ( ) { } protected void sendRingMessageToUser ( User data ) { } protected void startProgram ( User ud ) { } protected void initializeDropTargets ( ) { } private Color colorFromRGBString ( String rgb ) { } private class ColorPropertyChangeListener implements Preferences . IPropertyChangeListener { public void propertyChange ( Preferences . PropertyChangeEvent event ) { } } private class FontPropertyChangeListener implements Preferences . IPropertyChangeListener { public void propertyChange ( Preferences . PropertyChangeEvent event ) { } } }

Fix:
job . schedule ( 5000 ) ;