Program: 188501
Project: 188501
Buggy source:
public AsyncTableCell(final Class<T> classToReturn,final Filter filter,final boolean justActive,final Facets facets,final String summary,final boolean selectable,final int initialPageSize,final int pageSizeIncrement,final O object){
  super();
  this.classToReturn=classToReturn;
  this.initialPageSize=initialPageSize;
  this.pageSizeIncrement=pageSizeIncrement;
  this.object=object;
  final String notNullSummary=StringUtils.isNotBlank(summary) ? summary : "String_Node_Str" + Random.nextInt(1000);
  this.filter=filter;
  this.justActive=justActive;
  this.facets=facets;
  this.selectable=selectable;
  display=new AccessibleCellTable<T>(getInitialPageSize(),(MyCellTableResources)GWT.create(MyCellTableResources.class),getKeyProvider(),summary);
  display.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.DISABLED);
  display.setLoadingIndicator(new HTML(HtmlSnippetUtils.LOADING));
  configure(display);
  this.dataProvider=new MyAsyncDataProvider<T>(display,new IndexResultDataProvider<T>(){
    @Override public void getData(    Sublist sublist,    Sorter sorter,    final AsyncCallback<IndexResult<T>> callback){
      AsyncTableCell.this.getData(AsyncTableCell.this.getFilter(),sublist,sorter,new AsyncCallback<IndexResult<T>>(){
        @Override public void onFailure(        Throwable caught){
          callback.onFailure(caught);
        }
        @Override public void onSuccess(        IndexResult<T> result){
          setResult(result);
          callback.onSuccess(result);
        }
      }
);
    }
    @Override public Sorter getSorter(    ColumnSortList columnSortList){
      return AsyncTableCell.this.getSorter(columnSortList);
    }
  }
){
    @Override protected void fireChangeEvent(    IndexResult<T> result){
      ValueChangeEvent.fire(AsyncTableCell.this,result);
    }
  }
;
  dataProvider.addDataDisplay(display);
  resultsPager=new AccessibleSimplePager(AccessibleSimplePager.TextLocation.LEFT,(SimplePager.Resources)GWT.create(SimplePager.Resources.class),false,initialPageSize,false,false,(SimplePager.ImageButtonsConstants)GWT.create(SimplePager.ImageButtonsConstants.class));
  resultsPager.setDisplay(display);
  pageSizePager=new RodaPageSizePager(getPageSizePagerIncrement());
  pageSizePager.setDisplay(display);
  csvDownloadButton=new Button(messages.tableDownloadCSV());
  csvDownloadButton.addStyleName("String_Node_Str");
  createSelectAllPanel();
  add(selectAllPanel);
  add(display);
  add(resultsPager);
  add(pageSizePager);
  add(csvDownloadButton);
  csvDownloadButton.addClickHandler(new ClickHandler(){
    @Override public void onClick(    ClickEvent event){
      RestUtils.requestCSVExport(getClassToReturn(),getFilter(),dataProvider.getSorter(),dataProvider.getSublist(),getFacets(),getJustActive(),false,notNullSummary + "String_Node_Str");
    }
  }
);
  selectionModel=new SingleSelectionModel<>(getKeyProvider());
  Handler<T> selectionEventManager=getSelectionEventManager();
  if (selectionEventManager != null) {
    display.setSelectionModel(selectionModel,selectionEventManager);
  }
 else {
    display.setSelectionModel(selectionModel);
  }
  columnSortHandler=new AsyncHandler(display);
  display.addColumnSortHandler(columnSortHandler);
  addStyleName("String_Node_Str");
  resultsPager.addStyleName("String_Node_Str");
  pageSizePager.addStyleName("String_Node_Str");
  display.addStyleName("String_Node_Str");
  addValueChangeHandler(new ValueChangeHandler<IndexResult<T>>(){
    @Override public void onValueChange(    ValueChangeEvent<IndexResult<T>> event){
      selected=new HashSet<T>();
      hideSelectAllPanel();
    }
  }
);
  Label emptyInfo=new Label(messages.noItemsToDisplay());
  display.setEmptyTableWidget(emptyInfo);
}

