nus-yam/ex-repair huggingface dataset:
Program: 57550
Project: 57550
Buggy source:
@Override public boolean performFinish(){
  if (visitedPages.contains(loadDataSetPage) || getContainer().getCurrentPage().equals(loadDataSetPage))   loadDataSetPage.fillDataSetDescription();
  if (visitedPages.contains(transformDataPage) || getContainer().getCurrentPage().equals(transformDataPage))   transformDataPage.fillDataSetDescription();
  if (visitedPages.contains(addGroupingsPage) || getContainer().getCurrentPage().equals(addGroupingsPage))   addGroupingsPage.fillDataSetDescription();
  ATableBasedDataDomain dataDomain;
  try {
    dataDomain=DataLoader.loadData(dataSetDescription);
  }
 catch (  FileNotFoundException e1) {
    e1.printStackTrace();
    throw new IllegalStateException();
  }
catch (  IOException e1) {
    e1.printStackTrace();
    throw new IllegalStateException();
  }
  try {
    String secondaryID=UUID.randomUUID().toString();
    RCPViewInitializationData rcpViewInitData=new RCPViewInitializationData();
    rcpViewInitData.setDataDomainID(dataDomain.getDataDomainID());
    RCPViewManager.get().addRCPView(secondaryID,rcpViewInitData);
    if (PlatformUI.getWorkbench().getActiveWorkbenchWindow() != null) {
      PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().showView(dataDomain.getDefaultStartViewType(),secondaryID,IWorkbenchPage.VIEW_ACTIVATE);
    }
  }
 catch (  PartInitException e) {
    e.printStackTrace();
  }
  return true;
}

Fixed version (ground truth):
@Override public boolean performFinish(){
  if (visitedPages.contains(loadDataSetPage) || getContainer().getCurrentPage().equals(loadDataSetPage))   loadDataSetPage.fillDataSetDescription();
  if (visitedPages.contains(transformDataPage) || getContainer().getCurrentPage().equals(transformDataPage))   transformDataPage.fillDataSetDescription();
  if (visitedPages.contains(addGroupingsPage) || getContainer().getCurrentPage().equals(addGroupingsPage))   addGroupingsPage.fillDataSetDescription();
  ATableBasedDataDomain dataDomain;
  try {
    dataDomain=DataLoader.loadData(dataSetDescription);
  }
 catch (  FileNotFoundException e1) {
    e1.printStackTrace();
    throw new IllegalStateException();
  }
catch (  IOException e1) {
    e1.printStackTrace();
    throw new IllegalStateException();
  }
  return true;
}
Program: 57551
Project: 57551
Buggy source:
void createDefaultRecordPerspective(){
  defaultRecordPerspective=new RecordPerspective(dataDomain);
  defaultRecordPerspective.setDefault(true);
  PerspectiveInitializationData data=new PerspectiveInitializationData();
  if (isColumnDimension)   data.setData(getRowIDList());
 else   data.setData(getColumnIDList());
  defaultRecordPerspective.init(data);
  defaultRecordPerspective.setLabel("String_Node_Str",true);
  hashRecordPerspectives.put(defaultRecordPerspective.getID(),defaultRecordPerspective);
}

Fixed version (ground truth):
void createDefaultRecordPerspective(){
  defaultRecordPerspective=new RecordPerspective(dataDomain);
  defaultRecordPerspective.setDefault(true);
  PerspectiveInitializationData data=new PerspectiveInitializationData();
  if (isColumnDimension)   data.setData(getRowIDList());
 else   data.setData(getColumnIDList());
  defaultRecordPerspective.init(data);
  defaultRecordPerspective.setLabel("String_Node_Str",true);
  hashRecordPerspectives.put(defaultRecordPerspective.getPerspectiveID(),defaultRecordPerspective);
}
Program: 57552
Project: 57552
Buggy source:
/** 
 * Register a new   {@link RecordPerspective} with this DataTable
 * @param recordPerspective
 */
public void registerRecordPerspective(RecordPerspective recordPerspective){
  if (recordPerspective.getID() == null)   throw new IllegalStateException("String_Node_Str" + recordPerspective);
  if (!recordPerspective.getIdType().equals(dataDomain.getRecordIDType()))   throw new IllegalStateException("String_Node_Str" + recordPerspective.getIdType());
  hashRecordPerspectives.put(recordPerspective.getID(),recordPerspective);
  if (recordPerspective.isDefault()) {
    if (defaultRecordPerspective != null)     throw new IllegalStateException("String_Node_Str");
    defaultRecordPerspective=recordPerspective;
  }
  DataDomainUpdateEvent event=new DataDomainUpdateEvent(dataDomain);
  event.setSender(this);
  GeneralManager.get().getEventPublisher().triggerEvent(event);
}

Fixed version (ground truth):
/** 
 * Register a new   {@link RecordPerspective} with this DataTable
 * @param recordPerspective
 */
public void registerRecordPerspective(RecordPerspective recordPerspective){
  if (recordPerspective.getPerspectiveID() == null)   throw new IllegalStateException("String_Node_Str" + recordPerspective);
  if (!recordPerspective.getIdType().equals(dataDomain.getRecordIDType()))   throw new IllegalStateException("String_Node_Str" + recordPerspective.getIdType());
  hashRecordPerspectives.put(recordPerspective.getPerspectiveID(),recordPerspective);
  if (recordPerspective.isDefault()) {
    if (defaultRecordPerspective != null)     throw new IllegalStateException("String_Node_Str");
    defaultRecordPerspective=recordPerspective;
  }
  DataDomainUpdateEvent event=new DataDomainUpdateEvent(dataDomain);
  event.setSender(this);
  GeneralManager.get().getEventPublisher().triggerEvent(event);
}
Program: 57553
Project: 57553
Buggy source:
/** 
 * Register a new   {@link DimensionPerspective} with this DataTable
 * @param dimensionPerspective
 */
