Buggy code:
public class Examples { public static void main ( String [ ] args ) { try { final GridLayout shellLayout = new GridLayout ( 1 , true ) ; final Display display = new Display ( ) ; final Shell shell = new Shell ( display ) ; shell . setSize ( 400 , 500 ) ; shell . setLayout ( shellLayout ) ; shell . setText ( "JGrid<seq2seq4repair_space>Examples" ) ; <START_BUG> final InputStream input = Examples . class . getResourceAsStream ( "//person.png" ) ; <END_BUG> final Image personImage = new Image ( display , input ) ; input . close ( ) ; final Grid < Person > grid = new Grid < Person > ( shell ) ; grid . setLayoutData ( new org . eclipse . swt . layout . GridData ( SWT . FILL , SWT . FILL , true , true ) ) ; grid . setContentProvider ( new GridContentProvider ( ) ) ; grid . setLabelProvider ( new GridLabelProvider ( grid , personImage ) ) ; grid . addColumns ( Examples . createColumns ( ) ) ; grid . addElements ( Examples . createElements ( ) ) ; grid . addListener ( new GridListener ( ) ) ; grid . addFilters ( Examples . createFilters ( grid ) ) ; grid . setEmptyMessage ( "There's<seq2seq4repair_space>no<seq2seq4repair_space>data" ) ; grid . setHighlightAnchorCellBorder ( false ) ; grid . setHighlightAnchorInHeaders ( false ) ; grid . setHighlightHoveredRow ( true ) ; grid . setSelectGroupIfAllChildrenSelected ( true ) ; grid . setShowRowNumbers ( false ) ; grid . setHideNoneHighlightedRows ( false ) ; final Composite buttonComposite = new Composite ( shell , SWT . NONE ) ; buttonComposite . setLayoutData ( new org . eclipse . swt . layout . GridData ( SWT . FILL , SWT . FILL , true , false ) ) ; final FillLayout buttonLayout = new FillLayout ( ) ; buttonLayout . type = SWT . HORIZONTAL ; buttonComposite . setLayout ( buttonLayout ) ; final Button notGroupedButton = new Button ( buttonComposite , SWT . PUSH ) ; notGroupedButton . setText ( "Un-Grouped" ) ; notGroupedButton . addSelectionListener ( new SelectionAdapter ( ) { @ Override public void widgetSelected ( SelectionEvent arg0 ) { grid . clearElements ( ) ; grid . ungroupBy ( grid . getGroupByColumns ( ) ) ; grid . setContentProvider ( new GridContentProvider ( ) ) ; grid . addElements ( Examples . createElements ( ) ) ; } } ) ; final Button groupedButton = new Button ( buttonComposite , SWT . PUSH ) ; groupedButton . setText ( "Grouped" ) ; groupedButton . addSelectionListener ( new SelectionAdapter ( ) { @ Override public void widgetSelected ( SelectionEvent arg0 ) { grid . clearElements ( ) ; grid . setContentProvider ( new GroupedGridContentProvider ( ) ) ; grid . groupBy ( Collections . singletonList ( Examples . createColumns ( ) . get ( 1 ) ) ) ; grid . addElements ( Examples . createElements ( ) ) ; } } ) ; final Composite filterComposite = new Composite ( shell , SWT . NONE ) ; filterComposite . setLayoutData ( new org . eclipse . swt . layout . GridData ( SWT . FILL , SWT . FILL , true , false ) ) ; filterComposite . setLayout ( new GridLayout ( 2 , false ) ) ; final Label filterLabel = new Label ( filterComposite , SWT . NONE ) ; filterLabel . setText ( "Search:" ) ; filterLabel . setLayoutData ( new org . eclipse . swt . layout . GridData ( SWT . LEFT , SWT . CENTER , false , false ) ) ; final Text filterText = new Text ( filterComposite , SWT . BORDER ) ; filterText . setMessage ( "<enter<seq2seq4repair_space>search<seq2seq4repair_space>text>" ) ; filterText . setLayoutData ( new org . eclipse . swt . layout . GridData ( SWT . FILL , SWT . FILL , true , false ) ) ; filterText . addModifyListener ( new ModifyListener ( ) { @ Override public void modifyText ( ModifyEvent arg0 ) { Examples . applyFilters ( grid , filterText . getText ( ) ) ; } } ) ; shell . open ( ) ; while ( ! ( shell . isDisposed ( ) ) ) { try { if ( ! ( display . readAndDispatch ( ) ) ) { display . sleep ( ) ; } } catch ( final Exception e ) { e . printStackTrace ( ) ; } } personImage . dispose ( ) ; display . dispose ( ) ; } catch ( final Exception e ) { e . printStackTrace ( ) ; } } private static List < Column > createColumns ( ) { } private static List < Person > createElements ( ) { } private static List < Filter < Person > > createFilters ( final Grid < Person > grid ) { } private static void applyFilters ( final Grid < Person > grid , final String filterText ) { } public static class IntegerComparator implements Comparator < Integer > { @ Override public int compare ( Integer o1 , Integer o2 ) { } } }

Fix:
final InputStream input = Examples . class . getResourceAsStream ( "person.png" ) ;