Buggy code:
void enableWidget ( boolean enabled ) { } void fillBackground ( int hDC , int pixel , RECT rect ) { } void fillImageBackground ( int hDC , Control control , RECT rect ) { } void fillThemeBackground ( int hDC , Control control , RECT rect ) { } Control findBackgroundControl ( ) { } int findBrush ( int value , int lbStyle ) { } Cursor findCursor ( ) { } Control findImageControl ( ) { } Control findThemeControl ( ) { } Menu [ ] findMenus ( Control control ) { } char findMnemonic ( String string ) { } void fixChildren ( Shell newShell , Shell oldShell , Decorations newDecorations , Decorations oldDecorations , Menu [ ] menus ) { } void fixFocus ( Control focusControl ) { } public boolean forceFocus ( ) { } void forceResize ( ) { } public Accessible getAccessible ( ) { } public Color getBackground ( ) { } public Image getBackgroundImage ( ) { } int getBackgroundPixel ( ) { } public int getBorderWidth ( ) { } public Rectangle getBounds ( ) { } int getCodePage ( ) { } String getClipboardText ( ) { } public Cursor getCursor ( ) { } public boolean getDragDetect ( ) { } public boolean getEnabled ( ) { } public Font getFont ( ) { } public Color getForeground ( ) { } int getForegroundPixel ( ) { } public Object getLayoutData ( ) { } public Point getLocation ( ) { } public Menu getMenu ( ) { } public Monitor getMonitor ( ) { } public Composite getParent ( ) { } Control [ ] getPath ( ) { } public Region getRegion ( ) { } public Shell getShell ( ) { } public Point getSize ( ) { } public String getToolTipText ( ) { } public boolean getVisible ( ) { } boolean hasCursor ( ) { } boolean hasFocus ( ) { } public int internal_new_GC ( GCData data ) { checkWidget ( ) ; int hwnd = handle ; if ( ( data != null ) && ( ( data . hwnd ) != 0 ) ) hwnd = data . hwnd ; if ( data != null ) data . hwnd = hwnd ; int hDC = 0 ; if ( ( data == null ) || ( ( data . ps ) == null ) ) { hDC = OS . GetDC ( hwnd ) ; } else { hDC = OS . BeginPaint ( hwnd , data . ps ) ; } if ( hDC == 0 ) SWT . error ( ERROR_NO_HANDLES ) ; if ( data != null ) { if ( ( ! ( OS . IsWinCE ) ) && ( ( OS . WIN32_VERSION ) >= ( OS . VERSION ( 4 , 10 ) ) ) ) { 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 { int flags = OS . GetLayout ( hDC ) ; if ( ( flags & ( OS . LAYOUT_RTL ) ) != 0 ) { data . style |= ( SWT . RIGHT_TO_LEFT ) | ( SWT . MIRRORED ) ; } else { data . style |= SWT . LEFT_TO_RIGHT ; } } } else { data . style |= SWT . LEFT_TO_RIGHT ; } data . device = display ; int foreground = getForegroundPixel ( ) ; if ( foreground != ( OS . GetTextColor ( hDC ) ) ) data . foreground = foreground ; Control control = findBackgroundControl ( ) ; if ( control == null ) control = this ; int background = control . getBackgroundPixel ( ) ; if ( background != ( OS . GetBkColor ( hDC ) ) ) data . background = background ; <START_BUG> data . hFont = OS . SendMessage ( hwnd , WM_GETFONT , 0 , 0 ) ; <END_BUG> data . uiState = ( ( int ) ( OS . SendMessage ( hwnd , WM_QUERYUISTATE , 0 , 0 ) ) ) ; } return hDC ; } public void internal_dispose_GC ( int hDC , GCData data ) { } boolean isActive ( ) { } public boolean isEnabled ( ) { } public boolean isFocusControl ( ) { } boolean isFocusAncestor ( Control control ) { } public boolean isReparentable ( ) { } boolean isShowing ( ) { } boolean isTabGroup ( ) { } boolean isTabItem ( ) { } public boolean isVisible ( ) { } void mapEvent ( int hwnd , Event event ) { } void markLayout ( boolean changed , boolean all ) { } Decorations menuShell ( ) { } boolean mnemonicHit ( char key ) { } boolean mnemonicMatch ( char key ) { } public void moveAbove ( Control control ) { } public void moveBelow ( Control control ) { } Accessible new_Accessible ( Control control ) { } GC new_GC ( GCData data ) { } public void pack ( ) { } public void pack ( boolean changed ) { } public boolean print ( GC gc ) { } public void redraw ( ) { } void redraw ( boolean all ) { } public void redraw ( int x , int y , int width , int height , boolean all ) { } boolean redrawChildren ( ) { } void register ( ) { } void releaseHandle ( ) { } void releaseParent ( ) { } void releaseWidget ( ) { } public void removeControlListener ( ControlListener listener ) { } public void removeDragDetectListener ( DragDetectListener listener ) { }

Fix:
data . font = ( ( font ) != null ) ? font : Font . win32_new ( display , OS . SendMessage ( hwnd , WM_GETFONT , 0 , 0 ) ) ;