Buggy code:
public Object getData ( String key ) { } public Object getData ( ) { } public int getDismissalAlignment ( ) { } public int getDoubleClickTime ( ) { } public Control getFocusControl ( ) { } Control getFocusControl ( int window , boolean disabled ) { } public boolean getHighContrast ( ) { } public int getIconDepth ( ) { } public Point [ ] getIconSizes ( ) { } int getLastEventTime ( ) { } Menu [ ] getMenus ( Decorations shell ) { } Menu getMenu ( int id ) { } Menu getMenuBar ( ) { } int getMessageCount ( ) { } public Monitor [ ] getMonitors ( ) { } public Monitor getPrimaryMonitor ( ) { } public Shell [ ] getShells ( ) { } public Synchronizer getSynchronizer ( ) { } public Thread getSyncThread ( ) { } public Color getSystemColor ( int id ) { } public Cursor getSystemCursor ( int id ) { } public Image getSystemImage ( int id ) { } public Tray getSystemTray ( ) { } public Thread getThread ( ) { } Widget getWidget ( int handle ) { } int helpProc ( int inControl , int inGlobalMouse , int inRequest , int outContentProvided , int ioHelpContent ) { } int hitTestProc ( int browser , int item , int property , int theRect , int mouseRect ) { } protected void init ( ) { } void initializeCallbacks ( ) { } void initializeFonts ( ) { } void initializeInsets ( ) { } void initializeWidgetTable ( ) { } public int internal_new_GC ( GCData data ) { } public void internal_dispose_GC ( int context , GCData data ) { } static boolean isValidClass ( Class clazz ) { } boolean isValidThread ( ) { } int itemCompareProc ( int browser , int itemOne , int itemTwo , int sortProperty ) { } int itemDataProc ( int browser , int item , int property , int itemData , int setValue ) { } int itemNotificationProc ( int browser , int item , int message ) { } int keyboardProc ( int nextHandler , int theEvent , int userData ) { } int pollingProc ( int inTimer , int inUserData ) { } public boolean post ( Event event ) { } void postEvent ( Event event ) { } public Point map ( Control from , Control to , Point point ) { } public Point map ( Control from , Control to , int x , int y ) { } public Rectangle map ( Control from , Control to , Rectangle rectangle ) { } public Rectangle map ( Control from , Control to , int x , int y , int width , int height ) { } int menuProc ( int nextHandler , int theEvent , int userData ) { } int mouseProc ( int nextHandler , int theEvent , int userData ) { } int mouseHoverProc ( int id , int handle ) { } int observerProc ( int observer , int activity , int info ) { } int readImageRef ( int path ) { } public boolean readAndDispatch ( ) { checkDevice ( ) ; boolean events = false ; events |= runSettings ( ) ; events |= runTimers ( ) ; events |= runPopups ( ) ; int [ ] outEvent = new int [ 1 ] ; int status = OS . ReceiveNextEvent ( 0 , null , kEventDurationNoWait , true , outEvent ) ; if ( status == ( OS . noErr ) ) { events = true ; OS . SendEventToEventTarget ( outEvent [ 0 ] , OS . GetEventDispatcherTarget ( ) ) ; OS . ReleaseEvent ( outEvent [ 0 ] ) ; if ( ( ( focusCombo ) != null ) && ( ! ( focusCombo . isDisposed ( ) ) ) ) { focusCombo . checkSelection ( ) ; } } events |= runPaint ( ) ; if ( events ) { runEnterExit ( ) ; runDeferredEvents ( ) ; return true ; } <START_BUG> return runAsyncMessages ( false ) ; <END_BUG> } static void register ( Display display ) { } protected void release ( ) { } void releaseDisplay ( ) { } int releaseDataProc ( int info , int data , int size ) { } public void removeFilter ( int eventType , Listener listener ) { } public void removeListener ( int eventType , Listener listener ) { } void removeMenu ( Menu menu ) { } void removePopup ( Menu menu ) { } Widget removeWidget ( int handle ) { } boolean runAsyncMessages ( boolean all ) { } boolean runEnterExit ( ) { } boolean runDeferredEvents ( ) { } boolean runEventLoopTimers ( ) { } boolean runPaint ( ) { } boolean runPopups ( ) { } boolean runSettings ( ) { } boolean runTimers ( ) { } int searchProc ( int nextHandler , int theEvent , int userData ) { } void sendEvent ( int eventType , Event event ) { } public static void setAppName ( String name ) { } void setCurrentCaret ( Caret caret ) { } void setCursor ( int cursor ) { } public void setCursorLocation ( int x , int y ) { } public void setCursorLocation ( Point point ) { } public void setData ( String key , Object value ) { } public void setData ( Object data ) { } public void setSynchronizer ( Synchronizer synchronizer ) { } void setMenuBar ( Menu menu ) { } void setModalShell ( Shell shell ) { } public boolean sleep ( ) { } int sourceProc ( int info ) { } public void syncExec ( Runnable runnable ) { } int textInputProc ( int nextHandler , int theEvent , int userData ) { } public void timerExec ( int milliseconds , Runnable runnable ) { }

Fix:
return ( isDisposed ( ) ) || ( runAsyncMessages ( false ) ) ;