public void registerDimensionPerspective(DimensionPerspective dimensionPerspective){
  if (dimensionPerspective.getID() == null)   throw new IllegalStateException("String_Node_Str" + dimensionPerspective);
  hashDimensionPerspectives.put(dimensionPerspective.getID(),dimensionPerspective);
  if (dimensionPerspective.isDefault()) {
    if (defaultDimensionPerspective != null)     throw new IllegalStateException("String_Node_Str");
    defaultDimensionPerspective=dimensionPerspective;
  }
  DataDomainUpdateEvent event=new DataDomainUpdateEvent(dataDomain);
  event.setSender(this);
  GeneralManager.get().getEventPublisher().triggerEvent(event);
}

Fixed version (ground truth):
/** 
 * Register a new   {@link DimensionPerspective} with this DataTable
 * @param dimensionPerspective
 */
public void registerDimensionPerspective(DimensionPerspective dimensionPerspective){
  if (dimensionPerspective.getPerspectiveID() == null)   throw new IllegalStateException("String_Node_Str" + dimensionPerspective);
  hashDimensionPerspectives.put(dimensionPerspective.getPerspectiveID(),dimensionPerspective);
  if (dimensionPerspective.isDefault()) {
    if (defaultDimensionPerspective != null)     throw new IllegalStateException("String_Node_Str");
    defaultDimensionPerspective=dimensionPerspective;
  }
  DataDomainUpdateEvent event=new DataDomainUpdateEvent(dataDomain);
  event.setSender(this);
  GeneralManager.get().getEventPublisher().triggerEvent(event);
}
Program: 57554
Project: 57554
Buggy source:
void createDefaultDimensionPerspective(){
  defaultDimensionPerspective=new DimensionPerspective(dataDomain);
  defaultDimensionPerspective.setDefault(true);
  PerspectiveInitializationData data=new PerspectiveInitializationData();
  if (isColumnDimension)   data.setData(getColumnIDList());
 else   data.setData(getRowIDList());
  defaultDimensionPerspective.init(data);
  defaultDimensionPerspective.setLabel("String_Node_Str",true);
  hashDimensionPerspectives.put(defaultDimensionPerspective.getID(),defaultDimensionPerspective);
}

Fixed version (ground truth):
void createDefaultDimensionPerspective(){
  defaultDimensionPerspective=new DimensionPerspective(dataDomain);
  defaultDimensionPerspective.setDefault(true);
  PerspectiveInitializationData data=new PerspectiveInitializationData();
  if (isColumnDimension)   data.setData(getColumnIDList());
 else   data.setData(getRowIDList());
  defaultDimensionPerspective.init(data);
  defaultDimensionPerspective.setLabel("String_Node_Str",true);
  hashDimensionPerspectives.put(defaultDimensionPerspective.getPerspectiveID(),defaultDimensionPerspective);
}
Program: 57555
Project: 57555
Buggy source:
/** 
 * Same as   {@link #hasRecordPerspective(String)} for dimensions
 * @param dimensionPerspectiveID
 * @return true if the specified id equals the id of the perspective in thiscontainer
 */
public boolean hasDimensionPerspective(String dimensionPerspectiveID){
  return dimensionPerspective.getID().equals(dimensionPerspectiveID);
}

Fixed version (ground truth):
/** 
 * Same as   {@link #hasRecordPerspective(String)} for dimensions
 * @param dimensionPerspectiveID
 * @return true if the specified id equals the id of the perspective in thiscontainer
 */
public boolean hasDimensionPerspective(String dimensionPerspectiveID){
  return dimensionPerspective.getPerspectiveID().equals(dimensionPerspectiveID);
}
Program: 57556
Project: 57556
Buggy source:
/** 
 * @return the recordPerspective, see {@link #recordPerspective}
 */
public RecordPerspective getRecordPerspective(){
  return recordPerspective;
}

Fixed version (ground truth):
/** 
 * @return the recordPerspective, see {@link #recordPerspective}
 */
@XmlTransient public RecordPerspective getRecordPerspective(){
  return recordPerspective;
}
Program: 57557
Project: 57557
Buggy source:
/** 
 * @param dataDomain
 * @param recordPerspective
 * @param dimensionPerspective
 */
public DataContainer(ATableBasedDataDomain dataDomain,RecordPerspective recordPerspective,DimensionPerspective dimensionPerspective){
  this.dataDomain=dataDomain;
  this.recordPerspective=recordPerspective;
  this.dimensionPerspective=dimensionPerspective;
  createKey();
}

Fixed version (ground truth):
/** 
 * @param dataDomain
 * @param recordPerspective
 * @param dimensionPerspective
 */
public DataContainer(ATableBasedDataDomain dataDomain,RecordPerspective recordPerspective,DimensionPerspective dimensionPerspective){
  this.dataDomain=dataDomain;
  this.recordPerspective=recordPerspective;
  recordPerspectiveID=recordPerspective.getPerspectiveID();
  this.dimensionPerspective=dimensionPerspective;
  dimensionPerspectiveID=dimensionPerspective.getPerspectiveID();
  createKey();
}
Program: 57558
Project: 57558
Buggy source:
/** 
 * @return the dimensionPerspective, see {@link #dimensionPerspective}
 */
public DimensionPerspective getDimensionPerspective(){
  return dimensionPerspective;
}

Fixed version (ground truth):
/** 
 * @return the dimensionPerspective, see {@link #dimensionPerspective}
 */
@XmlTransient public DimensionPerspective getDimensionPerspective(){
  return dimensionPerspective;
}
Program: 57559
Project: 57559
Buggy source:
/** 
 * @param recordPerspective setter, see  {@link #recordPerspective}
 */
public void setRecordPerspective(RecordPerspective recordPerspective){
  if (this.recordPerspective != null)   throw new IllegalStateException("String_Node_Str");
  this.recordPerspective=recordPerspective;
  createKey();
}

Fixed version (ground truth):
/** 
 * @param recordPerspective setter, see  {@link #recordPerspective}
 */
public void setRecordPerspective(RecordPerspective recordPerspective){
  if (this.recordPerspective != null)   throw new IllegalStateException("String_Node_Str");
  this.recordPerspective=recordPerspective;
  this.recordPerspectiveID=recordPerspective.getPerspectiveID();
  createKey();
}
Program: 57560
Project: 57560
Buggy source:
/** 
 * Checks whether the specified container id matches to the record perspective in this   {@link DataContainer}
 * @param recordPerspectiveID
 * @return true if the specified id equals the id of the perspective in thiscontainer
 */
