Buggy code:
public Point map ( Control from , Control to , int x , int y ) { } public Rectangle map ( Control from , Control to , Rectangle rectangle ) { } static char mbcsToWcs ( char ch ) { } int menuPositionProc ( int menu , int x , int y , int push_in , int user_data ) { } public Rectangle map ( Control from , Control to , int x , int y , int width , int height ) { } int mouseHoverProc ( int handle ) { } int pangoLayoutNewProc ( int type , int n_construct_properties , int construct_properties ) { } public boolean post ( Event event ) { } void postEvent ( Event event ) { } void putGdkEvents ( ) { } public boolean readAndDispatch ( ) { } static void register ( Display display ) { } protected void release ( ) { } void releaseDisplay ( ) { } public void removeFilter ( int eventType , Listener listener ) { } int removeGdkEvent ( ) { } void removeIdleProc ( ) { } public void removeListener ( int eventType , Listener listener ) { } void removeMouseHoverTimeout ( int handle ) { } void removePopup ( Menu menu ) { } Widget removeWidget ( int handle ) { } boolean runAsyncMessages ( boolean all ) { } boolean runDeferredEvents ( ) { } boolean runDeferredLayouts ( ) { } boolean runPopups ( ) { } boolean runSettings ( ) { } boolean runSkin ( ) { } public static void setAppName ( String name ) { } public void setCursorLocation ( int x , int y ) { } public void setCursorLocation ( Point point ) { } public void setData ( String key , Object value ) { } public void setData ( Object data ) { } int setDirectionProc ( int widget , int direction ) { } void setModalDialog ( Dialog modalDailog ) { } void setModalShell ( Shell shell ) { } public void setSynchronizer ( Synchronizer synchronizer ) { } void showIMWindow ( Control control ) { } public boolean sleep ( ) { } public void timerExec ( int milliseconds , Runnable runnable ) { } int timerProc ( int i ) { } int caretProc ( int clientData ) { } int sizeAllocateProc ( int handle , int arg0 , int user_data ) { } int sizeRequestProc ( int handle , int arg0 , int user_data ) { } int treeSelectionProc ( int model , int path , int iter , int data ) { } void saveResources ( ) { } void sendEvent ( int eventType , Event event ) { } void setCurrentCaret ( Caret caret ) { } int shellMapProc ( int handle , int arg0 , int user_data ) { } int signalProc ( int gobject , int arg1 , int user_data ) { switch ( ( ( int ) ( user_data ) ) ) { case Display . STYLE_SET : settingsChanged = true ; break ; case Display . PROPERTY_NOTIFY : GdkEventProperty gdkEvent = new GdkEventProperty ( ) ; OS . memmove ( gdkEvent , arg1 ) ; if ( ( gdkEvent . type ) == ( OS . GDK_PROPERTY_NOTIFY ) ) { byte [ ] name = Converter . wcsToMbcs ( null , "org.eclipse.swt.filePath.message" , true ) ; int atom = OS . gdk_x11_atom_to_xatom ( OS . gdk_atom_intern ( name , true ) ) ; if ( atom == ( OS . gdk_x11_atom_to_xatom ( gdkEvent . atom ) ) ) { int xWindow = OS . gdk_x11_drawable_get_xid ( OS . GTK_WIDGET_WINDOW ( shellHandle ) ) ; int [ ] type = new int [ 1 ] ; int [ ] format = new int [ 1 ] ; long [ ] nitems = new long [ 1 ] ; long [ ] bytes_after = new long [ 1 ] ; int [ ] data = new int [ 1 ] ; OS . XGetWindowProperty ( OS . GDK_DISPLAY ( ) , xWindow , atom , 0L , ( - 1L ) , true , AnyPropertyType , type , format , nitems , bytes_after , data ) ; if ( ( nitems [ 0 ] ) > 0 ) { byte [ ] buffer = new byte [ ( ( int ) ( nitems [ 0 ] ) ) ] ; OS . memmove ( buffer , data [ 0 ] , buffer . length ) ; OS . XFree ( data [ 0 ] ) ; char [ ] chars = Converter . mbcsToWcs ( null , buffer ) ; String string = new String ( chars ) ; int lastIndex = 0 ; int index = string . indexOf ( ':' ) ; while ( index != ( - 1 ) ) { String file = string . substring ( lastIndex , index ) ; Event event = new Event ( ) ; event . text = file ; <START_BUG> sendEvent ( OpenDoc , event ) ; <END_BUG> lastIndex = index + 1 ; index = string . indexOf ( ':' , lastIndex ) ; } } } } break ; } return 0 ; } public void syncExec ( Runnable runnable ) { } static int translateKey ( int key ) { } static int untranslateKey ( int key ) { } public void update ( ) { } public void wake ( ) { } void wakeThread ( ) { } static char wcsToMbcs ( char ch ) { } int windowProc ( int handle , int user_data ) { } int windowProc ( int handle , int arg0 , int user_data ) { } int windowProc ( int handle , int arg0 , int arg1 , int user_data ) { } int windowProc ( int handle , int arg0 , int arg1 , int arg2 , int user_data ) { } int windowTimerProc ( int handle ) { } }

Fix:
sendEvent ( OpenDocument , event ) ;