Buggy code:
static final int STEPSIZE_LARGE = 9 ; public Tracker ( Composite parent , int style ) { } public Tracker ( Display display , int style ) { } public void addControlListener ( ControlListener listener ) { } public void addKeyListener ( KeyListener listener ) { } Point adjustMoveCursor ( ) { } Point adjustResizeCursor ( ) { } static int checkStyle ( int style ) { } public void close ( ) { } Rectangle computeBounds ( ) { } Rectangle [ ] computeProportions ( Rectangle [ ] rects ) { } void drawRectangles ( Rectangle [ ] rects , boolean stippled ) { } public Rectangle [ ] getRectangles ( ) { } public boolean getStippled ( ) { } void moveRectangles ( int xChange , int yChange ) { } public boolean open ( ) { checkWidget ( ) ; if ( ( rectangles ) == null ) return false ; cancelled = false ; tracking = true ; int vStyle = ( style ) & ( ( SWT . UP ) | ( SWT . DOWN ) ) ; if ( ( vStyle == ( SWT . UP ) ) || ( vStyle == ( SWT . DOWN ) ) ) { cursorOrientation |= vStyle ; } int hStyle = ( style ) & ( ( SWT . LEFT ) | ( SWT . RIGHT ) ) ; if ( ( hStyle == ( SWT . LEFT ) ) || ( hStyle == ( SWT . RIGHT ) ) ) { cursorOrientation |= hStyle ; } int hwndTransparent = 0 ; Callback newProc = null ; boolean mouseDown = ( OS . GetKeyState ( VK_LBUTTON ) ) < 0 ; if ( ! mouseDown ) { int width = OS . GetSystemMetrics ( SM_CXSCREEN ) ; int height = OS . GetSystemMetrics ( SM_CYSCREEN ) ; hwndTransparent = OS . CreateWindowEx ( WS_EX_TRANSPARENT , windowClass , null , ( ( OS . WS_POPUP ) | ( OS . WS_VISIBLE ) ) , 0 , 0 , width , height , 0 , 0 , OS . GetModuleHandle ( null ) , null ) ; oldProc = OS . GetWindowLong ( hwndTransparent , GWL_WNDPROC ) ; newProc = new Callback ( this , "transparentProc" , 4 ) ; OS . SetWindowLong ( hwndTransparent , GWL_WNDPROC , newProc . getAddress ( ) ) ; } drawRectangles ( rectangles , stippled ) ; Point cursorPos ; if ( mouseDown ) { POINT pt = new POINT ( ) ; OS . GetCursorPos ( pt ) ; cursorPos = new Point ( pt . x , pt . y ) ; } else { if ( ( ( style ) & ( SWT . RESIZE ) ) != 0 ) { cursorPos = adjustResizeCursor ( ) ; } else { cursorPos = adjustMoveCursor ( ) ; } } oldX = cursorPos . x ; oldY = cursorPos . y ; MSG msg = new MSG ( ) ; while ( ( tracking ) && ( ! ( cancelled ) ) ) { if ( ( ( parent ) != null ) && ( parent . isDisposed ( ) ) ) break ; OS . GetMessage ( msg , 0 , 0 , 0 ) ; OS . TranslateMessage ( msg ) ; int message = msg . message ; switch ( message ) { case OS . WM_LBUTTONUP : case OS . WM_MOUSEMOVE : wmMouse ( message , msg . wParam , msg . lParam ) ; break ; case OS . WM_IME_CHAR : wmIMEChar ( msg . hwnd , msg . wParam , msg . lParam ) ; break ; case OS . WM_CHAR : wmChar ( msg . hwnd , msg . wParam , msg . lParam ) ; break ; case OS . WM_KEYDOWN : wmKeyDown ( msg . hwnd , msg . wParam , msg . lParam ) ; break ; case OS . WM_KEYUP : wmKeyUp ( msg . hwnd , msg . wParam , msg . lParam ) ; break ; case OS . WM_SYSCHAR : <START_BUG> wmSysChar ( 0 , msg . hwnd , msg . wParam , msg . lParam ) ; <END_BUG> break ; case OS . WM_SYSKEYDOWN : wmSysKeyDown ( msg . hwnd , msg . wParam , msg . lParam ) ; break ; case OS . WM_SYSKEYUP : wmSysKeyUp ( msg . hwnd , msg . wParam , msg . lParam ) ; break ; } if ( ( ( OS . WM_KEYFIRST ) <= message ) && ( message <= ( OS . WM_KEYLAST ) ) ) continue ; if ( ( ( OS . WM_MOUSEFIRST ) <= message ) && ( message <= ( OS . WM_MOUSELAST ) ) ) continue ; OS . DispatchMessage ( msg ) ; } if ( mouseDown ) OS . ReleaseCapture ( ) ; if ( ! ( isDisposed ( ) ) ) drawRectangles ( rectangles , stippled ) ; if ( hwndTransparent != 0 ) { OS . DestroyWindow ( hwndTransparent ) ; } if ( newProc != null ) { newProc . dispose ( ) ; oldProc = 0 ; } if ( ( resizeCursor ) != 0 ) { OS . DestroyCursor ( resizeCursor ) ; resizeCursor = 0 ; } tracking = false ; return ! ( cancelled ) ; } public void removeControlListener ( ControlListener listener ) { } public void removeKeyListener ( KeyListener listener ) { } void resizeRectangles ( int xChange , int yChange ) { } public void setCursor ( Cursor newCursor ) { } public void setRectangles ( Rectangle [ ] rectangles ) { } public void setStippled ( boolean stippled ) { } int transparentProc ( int hwnd , int msg , int wParam , int lParam ) { } LRESULT wmKeyDown ( int hwnd , int wParam , int lParam ) { } LRESULT wmSysKeyDown ( int hwnd , int wParam , int lParam ) { }

Fix:
wmSysChar ( msg . hwnd , msg . wParam , msg . lParam ) ;