public boolean hasRecordPerspective(String recordPerspectiveID){
  return recordPerspective.getID().equals(recordPerspectiveID);
}

Fixed version (ground truth):
/** 
 * Checks whether the specified container id matches to the record perspective in this   {@link DataContainer}
 * @param recordPerspectiveID
 * @return true if the specified id equals the id of the perspective in thiscontainer
 */
public boolean hasRecordPerspective(String recordPerspectiveID){
  return recordPerspective.getPerspectiveID().equals(recordPerspectiveID);
}
Program: 57561
Project: 57561
Buggy source:
/** 
 * @param dimensionPerspective setter, see  {@link #dimensionPerspective}
 */
public void setDimensionPerspective(DimensionPerspective dimensionPerspective){
  if (this.dimensionPerspective != null)   throw new IllegalStateException("String_Node_Str");
  this.dimensionPerspective=dimensionPerspective;
  createKey();
}

Fixed version (ground truth):
/** 
 * @param dimensionPerspective setter, see  {@link #dimensionPerspective}
 */
public void setDimensionPerspective(DimensionPerspective dimensionPerspective){
  if (this.dimensionPerspective != null)   throw new IllegalStateException("String_Node_Str");
  this.dimensionPerspective=dimensionPerspective;
  dimensionPerspectiveID=dimensionPerspective.getPerspectiveID();
  createKey();
}
Program: 57562
Project: 57562
Buggy source:
/** 
 * Initiates clustering based on the parameters passed. Sends out an event to all affected views upon positive completion to replace their VA.
 * @param tableID ID of the set to cluster
 * @param clusterState
 */
public ClusterResult startClustering(AClusterConfiguration clusterState){
  ClusterManager clusterManager=new ClusterManager(this);
  ClusterResult result=clusterManager.cluster(clusterState);
  if (result == null)   return null;
  if (clusterState.getClusterTarget() == EClustererTarget.DIMENSION_CLUSTERING) {
    PerspectiveInitializationData dimensionResult=result.getDimensionResult();
    DimensionPerspective dimensionPerspective=clusterState.getTargetDimensionPerspective();
    dimensionPerspective.init(dimensionResult);
    eventPublisher.triggerEvent(new DimensionVAUpdateEvent(dataDomainID,dimensionPerspective.getID(),this));
  }
  if (clusterState.getClusterTarget() == EClustererTarget.RECORD_CLUSTERING) {
    PerspectiveInitializationData recordResult=result.getRecordResult();
    RecordPerspective recordPerspective=clusterState.getTargetRecordPerspective();
    recordPerspective.init(recordResult);
    eventPublisher.triggerEvent(new RecordVAUpdateEvent(dataDomainID,recordPerspective.getID(),this));
  }
  return result;
}

Fixed version (ground truth):
/** 
 * Initiates clustering based on the parameters passed. Sends out an event to all affected views upon positive completion to replace their VA.
 * @param tableID ID of the set to cluster
 * @param clusterState
 */
public ClusterResult startClustering(AClusterConfiguration clusterState){
  ClusterManager clusterManager=new ClusterManager(this);
  ClusterResult result=clusterManager.cluster(clusterState);
  if (result == null)   return null;
  if (clusterState.getClusterTarget() == EClustererTarget.DIMENSION_CLUSTERING) {
    PerspectiveInitializationData dimensionResult=result.getDimensionResult();
    DimensionPerspective dimensionPerspective=clusterState.getTargetDimensionPerspective();
    dimensionPerspective.init(dimensionResult);
    eventPublisher.triggerEvent(new DimensionVAUpdateEvent(dataDomainID,dimensionPerspective.getPerspectiveID(),this));
  }
  if (clusterState.getClusterTarget() == EClustererTarget.RECORD_CLUSTERING) {
    PerspectiveInitializationData recordResult=result.getRecordResult();
    RecordPerspective recordPerspective=clusterState.getTargetRecordPerspective();
    recordPerspective.init(recordResult);
    eventPublisher.triggerEvent(new RecordVAUpdateEvent(dataDomainID,recordPerspective.getPerspectiveID(),this));
  }
  return result;
}
Program: 57563
Project: 57563
Buggy source:
@Override public void handleRecordVADelta(RecordVADelta vaDelta,String info){
  IDCategory targetCategory=vaDelta.getIDType().getIDCategory();
  if (targetCategory != recordIDCategory)   return;
  if (targetCategory == recordIDCategory && vaDelta.getIDType() != recordIDType)   vaDelta=DeltaConverter.convertDelta(recordIDMappingManager,recordIDType,vaDelta);
  RecordPerspective recordData=table.getRecordPerspective(vaDelta.getVAType());
  recordData.setVADelta(vaDelta);
  RecordVAUpdateEvent event=new RecordVAUpdateEvent(dataDomainID,recordData.getID(),this);
  eventPublisher.triggerEvent(event);
}

Fixed version (ground truth):
@Override public void handleRecordVADelta(RecordVADelta vaDelta,String info){
  IDCategory targetCategory=vaDelta.getIDType().getIDCategory();
  if (targetCategory != recordIDCategory)   return;
  if (targetCategory == recordIDCategory && vaDelta.getIDType() != recordIDType)   vaDelta=DeltaConverter.convertDelta(recordIDMappingManager,recordIDType,vaDelta);
  RecordPerspective recordData=table.getRecordPerspective(vaDelta.getVAType());
  recordData.setVADelta(vaDelta);
  RecordVAUpdateEvent event=new RecordVAUpdateEvent(dataDomainID,recordData.getPerspectiveID(),this);
  eventPublisher.triggerEvent(event);
}
Program: 57564
Project: 57564
Buggy source:
public void handleCombineFilter(Filter<?> filter,Collection<? extends RecordFilter> combineFilters){
  int index=filterPipe.indexOf(filter);
  if (index < 0)   throw new RuntimeException("String_Node_Str");
  RecordMetaOrFilter metaFilter=null;
  if (filter instanceof RecordMetaOrFilter) {
    metaFilter=(RecordMetaOrFilter)filter;
  }
 else {
    metaFilter=new RecordMetaOrFilter(perspective.getID());
    metaFilter.setDataDomain(filter.getDataDomain());
    metaFilter.getFilterList().add((RecordFilter)filter);
  }
  metaFilter.getFilterList().addAll(combineFilters);
  metaFilter.updateDelta(perspective.getID());
  filterPipe.set(index,(FilterType)metaFilter);
  filterPipe.removeAll(combineFilters);
  reEvaluateFilters();
  triggerFilterUpdatedEvent();
}

