Program: 145602
Project: 145602
Buggy source:
public static GxtEventsExecutor createExecutor(Component aComponent,JavaScriptObject aEventsThis) throws Exception {
  final GxtEventsExecutor executor=new GxtEventsExecutor(aEventsThis);
  aComponent.setData(HANDLER_DATA_NAME,executor);
  if (aComponent instanceof HasSelectHandlers)   ((HasSelectHandlers)aComponent).addSelectHandler(executor);
  if (aComponent instanceof PlatypusCheckBox) {
    final PlatypusCheckBox pcheck=(PlatypusCheckBox)aComponent;
    pcheck.addValueChangeHandler(new ValueChangeHandler<Boolean>(){
      @Override public void onValueChange(      ValueChangeEvent<Boolean> event){
        PlatypusButtonGroup pgroup=pcheck.getButtonGroup();
        if (pgroup == null)         executor.onSelect(new SurrogateSelectEvent(event.getSource()));
      }
    }
);
  }
  aComponent.addDomHandler(executor,MouseOverEvent.getType());
  aComponent.addDomHandler(executor,MouseOutEvent.getType());
  aComponent.addDomHandler(executor,MouseDownEvent.getType());
  aComponent.addDomHandler(executor,MouseUpEvent.getType());
  aComponent.addDomHandler(executor,MouseWheelEvent.getType());
  aComponent.addDomHandler(executor,MouseMoveEvent.getType());
  aComponent.addDomHandler(executor,ClickEvent.getType());
  aComponent.addDomHandler(executor,DoubleClickEvent.getType());
  if (aComponent instanceof HasKeyDownHandlers)   ((HasKeyDownHandlers)aComponent).addKeyDownHandler(executor);
  if (aComponent instanceof HasKeyUpHandlers)   ((HasKeyUpHandlers)aComponent).addKeyUpHandler(executor);
  if (aComponent instanceof HasKeyPressHandlers)   ((HasKeyPressHandlers)aComponent).addKeyPressHandler(executor);
  if (aComponent instanceof HasFocusHandlers)   ((HasFocusHandlers)aComponent).addFocusHandler(executor);
  if (aComponent instanceof HasBlurHandlers)   ((HasBlurHandlers)aComponent).addBlurHandler(executor);
  if (aComponent instanceof HasShowHandlers)   ((HasShowHandlers)aComponent).addShowHandler(executor);
  if (aComponent instanceof HasResizeHandlers)   ((HasResizeHandlers)aComponent).addResizeHandler(executor);
  if (aComponent instanceof HasHideHandlers)   ((HasHideHandlers)aComponent).addHideHandler(executor);
  if (aComponent instanceof HasRemoveHandlers)   ((HasRemoveHandlers)aComponent).addRemoveHandler(executor);
  if (aComponent instanceof HasAddHandlers)   ((HasAddHandlers)aComponent).addAddHandler(executor);
  if (aComponent instanceof HasMoveHandlers)   ((HasMoveHandlers)aComponent).addMoveHandler(executor);
  if (aComponent instanceof HasSelectionHandlers<?>)   ((HasSelectionHandlers<Widget>)aComponent).addSelectionHandler(executor);
  return executor;
}

Fixed version (ground truth):
public static GxtEventsExecutor createExecutor(Component aComponent,JavaScriptObject aEventsThis) throws Exception {
  final GxtEventsExecutor executor=new GxtEventsExecutor(aComponent,aEventsThis);
  aComponent.setData(HANDLER_DATA_NAME,executor);
  if (aComponent instanceof HasSelectHandlers)   ((HasSelectHandlers)aComponent).addSelectHandler(executor);
  if (aComponent instanceof PlatypusCheckBox) {
    final PlatypusCheckBox pcheck=(PlatypusCheckBox)aComponent;
    pcheck.addValueChangeHandler(new ValueChangeHandler<Boolean>(){
      @Override public void onValueChange(      ValueChangeEvent<Boolean> event){
        PlatypusButtonGroup pgroup=pcheck.getButtonGroup();
        if (pgroup == null)         executor.onSelect(new SurrogateSelectEvent(event.getSource()));
      }
    }
);
  }
  aComponent.addDomHandler(executor,MouseOverEvent.getType());
  aComponent.addDomHandler(executor,MouseOutEvent.getType());
  aComponent.addDomHandler(executor,MouseDownEvent.getType());
  aComponent.addDomHandler(executor,MouseUpEvent.getType());
  aComponent.addDomHandler(executor,MouseWheelEvent.getType());
  aComponent.addDomHandler(executor,MouseMoveEvent.getType());
  aComponent.addDomHandler(executor,ClickEvent.getType());
  aComponent.addDomHandler(executor,DoubleClickEvent.getType());
  if (aComponent instanceof HasKeyDownHandlers)   ((HasKeyDownHandlers)aComponent).addKeyDownHandler(executor);
  if (aComponent instanceof HasKeyUpHandlers)   ((HasKeyUpHandlers)aComponent).addKeyUpHandler(executor);
  if (aComponent instanceof HasKeyPressHandlers)   ((HasKeyPressHandlers)aComponent).addKeyPressHandler(executor);
  if (aComponent instanceof HasFocusHandlers)   ((HasFocusHandlers)aComponent).addFocusHandler(executor);
  if (aComponent instanceof HasBlurHandlers)   ((HasBlurHandlers)aComponent).addBlurHandler(executor);
  if (aComponent instanceof HasShowHandlers)   ((HasShowHandlers)aComponent).addShowHandler(executor);
  if (aComponent instanceof HasResizeHandlers)   ((HasResizeHandlers)aComponent).addResizeHandler(executor);
  if (aComponent instanceof HasHideHandlers)   ((HasHideHandlers)aComponent).addHideHandler(executor);
  if (aComponent instanceof HasRemoveHandlers)   ((HasRemoveHandlers)aComponent).addRemoveHandler(executor);
  if (aComponent instanceof HasAddHandlers)   ((HasAddHandlers)aComponent).addAddHandler(executor);
  if (aComponent instanceof HasMoveHandlers)   ((HasMoveHandlers)aComponent).addMoveHandler(executor);
  if (aComponent instanceof HasSelectionHandlers<?>)   ((HasSelectionHandlers<Widget>)aComponent).addSelectionHandler(executor);
  return executor;
}