Buggy code:
interface < T , ? > col , String headerString , String footerString ) { } public void addColumn ( Column < T , ? > col , SafeHtml headerHtml , SafeHtml footerHtml ) { } public HandlerRegistration addColumnSortHandler ( ColumnSortEvent . Handler handler ) { } public abstract void addColumnStyleName ( int index , String styleName ) { } public HandlerRegistration addRowHoverHandler ( RowHoverEvent . Handler handler ) { } public void clearColumnWidth ( Column < T , ? > column ) { } public void clearColumnWidth ( Integer column ) { } public void flush ( ) { } public Column < T , ? > getColumn ( int col ) { } public int getColumnCount ( ) { } public int getColumnIndex ( Column < T , ? > column ) { } public ColumnSortList getColumnSortList ( ) { } public String getColumnWidth ( Column < T , ? > column ) { } public Widget getEmptyTableWidget ( ) { } public Header < ? > getFooter ( int index ) { } public FooterBuilder < T > getFooterBuilder ( ) { } public Header < ? > getHeader ( int index ) { } public HeaderBuilder < T > getHeaderBuilder ( ) { } public int getKeyboardSelectedColumn ( ) { } public int getKeyboardSelectedSubRow ( ) { } public Widget getLoadingIndicator ( ) { } public AbstractCellTable . Resources getResources ( ) { } public TableRowElement getRowElement ( int row ) { } public RowStyles < T > getRowStyles ( ) { } public void insertColumn ( int beforeIndex , Column < T , ? > col ) { } public void insertColumn ( int beforeIndex , Column < T , ? > col , Header < ? > header ) { } public void insertColumn ( int beforeIndex , Column < T , ? > col , Header < ? > header , Header < ? > footer ) { } public void insertColumn ( int beforeIndex , Column < T , ? > col , String headerString ) { } public void insertColumn ( int beforeIndex , Column < T , ? > col , SafeHtml headerHtml ) { } public void insertColumn ( int beforeIndex , Column < T , ? > col , String headerString , String footerString ) { } public void insertColumn ( int beforeIndex , Column < T , ? > col , SafeHtml headerHtml , SafeHtml footerHtml ) { } public boolean isAutoFooterRefreshDisabled ( ) { } public boolean isAutoHeaderRefreshDisabled ( ) { } public void redrawFooters ( ) { } public void redrawHeaders ( ) { } public void removeColumn ( Column < T , ? > col ) { } public void removeColumn ( int index ) { } public abstract void removeColumnStyleName ( int index , String styleName ) { } public void setAutoFooterRefreshDisabled ( boolean disabled ) { } public void setAutoHeaderRefreshDisabled ( boolean disabled ) { } public void setColumnWidth ( Column < T , ? > column , String width ) { } public void setColumnWidth ( Column < T , ? > column , double width , Unit unit ) { } public void setColumnWidth ( int column , double width , Unit unit ) { } public void setColumnWidth ( int column , String width ) { } public void setEmptyTableWidget ( Widget widget ) { } public void setFooterBuilder ( FooterBuilder < T > builder ) { } public void setHeaderBuilder ( HeaderBuilder < T > builder ) { } public final void setKeyboardSelectedColumn ( int column ) { } public void setKeyboardSelectedColumn ( int column , boolean stealFocus ) { } @ Override public void setKeyboardSelectedRow ( int row , boolean stealFocus ) { } public void setKeyboardSelectedRow ( int row , int subrow , boolean stealFocus ) { } public void setLoadingIndicator ( Widget widget ) { } public void setRowStyles ( RowStyles < T > rowStyles ) { } public void setTableBuilder ( CellTableBuilder < T > tableBuilder ) { } @ Override protected Element convertToElements ( SafeHtml html ) { } @ Override protected boolean dependsOnSelection ( ) { } protected abstract void doSetColumnWidth ( int column , String width ) { } protected abstract void doSetHeaderVisible ( boolean isFooter , boolean isVisible ) { } @ Override protected Element getChildContainer ( ) { } @ Override protected TableRowElement getChildElement ( int row ) { } @ Override protected Element getKeyboardSelectedElement ( ) { } protected int getRealColumnCount ( ) { } protected abstract TableSectionElement getTableBodyElement ( ) { } protected abstract TableSectionElement getTableFootElement ( ) { } protected abstract TableSectionElement getTableHeadElement ( ) { } @ Override protected boolean isKeyboardNavigationSuppressed ( ) { } @ Override protected void onBlur ( ) { } @ SuppressWarnings ( "deprecation" ) @ Override protected void onBrowserEvent2 ( Event event ) { } @ Override protected void onFocus ( ) { } protected void refreshColumnWidths ( ) { } @ Override @ Deprecated protected void renderRowValues ( SafeHtmlBuilder sb , List < T > values , int start , SelectionModel < ? super T > selectionModel ) { } @ Deprecated protected final void renderRowValuesLegacy ( SafeHtmlBuilder sb , List < T > values , int start , SelectionModel < ? super T > selectionModel ) { } @ Override protected void replaceAllChildren ( List < T > values , SafeHtml html ) { } @ SuppressWarnings ( "deprecation" ) @ Override protected void replaceChildren ( List < T > values , int start , SafeHtml html ) { } @ Override protected boolean resetFocusOnCell ( ) { } @ Override protected void setKeyboardSelected ( int index , boolean selected , boolean stealFocus ) { } String getColumnWidth ( int columnIndex ) { } TableRowElement getSubRowElement ( int absRow , int subrow ) { } private SafeHtml buildRowValues ( List < T > values , int start , boolean isRebuildingAllRows ) { } private void checkColumnBounds ( int col ) { } private void coalesceCellProperties ( ) { } private void createHeaders ( boolean isFooter ) { } private < C > void fireEventToCell ( Event event , String eventType , Element parentElem , final T rowValue , Context context , HasCell < T , C > column ) { } private Element getKeyboardSelectedElement ( TableCellElement td ) { } private TableCellElement getKeyboardSelectedTableCellElement ( ) { } private void init ( ) { } private void refreshColumnsAndRedraw ( ) { } private void refreshHeadersAndColumnsImpl ( ) { } private < C > boolean resetFocusOnCellImpl ( Context context , T value , HasCell < T , C > column , Element cellParent ) { } private void setRowHover ( TableRowElement tr , boolean isHovering ) { setRowStyleName ( tr , style . hoveredRow ( ) , style . hoveredRowCell ( ) , isHovering ) ; <START_BUG> RowHoverEvent . fire ( this , tr , isHovering ) ; <END_BUG>

Fix:
RowHoverEvent . fire ( this , tr , ( ! isHovering ) ) ;