Fixed version (ground truth):
public void handleCombineFilter(Filter<?> filter,Collection<? extends RecordFilter> combineFilters){
  int index=filterPipe.indexOf(filter);
  if (index < 0)   throw new RuntimeException("String_Node_Str");
  RecordMetaOrFilter metaFilter=null;
  if (filter instanceof RecordMetaOrFilter) {
    metaFilter=(RecordMetaOrFilter)filter;
  }
 else {
    metaFilter=new RecordMetaOrFilter(perspective.getPerspectiveID());
    metaFilter.setDataDomain(filter.getDataDomain());
    metaFilter.getFilterList().add((RecordFilter)filter);
  }
  metaFilter.getFilterList().addAll(combineFilters);
  metaFilter.updateDelta(perspective.getPerspectiveID());
  filterPipe.set(index,(FilterType)metaFilter);
  filterPipe.removeAll(combineFilters);
  reEvaluateFilters();
  triggerFilterUpdatedEvent();
}
Program: 57565
Project: 57565
Buggy source:
public ADataPerspective(ATableBasedDataDomain dataDomain){
  this.dataDomain=dataDomain;
  init();
}

Fixed version (ground truth):
public ADataPerspective(ATableBasedDataDomain dataDomain){
  this.dataDomain=dataDomain;
  System.out.println("String_Node_Str");
  init();
}
Program: 57567
Project: 57567
Buggy source:
@Override public void run(){
  parentComposite.addKeyListener(fpsKeyListener);
}

Fixed version (ground truth):
@Override public void run(){
  parentGLCanvas.requestFocus();
}
Program: 57568
Project: 57568
Buggy source:
public synchronized void startAnimator(){
  if (fpsAnimator == null)   fpsAnimator=new FPSAnimator(30);
  if (!fpsAnimator.isAnimating())   fpsAnimator.start();
  fpsAnimator.setIgnoreExceptions(true);
  fpsAnimator.setPrintExceptions(true);
  Logger.log(new Status(IStatus.INFO,GeneralManager.PLUGIN_ID,"String_Node_Str"));
}

Fixed version (ground truth):
public void startAnimator(){
  if (fpsAnimator == null)   fpsAnimator=new FPSAnimator(30);
  if (!fpsAnimator.isAnimating())   fpsAnimator.start();
  fpsAnimator.setIgnoreExceptions(true);
  fpsAnimator.setPrintExceptions(true);
  Logger.log(new Status(IStatus.INFO,GeneralManager.PLUGIN_ID,"String_Node_Str"));
}
Program: 57569
Project: 57569
Buggy source:
public synchronized void unregisterGLCanvasFromAnimator(final GLCanvas glCanvas){
  fpsAnimator.remove(glCanvas);
}

Fixed version (ground truth):
public void unregisterGLCanvasFromAnimator(final GLCanvas glCanvas){
  fpsAnimator.remove(glCanvas);
}
Program: 57570
Project: 57570
Buggy source:
public synchronized PickingManager getPickingManager(){
  return pickingManager;
}

Fixed version (ground truth):
public PickingManager getPickingManager(){
  return pickingManager;
}
Program: 57571
Project: 57571
Buggy source:
/** 
 * Retrieves the   {@link DisplayLoopExecution} related to the{@link ViewManager}'s display loop.
 * @return {@link DisplayLoopExecution} for executing code in the displayloop
 */
public synchronized DisplayLoopExecution getDisplayLoopExecution(){
  if (displayLoopExecution == null) {
    startAnimator();
    displayLoopExecution=DisplayLoopExecution.get();
    fpsAnimator.add((GLAutoDrawable)displayLoopExecution.getDisplayLoopCanvas());
    displayLoopExecution.executeMultiple(connectedElementRepManager);
  }
  return displayLoopExecution;
}

Fixed version (ground truth):
/** 
 * Retrieves the   {@link DisplayLoopExecution} related to the{@link ViewManager}'s display loop.
 * @return {@link DisplayLoopExecution} for executing code in the displayloop
 */
public DisplayLoopExecution getDisplayLoopExecution(){
  if (displayLoopExecution == null) {
    startAnimator();
    displayLoopExecution=DisplayLoopExecution.get();
    fpsAnimator.add((GLAutoDrawable)displayLoopExecution.getDisplayLoopCanvas());
    displayLoopExecution.executeMultiple(connectedElementRepManager);
  }
  return displayLoopExecution;
}
Program: 57572
Project: 57572
Buggy source:
/** 
 * Remove association between an RCP view and the Caleydo view contained inside the RCP view.
 * @param rcpView
 * @param view
 */
public synchronized void unregisterRCPView(final ARcpGLViewPart rcpView,final IView view){
  if (hashRCP2View.containsKey(rcpView))   hashRCP2View.remove(rcpView);
  if (hashView2RCP.containsKey(view))   hashView2RCP.remove(view);
}

Fixed version (ground truth):
/** 
 * Remove association between an RCP view and the Caleydo view contained inside the RCP view.
 * @param rcpView
 * @param view
 */
public void unregisterRCPView(final ARcpGLViewPart rcpView,final IView view){
  if (hashRCP2View.containsKey(rcpView))   hashRCP2View.remove(rcpView);
  if (hashView2RCP.containsKey(view))   hashView2RCP.remove(view);
}
Program: 57573
Project: 57573
Buggy source:
public synchronized void registerGLView(AGLView glView){
  hashGLViewID2GLView.put(glView.getID(),glView);
  NewViewEvent event=new NewViewEvent(glView);
  event.setSender(this);
  generalManager.getEventPublisher().triggerEvent(event);
}

