Buggy code:
void destroyDisplay ( ) { } public void disposeExec ( Runnable runnable ) { } void drawMenuBars ( ) { } int embeddedProc ( int hwnd , int msg , int wParam , int lParam ) { } void error ( int code ) { } boolean filterEvent ( Event event ) { } boolean filters ( int eventType ) { } boolean filterMessage ( MSG msg ) { } Control findControl ( int handle ) { } public Widget findWidget ( int handle ) { } public Widget findWidget ( int handle , int id ) { } public Widget findWidget ( Widget widget , int id ) { } int foregroundIdleProc ( int code , int wParam , int lParam ) { } public static Display findDisplay ( Thread thread ) { } public Shell getActiveShell ( ) { } public Rectangle getBounds ( ) { } public static Display getCurrent ( ) { } int getClickCount ( int type , int button , int hwnd , int lParam ) { } public Rectangle getClientArea ( ) { } Control getControl ( int handle ) { } public Control getCursorControl ( ) { } public Point getCursorLocation ( ) { } public Point [ ] getCursorSizes ( ) { } public static Display getDefault ( ) { } static boolean isValidClass ( Class clazz ) { } public Object getData ( String key ) { } public Object getData ( ) { } public int getDismissalAlignment ( ) { } public int getDoubleClickTime ( ) { } public Control getFocusControl ( ) { } String getFontName ( LOGFONT logFont ) { } public boolean getHighContrast ( ) { } public int getIconDepth ( ) { } public Point [ ] getIconSizes ( ) { } ImageList getImageList ( int style , int width , int height ) { } ImageList getImageListToolBar ( int style , int width , int height ) { } ImageList getImageListToolBarDisabled ( int style , int width , int height ) { } ImageList getImageListToolBarHot ( int style , int width , int height ) { } int getLastEventTime ( ) { } MenuItem getMenuItem ( int id ) { } int getMessageCount ( ) { } Shell getModalShell ( ) { } Dialog getModalDialog ( ) { } public Monitor [ ] getMonitors ( ) { } int getMsgProc ( int code , int wParam , int lParam ) { } public Monitor getPrimaryMonitor ( ) { } public Shell [ ] getShells ( ) { } Image getSortImage ( int direction ) { } public Synchronizer getSynchronizer ( ) { } public Thread getSyncThread ( ) { } public Color getSystemColor ( int id ) { } public Cursor getSystemCursor ( int id ) { } public Font getSystemFont ( ) { } public Image getSystemImage ( int id ) { } public Tray getSystemTray ( ) { } public Thread getThread ( ) { } int hButtonTheme ( ) { } int hEditTheme ( ) { } int hExplorerBarTheme ( ) { } int hScrollBarTheme ( ) { } int hTabTheme ( ) { } public int internal_new_GC ( GCData data ) { if ( isDisposed ( ) ) SWT . error ( ERROR_DEVICE_DISPOSED ) ; int hDC = OS . GetDC ( 0 ) ; if ( hDC == 0 ) SWT . error ( ERROR_NO_HANDLES ) ; if ( data != null ) { int mask = ( SWT . LEFT_TO_RIGHT ) | ( SWT . RIGHT_TO_LEFT ) ; if ( ( ( data . style ) & mask ) != 0 ) { data . layout = ( ( ( data . style ) & ( SWT . RIGHT_TO_LEFT ) ) != 0 ) ? OS . LAYOUT_RTL : 0 ; } else { data . style |= SWT . LEFT_TO_RIGHT ; } data . device = this ; <START_BUG> data . hFont = getSystemFont ( ) . handle ; <END_BUG> } return hDC ; } protected void init ( ) { } public void internal_dispose_GC ( int hDC , GCData data ) { } boolean isXMouseActive ( ) { } boolean isValidThread ( ) { } 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 ) { } static char mbcsToWcs ( int ch ) { } static char mbcsToWcs ( int ch , int codePage ) { } int messageProc ( int hwnd , int msg , int wParam , int lParam ) { } int monitorEnumProc ( int hmonitor , int hdc , int lprcMonitor , int dwData ) { } int msgFilterProc ( int code , int wParam , int lParam ) { } int numpadKey ( int key ) { } public boolean post ( Event event ) { } void postEvent ( Event event ) { } public boolean readAndDispatch ( ) { } static void register ( Display display ) { } protected void release ( ) { } void releaseDisplay ( ) { } void releaseImageList ( ImageList list ) { } void releaseToolImageList ( ImageList list ) { } void releaseToolHotImageList ( ImageList list ) { } void releaseToolDisabledImageList ( ImageList list ) { } public void removeFilter ( int eventType , Listener listener ) { } public void removeListener ( int eventType , Listener listener ) { } void removeBar ( Menu menu ) { } Control removeControl ( int handle ) { } void removeMenuItem ( MenuItem item ) { } void removePopup ( Menu menu ) { } boolean runAsyncMessages ( boolean all ) { } boolean runDeferredEvents ( ) { }

Fix:
data . font = getSystemFont ( ) ;