Buggy code:
public final class GC extends Resource { public int handle ; Drawable drawable ; GCData data ; static final float [ ] LINE_DOT_ZERO = new float [ ] { 3 , 3 } ; static final float [ ] LINE_DASH_ZERO = new float [ ] { 18 , 6 } ; static final float [ ] LINE_DASHDOT_ZERO = new float [ ] { 9 , 6 , 3 , 6 } ; static final float [ ] LINE_DASHDOTDOT_ZERO = new float [ ] { 9 , 3 , 3 , 3 , 3 , 3 } ; GC ( ) { } public GC ( Drawable drawable ) { } public GC ( Drawable drawable , int style ) { } static int checkStyle ( int style ) { } public void copyArea ( Image image , int x , int y ) { } public void copyArea ( int srcX , int srcY , int width , int height , int destX , int destY ) { } public void copyArea ( int srcX , int srcY , int width , int height , int destX , int destY , boolean paint ) { } int createGdipBrush ( ) { } int createGdipFont ( ) { } static int createGdipFont ( int hDC , int hFont ) { int font = Gdip . Font_new ( hDC , hFont ) ; if ( font == 0 ) SWT . error ( ERROR_NO_HANDLES ) ; if ( ! ( Gdip . Font_IsAvailable ( font ) ) ) { Gdip . Font_delete ( font ) ; LOGFONT logFont = ( OS . IsUnicode ) ? ( ( LOGFONT ) ( new LOGFONTW ( ) ) ) : new LOGFONTA ( ) ; OS . GetObject ( hFont , sizeof , logFont ) ; int size = Math . abs ( logFont . lfHeight ) ; int style = Gdip . FontStyleRegular ; if ( ( logFont . lfWeight ) == 700 ) style |= Gdip . FontStyleBold ; if ( ( logFont . lfItalic ) != 0 ) style |= Gdip . FontStyleItalic ; char [ ] chars ; if ( OS . IsUnicode ) { chars = ( ( LOGFONTW ) ( logFont ) ) . lfFaceName ; } else { chars = new char [ OS . LF_FACESIZE ] ; byte [ ] bytes = ( ( LOGFONTA ) ( logFont ) ) . lfFaceName ; OS . MultiByteToWideChar ( CP_ACP , MB_PRECOMPOSED , bytes , bytes . length , chars , chars . length ) ; } int index = 0 ; while ( index < ( chars . length ) ) { if ( ( chars [ index ] ) == 0 ) break ; index ++ ; } String name = new String ( chars , 0 , index ) ; <START_BUG> if ( name . equalsIgnoreCase ( "Courier" ) ) { <END_BUG> name = "Courier<seq2seq4repair_space>New" ; } char [ ] buffer = new char [ ( name . length ( ) ) + 1 ] ; name . getChars ( 0 , name . length ( ) , buffer , 0 ) ; font = Gdip . Font_new ( buffer , size , style , UnitPixel , 0 ) ; } if ( font == 0 ) SWT . error ( ERROR_NO_HANDLES ) ; return font ; } int createGdipPen ( ) { } void destroyGdipBrush ( int brush ) { } public void dispose ( ) { } public void drawArc ( int x , int y , int width , int height , int startAngle , int arcAngle ) { } public void drawFocus ( int x , int y , int width , int height ) { } public void drawImage ( Image image , int x , int y ) { } public void drawImage ( Image image , int srcX , int srcY , int srcWidth , int srcHeight , int destX , int destY , int destWidth , int destHeight ) { } void drawImage ( Image srcImage , int srcX , int srcY , int srcWidth , int srcHeight , int destX , int destY , int destWidth , int destHeight , boolean simple ) { } void drawIcon ( Image srcImage , int srcX , int srcY , int srcWidth , int srcHeight , int destX , int destY , int destWidth , int destHeight , boolean simple ) { } void drawBitmap ( Image srcImage , int srcX , int srcY , int srcWidth , int srcHeight , int destX , int destY , int destWidth , int destHeight , boolean simple ) { } void drawBitmapAlpha ( Image srcImage , int srcX , int srcY , int srcWidth , int srcHeight , int destX , int destY , int destWidth , int destHeight , boolean simple , BITMAP bm , int imgWidth , int imgHeight ) { } void drawBitmapTransparentByClipping ( int srcHdc , int maskHdc , int srcX , int srcY , int srcWidth , int srcHeight , int destX , int destY , int destWidth , int destHeight , boolean simple , int imgWidth , int imgHeight ) { } void drawBitmapTransparent ( Image srcImage , int srcX , int srcY , int srcWidth , int srcHeight , int destX , int destY , int destWidth , int destHeight , boolean simple , BITMAP bm , int imgWidth , int imgHeight ) { } void drawBitmap ( Image srcImage , int srcX , int srcY , int srcWidth , int srcHeight , int destX , int destY , int destWidth , int destHeight , boolean simple , BITMAP bm , int imgWidth , int imgHeight ) { } public void drawLine ( int x1 , int y1 , int x2 , int y2 ) { } public void drawOval ( int x , int y , int width , int height ) { } public void drawPath ( Path path ) { }

Fix:
if ( Compatibility . equalsIgnoreCase ( name , "Courier" ) ) {