Fixed version (ground truth):
public void registerGLView(AGLView glView){
  hashGLViewID2GLView.put(glView.getID(),glView);
  NewViewEvent event=new NewViewEvent(glView);
  event.setSender(this);
  generalManager.getEventPublisher().triggerEvent(event);
}
Program: 57574
Project: 57574
Buggy source:
public synchronized Collection<AGLView> getAllGLViews(){
  return hashGLViewID2GLView.values();
}

Fixed version (ground truth):
public Collection<AGLView> getAllGLViews(){
  return hashGLViewID2GLView.values();
}
Program: 57575
Project: 57575
Buggy source:
public static ViewManager get(){
  if (instance == null) {
synchronized (ViewManager.class) {
      if (instance == null)       instance=new ViewManager();
    }
  }
  return instance;
}

Fixed version (ground truth):
public static ViewManager get(){
  if (instance == null) {
synchronized (ViewManager.class) {
      if (instance == null) {
        instance=new ViewManager();
      }
    }
  }
  return instance;
}
Program: 57576
Project: 57576
Buggy source:
public synchronized void registerGLEventListenerByGLCanvas(final GLCanvas glCanvas,final AGLView glView){
  if (glCanvas == null)   return;
  if (!hashGLCanvas2GLView.containsKey(glCanvas)) {
    hashGLCanvas2GLView.put(glCanvas,new ArrayList<AGLView>());
  }
  hashGLCanvas2GLView.get(glCanvas).add(glView);
  glCanvas.addGLEventListener(glView);
}

Fixed version (ground truth):
public void registerGLEventListenerByGLCanvas(final GLCanvas glCanvas,final AGLView glView){
  if (glCanvas == null)   return;
  if (!hashGLCanvas2GLView.containsKey(glCanvas)) {
    hashGLCanvas2GLView.put(glCanvas,new ArrayList<AGLView>());
  }
  hashGLCanvas2GLView.get(glCanvas).add(glView);
  glCanvas.addGLEventListener(glView);
}
Program: 57577
Project: 57577
Buggy source:
public synchronized GLInfoAreaManager getInfoAreaManager(){
  return infoAreaManager;
}

Fixed version (ground truth):
public GLInfoAreaManager getInfoAreaManager(){
  return infoAreaManager;
}
Program: 57578
Project: 57578
Buggy source:
public synchronized void stopAnimator(){
  if (fpsAnimator != null && fpsAnimator.isAnimating())   fpsAnimator.stop();
  Logger.log(new Status(IStatus.INFO,GeneralManager.PLUGIN_ID,"String_Node_Str"));
}

Fixed version (ground truth):
public void stopAnimator(){
  if (fpsAnimator != null && fpsAnimator.isAnimating())   fpsAnimator.stop();
  Logger.log(new Status(IStatus.INFO,GeneralManager.PLUGIN_ID,"String_Node_Str"));
}
Program: 57579
Project: 57579
Buggy source:
/** 
 * Requests busy mode for the application. This method should be called whenever a process needs to stop any user interaction with the application, e.g. when starting up or when loading multiple pathways. Usually this should result disabling user events and showing a loading screen animation.
 * @param requestInstance object that wants to request busy mode
 */