Fixed version (ground truth):
public AsyncTableCell(final Class<T> classToReturn,final Filter filter,final boolean justActive,final Facets facets,final String summary,final boolean selectable,final int initialPageSize,final int pageSizeIncrement,final O object){
  super();
  this.classToReturn=classToReturn;
  this.initialPageSize=initialPageSize;
  this.pageSizeIncrement=pageSizeIncrement;
  this.object=object;
  final String notNullSummary=StringUtils.isNotBlank(summary) ? summary : "String_Node_Str" + Random.nextInt(1000);
  this.filter=filter;
  this.justActive=justActive;
  this.facets=facets;
  this.selectable=selectable;
  display=new AccessibleCellTable<T>(getInitialPageSize(),(MyCellTableResources)GWT.create(MyCellTableResources.class),getKeyProvider(),summary);
  display.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.DISABLED);
  display.setLoadingIndicator(new HTML(HtmlSnippetUtils.LOADING));
  configure(display);
  this.dataProvider=new MyAsyncDataProvider<T>(display,new IndexResultDataProvider<T>(){
    @Override public void getData(    Sublist sublist,    Sorter sorter,    final AsyncCallback<IndexResult<T>> callback){
      AsyncTableCell.this.getData(AsyncTableCell.this.getFilter(),sublist,sorter,new AsyncCallback<IndexResult<T>>(){
        @Override public void onFailure(        Throwable caught){
          callback.onFailure(caught);
        }
        @Override public void onSuccess(        IndexResult<T> result){
          setResult(result);
          callback.onSuccess(result);
        }
      }
);
    }
    @Override public Sorter getSorter(    ColumnSortList columnSortList){
      return AsyncTableCell.this.getSorter(columnSortList);
    }
  }
){
    @Override protected void fireChangeEvent(    IndexResult<T> result){
      ValueChangeEvent.fire(AsyncTableCell.this,result);
    }
  }
;
  dataProvider.addDataDisplay(display);
  resultsPager=new AccessibleSimplePager(AccessibleSimplePager.TextLocation.LEFT,(SimplePager.Resources)GWT.create(SimplePager.Resources.class),false,initialPageSize,false,false,(SimplePager.ImageButtonsConstants)GWT.create(SimplePager.ImageButtonsConstants.class));
  resultsPager.setDisplay(display);
  pageSizePager=new RodaPageSizePager(getPageSizePagerIncrement());
  pageSizePager.setDisplay(display);
  csvDownloadButton=new Button(messages.tableDownloadCSV());
  csvDownloadButton.addStyleName("String_Node_Str");
  createSelectAllPanel();
  add(selectAllPanel);
  add(display);
  add(resultsPager);
  add(pageSizePager);
  add(csvDownloadButton);
  csvDownloadButton.addClickHandler(new ClickHandler(){
    @Override public void onClick(    ClickEvent event){
      RestUtils.requestCSVExport(getClassToReturn(),getFilter(),dataProvider.getSorter(),dataProvider.getSublist(),getFacets(),getJustActive(),false,notNullSummary + "String_Node_Str");
    }
  }
);
  selectionModel=new SingleSelectionModel<>(getKeyProvider());
  Handler<T> selectionEventManager=getSelectionEventManager();
  if (selectionEventManager != null) {
    display.setSelectionModel(selectionModel,selectionEventManager);
  }
 else {
    display.setSelectionModel(selectionModel);
  }
  columnSortHandler=new AsyncHandler(display);
  display.addColumnSortHandler(columnSortHandler);
  addStyleName("String_Node_Str");
  resultsPager.addStyleName("String_Node_Str");
  pageSizePager.addStyleName("String_Node_Str");
  display.addStyleName("String_Node_Str");
  addValueChangeHandler(new ValueChangeHandler<IndexResult<T>>(){
    @Override public void onValueChange(    ValueChangeEvent<IndexResult<T>> event){
      selected=new HashSet<T>();
      hideSelectAllPanel();
    }
  }
);
  updateEmptyTableWidget();
}