public synchronized void requestBusyMode(Object requestInstance){
  if (requestInstance == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
synchronized (busyRequests) {
    if (busyRequests.isEmpty()) {
      for (      AGLView tmpGLEventListener : getAllGLViews()) {
        if (!tmpGLEventListener.isRenderedRemote()) {
          tmpGLEventListener.enableBusyMode(true);
        }
      }
    }
    if (!busyRequests.contains(requestInstance)) {
      busyRequests.add(requestInstance);
    }
  }
}

Fixed version (ground truth):
/** 
 * Requests busy mode for the application. This method should be called whenever a process needs to stop any user interaction with the application, e.g. when starting up or when loading multiple pathways. Usually this should result disabling user events and showing a loading screen animation.
 * @param requestInstance object that wants to request busy mode
 */
public void requestBusyMode(Object requestInstance){
  if (requestInstance == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
synchronized (busyRequests) {
    if (busyRequests.isEmpty()) {
      for (      AGLView tmpGLEventListener : getAllGLViews()) {
        if (!tmpGLEventListener.isRenderedRemote()) {
          tmpGLEventListener.enableBusyMode(true);
        }
      }
    }
    if (!busyRequests.contains(requestInstance)) {
      busyRequests.add(requestInstance);
    }
  }
}
Program: 57580
Project: 57580
Buggy source:
public synchronized void createSWTView(final ASerializedView serializedView){
  Display.getDefault().asyncExec(new Runnable(){
    @Override public void run(){
      try {
        IWorkbenchPage page=PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
        ARcpGLViewPart viewPart=(ARcpGLViewPart)page.showView(serializedView.getViewType());
        AGLView view=viewPart.getGLView();
        view.initFromSerializableRepresentation(serializedView);
      }
 catch (      PartInitException ex) {
        throw new RuntimeException("String_Node_Str" + serializedView.getViewType(),ex);
      }
    }
  }
);
}

Fixed version (ground truth):
public void createSWTView(final ASerializedView serializedView){
  Display.getDefault().asyncExec(new Runnable(){
    @Override public void run(){
      try {
        IWorkbenchPage page=PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
        ARcpGLViewPart viewPart=(ARcpGLViewPart)page.showView(serializedView.getViewType());
        AGLView view=viewPart.getGLView();
        view.initFromSerializableRepresentation(serializedView);
      }
 catch (      PartInitException ex) {
        throw new RuntimeException("String_Node_Str" + serializedView.getViewType(),ex);
      }
    }
  }
);
}
Program: 57581
Project: 57581
Buggy source:
@SuppressWarnings("String_Node_Str") public synchronized AGLView createGLView(Class<? extends AGLView> viewClass,GLCanvas glCanvas,Composite parentComposite,ViewFrustum viewFrustum){
  AGLView view;
  try {
    Class[] argTypes={GLCanvas.class,Composite.class,ViewFrustum.class};
    Constructor aConstructor=viewClass.getConstructor(argTypes);
    view=(AGLView)aConstructor.newInstance(glCanvas,parentComposite,viewFrustum);
  }
 catch (  Exception e) {
    e.printStackTrace();
    throw new IllegalStateException("String_Node_Str" + viewClass);
  }
  return view;
}

Fixed version (ground truth):
@SuppressWarnings("String_Node_Str") public AGLView createGLView(Class<? extends AGLView> viewClass,GLCanvas glCanvas,Composite parentComposite,ViewFrustum viewFrustum){
  AGLView view;
  try {
    Class[] argTypes={GLCanvas.class,Composite.class,ViewFrustum.class};
    Constructor aConstructor=viewClass.getConstructor(argTypes);
    view=(AGLView)aConstructor.newInstance(glCanvas,parentComposite,viewFrustum);
  }
 catch (  Exception e) {
    e.printStackTrace();
    throw new IllegalStateException("String_Node_Str" + viewClass);
  }
  return view;
}
Program: 57582
Project: 57582
Buggy source:
/** 
 * Releases a previously requested busy mode. Releases are only performed by passing the originally requesting object to this method.
 * @param requestInstance the object that requested the busy mode
 */
public synchronized void releaseBusyMode(Object requestInstance){
  if (requestInstance == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
synchronized (busyRequests) {
    if (busyRequests.contains(requestInstance)) {
      busyRequests.remove(requestInstance);
    }
    if (busyRequests.isEmpty()) {
      for (      AGLView tmpGLEventListener : getAllGLViews()) {
        if (!tmpGLEventListener.isRenderedRemote()) {
          tmpGLEventListener.enableBusyMode(false);
        }
      }
    }
  }
}

Fixed version (ground truth):
/** 
 * Releases a previously requested busy mode. Releases are only performed by passing the originally requesting object to this method.
 * @param requestInstance the object that requested the busy mode
 */
public void releaseBusyMode(Object requestInstance){
  if (requestInstance == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
synchronized (busyRequests) {
    if (busyRequests.contains(requestInstance)) {
      busyRequests.remove(requestInstance);
    }
    if (busyRequests.isEmpty()) {
      for (      AGLView tmpGLEventListener : getAllGLViews()) {
        if (!tmpGLEventListener.isRenderedRemote()) {
          tmpGLEventListener.enableBusyMode(false);
        }
      }
    }
  }
}
Program: 57583
Project: 57583
Buggy source:
public synchronized void unregisterGLView(final AGLView glView){
  if (glView == null)   return;
  GLCanvas parentGLCanvas=(glView).getParentGLCanvas();
  if (parentGLCanvas != null) {
    parentGLCanvas.removeGLEventListener(glView);
    if (hashGLCanvas2GLView.containsKey(parentGLCanvas)) {
      hashGLCanvas2GLView.get(parentGLCanvas).remove(glView);
    }
  }
  hashGLViewID2GLView.remove(glView.getID());
  ViewClosedEvent event=new ViewClosedEvent(glView);
  event.setSender(this);
  generalManager.getEventPublisher().triggerEvent(event);
}

Fixed version (ground truth):
public void unregisterGLView(final AGLView glView){
  if (glView == null)   return;
  GLCanvas parentGLCanvas=(glView).getParentGLCanvas();
  if (parentGLCanvas != null) {
    parentGLCanvas.removeGLEventListener(glView);
    if (hashGLCanvas2GLView.containsKey(parentGLCanvas)) {
      hashGLCanvas2GLView.get(parentGLCanvas).remove(glView);
    }
  }
  hashGLViewID2GLView.remove(glView.getID());
  ViewClosedEvent event=new ViewClosedEvent(glView);
  event.setSender(this);
  generalManager.getEventPublisher().triggerEvent(event);
}
Program: 57584
Project: 57584
Buggy source:
public synchronized boolean unregisterGLCanvas(final GLCanvas glCanvas){
  if (glCanvas == null)   return false;
  fpsAnimator.remove(glCanvas);
  hashGLCanvas2GLView.remove(glCanvas);
  return true;
}

Fixed version (ground truth):
public boolean unregisterGLCanvas(final GLCanvas glCanvas){
  if (glCanvas == null)   return false;
  fpsAnimator.remove(glCanvas);
  hashGLCanvas2GLView.remove(glCanvas);
  return true;
}
Program: 57585
Project: 57585
Buggy source:
public synchronized AGLView getGLView(int iItemID){
  return hashGLViewID2GLView.get(iItemID);
}

Fixed version (ground truth):
public AGLView getGLView(int iItemID){
  return hashGLViewID2GLView.get(iItemID);
}
Program: 57586
Project: 57586
Buggy source:
public synchronized ARcpGLViewPart getViewPartFromView(IView view){
  return hashView2RCP.get(view);
}

Fixed version (ground truth):
public ARcpGLViewPart getViewPartFromView(IView view){
  return hashView2RCP.get(view);
}
Program: 57587
Project: 57587
Buggy source:
/** 
 * Removes all views, canvas and GL2 event listeners
 */
public synchronized void cleanup(){
  hashGLCanvas2GLView.clear();
  hashGLViewID2GLView.clear();
  hashItems.clear();
}

Fixed version (ground truth):
/** 
 * Removes all views, canvas and GL2 event listeners
 */
public void cleanup(){
  hashGLCanvas2GLView.clear();
  hashGLViewID2GLView.clear();
  hashItems.clear();
}
Program: 57588
Project: 57588
Buggy source:
/** 
 * Associate an RCP view with the Caleydo view contained inside the RCP view.
 * @param rcpView
 * @param view
 */
public synchronized void registerRCPView(final ARcpGLViewPart rcpView,final IView view){
  if (!hashRCP2View.containsKey(rcpView))   hashRCP2View.put(rcpView,view);
  if (!hashView2RCP.containsKey(view))   hashView2RCP.put(view,rcpView);
}

Fixed version (ground truth):
/** 
 * Associate an RCP view with the Caleydo view contained inside the RCP view.
 * @param rcpView
 * @param view
 */
public void registerRCPView(final ARcpGLViewPart rcpView,final IView view){
  if (!hashRCP2View.containsKey(rcpView))   hashRCP2View.put(rcpView,view);
  if (!hashView2RCP.containsKey(view))   hashView2RCP.put(view,rcpView);
}
Program: 57589
Project: 57589
Buggy source:
public synchronized void registerGLCanvasToAnimator(final GLCanvas glCaleydoCanvas){
  if (fpsAnimator == null) {
    startAnimator();
  }
  fpsAnimator.add(glCaleydoCanvas);
  Logger.log(new Status(IStatus.INFO,GeneralManager.PLUGIN_ID,"String_Node_Str"));
}

Fixed version (ground truth):
public void registerGLCanvasToAnimator(final GLCanvas glCaleydoCanvas){
  if (fpsAnimator == null) {
    startAnimator();
  }
  fpsAnimator.add(glCaleydoCanvas);
  Logger.log(new Status(IStatus.INFO,GeneralManager.PLUGIN_ID,"String_Node_Str"));
}
Program: 57590
Project: 57590
Buggy source:
public synchronized ConnectedElementRepresentationManager getConnectedElementRepresentationManager(){
  return connectedElementRepManager;
}

Fixed version (ground truth):
public ConnectedElementRepresentationManager getConnectedElementRepresentationManager(){
  return connectedElementRepManager;
}
Program: 57591
Project: 57591
Buggy source:
public synchronized IView getViewFromViewPart(ARcpGLViewPart viewPart){
  return hashRCP2View.get(viewPart);
}

Fixed version (ground truth):
public IView getViewFromViewPart(ARcpGLViewPart viewPart){
  return hashRCP2View.get(viewPart);
}
Program: 57592
Project: 57592
Buggy source:
/** 
 * Make sure that all views get initialized (i.e., constructor and createPartControl created) Otherwise views will not show up
 */
private void initializeViews(){
  IViewReference[] views=PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getViewReferences();
  IWorkbenchPart activeView=PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActivePart();
  try {
    for (    IViewReference view : views) {
      PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().showView(view.getId());
    }
    if (activeView instanceof CaleydoRCPViewPart) {
      PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().showView(((CaleydoRCPViewPart)activeView).getSite().getId());
    }
  }
 catch (  PartInitException e) {
    throw new IllegalStateException();
  }
}

Fixed version (ground truth):
/** 
 * Make sure that all views get initialized (i.e., constructor and createPartControl created) Otherwise views will not show up
 */
private void initializeViews(){
  IViewReference[] views=PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getViewReferences();
  try {
    for (    IViewReference view : views) {
      PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().showView(view.getId(),view.getSecondaryId(),IWorkbenchPage.VIEW_VISIBLE);
    }
  }
 catch (  PartInitException e) {
    throw new IllegalStateException();
  }
}
Program: 57594
Project: 57594
Buggy source:
private String determineDataSetLabel(){
  if (inputFile == null || inputFile.isEmpty())   return "String_Node_Str";
  return inputFile.substring(inputFile.lastIndexOf("String_Node_Str") + 1,inputFile.lastIndexOf("String_Node_Str"));
}

Fixed version (ground truth):
private String determineDataSetLabel(){
  if (inputFile == null || inputFile.isEmpty())   return "String_Node_Str";
  return inputFile.substring(inputFile.lastIndexOf(File.separator) + 1,inputFile.lastIndexOf("String_Node_Str"));
}
Program: 57596
Project: 57596
Buggy source:
@Override public void modifyText(ModifyEvent e){
  createDataPreviewTable(txtCustomizedDelimiter.getText());
}

Fixed version (ground truth):
@Override public void modifyText(ModifyEvent e){
  createDataPreviewTable(customizedDelimiterTextField.getText());
}
Program: 57598
Project: 57598
Buggy source:
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLBookmarkView(glCanvas,parent,serializedView.getViewFrustum());
  view.initFromSerializableRepresentation(serializedView);
  if (view instanceof IDataDomainBasedView<?>) {
    IDataDomain dataDomain=DataDomainManager.get().getDataDomainByID(((ASerializedSingleDataContainerBasedView)serializedView).getDataDomainID());
    @SuppressWarnings("String_Node_Str") IDataDomainBasedView<IDataDomain> dataDomainBasedView=(IDataDomainBasedView<IDataDomain>)view;
    dataDomainBasedView.setDataDomain(dataDomain);
  }
  view.initialize();
  createPartControlGL();
}

Fixed version (ground truth):
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLBookmarkView(glCanvas,parent,serializedView.getViewFrustum());
  initializeView();
  createPartControlGL();
}
Program: 57599
Project: 57599
Buggy source:
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLBucket(glCanvas,parentComposite,serializedView.getViewFrustum());
  if (view instanceof IDataDomainBasedView<?>) {
    IDataDomain dataDomain=DataDomainManager.get().getDataDomainByID(((ASerializedSingleDataContainerBasedView)serializedView).getDataDomainID());
    @SuppressWarnings("String_Node_Str") IDataDomainBasedView<IDataDomain> dataDomainBasedView=(IDataDomainBasedView<IDataDomain>)view;
    dataDomainBasedView.setDataDomain(dataDomain);
  }
  view.initFromSerializableRepresentation(serializedView);
  view.initialize();
  createPartControlGL();
}

Fixed version (ground truth):
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLBucket(glCanvas,parentComposite,serializedView.getViewFrustum());
  initializeView();
  createPartControlGL();
}
Program: 57600
Project: 57600
Buggy source:
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLDataViewIntegrator(glCanvas,parentComposite,serializedView.getViewFrustum());
  view.initFromSerializableRepresentation(serializedView);
  view.initialize();
  minSizeComposite.setView((AGLView)view);
  createPartControlGL();
}

Fixed version (ground truth):
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLDataViewIntegrator(glCanvas,parentComposite,serializedView.getViewFrustum());
  initializeView();
  minSizeComposite.setView((AGLView)view);
  createPartControlGL();
}
Program: 57601
Project: 57601
Buggy source:
@Override public ASerializedView getSerializableRepresentation(){
  SerializedEnRoutePathwayView serializedForm=new SerializedEnRoutePathwayView();
  serializedForm.setViewID(this.getID());
  return serializedForm;
}

Fixed version (ground truth):
@Override public ASerializedMultiDataContainerBasedView getSerializableRepresentation(){
  SerializedEnRoutePathwayView serializedForm=new SerializedEnRoutePathwayView();
  serializedForm.setViewID(this.getID());
  return serializedForm;
}
Program: 57602
Project: 57602
Buggy source:
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLEnRoutePathway(glCanvas,parentComposite,serializedView.getViewFrustum());
  initializeView();
  view.initFromSerializableRepresentation(serializedView);
  minSizeComposite.setView((AGLView)view);
  createPartControlGL();
}

Fixed version (ground truth):
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLEnRoutePathway(glCanvas,parentComposite,serializedView.getViewFrustum());
  initializeView();
  minSizeComposite.setView((AGLView)view);
  createPartControlGL();
}
Program: 57603
Project: 57603
Buggy source:
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLFilterPipeline(glCanvas,parentComposite,serializedView.getViewFrustum());
  view.initFromSerializableRepresentation(serializedView);
  if (view instanceof IDataDomainBasedView<?>) {
    IDataDomain dataDomain=DataDomainManager.get().getDataDomainByID(((ASerializedSingleDataContainerBasedView)serializedView).getDataDomainID());
    @SuppressWarnings("String_Node_Str") IDataDomainBasedView<IDataDomain> dataDomainBasedView=(IDataDomainBasedView<IDataDomain>)view;
    dataDomainBasedView.setDataDomain(dataDomain);
  }
  view.initialize();
  createPartControlGL();
}

Fixed version (ground truth):
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLFilterPipeline(glCanvas,parentComposite,serializedView.getViewFrustum());
  initializeView();
  createPartControlGL();
}
Program: 57604
Project: 57604
Buggy source:
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLHierarchicalHeatMap(glCanvas,parentComposite,serializedView.getViewFrustum());
  initializeView();
  view.initFromSerializableRepresentation(serializedView);
  view.initialize();
  createPartControlGL();
}

Fixed version (ground truth):
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLHierarchicalHeatMap(glCanvas,parentComposite,serializedView.getViewFrustum());
  initializeView();
  createPartControlGL();
}
Program: 57605
Project: 57605
Buggy source:
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLKaplanMeier(glCanvas,parentComposite,serializedView.getViewFrustum());
  initializeView();
  view.initFromSerializableRepresentation(serializedView);
  view.initialize();
  createPartControlGL();
}

Fixed version (ground truth):
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLKaplanMeier(glCanvas,parentComposite,serializedView.getViewFrustum());
  initializeView();
  createPartControlGL();
}
Program: 57606
Project: 57606
Buggy source:
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLRadialHierarchy(glCanvas,parentComposite,serializedView.getViewFrustum());
  view.initFromSerializableRepresentation(serializedView);
  if (view instanceof IDataDomainBasedView<?>) {
    IDataDomain dataDomain=DataDomainManager.get().getDataDomainByID(((ASerializedSingleDataContainerBasedView)serializedView).getDataDomainID());
    @SuppressWarnings("String_Node_Str") IDataDomainBasedView<IDataDomain> dataDomainBasedView=(IDataDomainBasedView<IDataDomain>)view;
    dataDomainBasedView.setDataDomain(dataDomain);
  }
  view.initialize();
  createPartControlGL();
}

Fixed version (ground truth):
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLRadialHierarchy(glCanvas,parentComposite,serializedView.getViewFrustum());
  initializeView();
  createPartControlGL();
}
Program: 57607
Project: 57607
Buggy source:
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLBrick(glCanvas,parentComposite,serializedView.getViewFrustum());
  view.initFromSerializableRepresentation(serializedView);
  if (view instanceof IDataDomainBasedView<?>) {
    IDataDomain dataDomain=DataDomainManager.get().getDataDomainByID(((ASerializedSingleDataContainerBasedView)serializedView).getDataDomainID());
    if (dataDomain == null)     throw new IllegalStateException("String_Node_Str");
    @SuppressWarnings("String_Node_Str") IDataDomainBasedView<IDataDomain> dataDomainBasedView=(IDataDomainBasedView<IDataDomain>)view;
    dataDomainBasedView.setDataDomain(dataDomain);
  }
  view.initialize();
  createPartControlGL();
}

Fixed version (ground truth):
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLBrick(glCanvas,parentComposite,serializedView.getViewFrustum());
  initializeView();
  createPartControlGL();
}
Program: 57608
Project: 57608
Buggy source:
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLTagCloud(glCanvas,parentComposite,serializedView.getViewFrustum());
  view.initFromSerializableRepresentation(serializedView);
  if (view instanceof IDataDomainBasedView<?>) {
    IDataDomain dataDomain=DataDomainManager.get().getDataDomainByID(((ASerializedSingleDataContainerBasedView)serializedView).getDataDomainID());
    if (dataDomain == null)     throw new IllegalStateException("String_Node_Str");
    @SuppressWarnings("String_Node_Str") IDataDomainBasedView<IDataDomain> dataDomainBasedView=(IDataDomainBasedView<IDataDomain>)view;
    dataDomainBasedView.setDataDomain(dataDomain);
  }
  view.initialize();
  createPartControlGL();
}

Fixed version (ground truth):
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLTagCloud(glCanvas,parentComposite,serializedView.getViewFrustum());
  initializeView();
  createPartControlGL();
}
Program: 57609
Project: 57609
Buggy source:
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLTemplate(glCanvas,parentComposite,serializedView.getViewFrustum());
  initializeView();
  view.initFromSerializableRepresentation(serializedView);
  view.initialize();
  createPartControlGL();
}

Fixed version (ground truth):
@Override public void createPartControl(Composite parent){
  super.createPartControl(parent);
  createGLCanvas();
  view=new GLTemplate(glCanvas,parentComposite,serializedView.getViewFrustum());
  initializeView();
  createPartControlGL();
}