Program: 119698
Project: 119698
Buggy source:
@Override protected IFigure createFigure(){
  Figure mainFigure=new Figure();
  XmlMapDataLayout manager2=new XmlMapDataLayout(getRootModelManager().getGraphicalViewer());
  mainFigure.setLayoutManager(manager2);
  Figure inputZone=new Figure();
  inputZone.setLayoutManager(new ZoneLayout());
  inputToolBar=createInputZoneToolBar();
  inputToolBar.setBorder(new LineBorder(ColorProviderMapper.getColor(ColorInfo.COLOR_TREE_BORDER)));
  inputZone.add(inputToolBar);
  inputScroll=new ScrollPane();
  inputScroll.setHorizontalScrollBarVisibility(ScrollPane.NEVER);
  leftFigure=new Figure();
  ToolbarLayout subManager=createZoneContentLayout();
  subManager.setSpacing(20);
  subManager.setVertical(true);
  leftFigure.setLayoutManager(subManager);
  leftFigure.setBorder(new MarginBorder(20,40,20,40));
  inputScroll.getViewport().setContents(leftFigure);
  inputScroll.getViewport().setContentsTracksWidth(true);
  inputZone.add(inputScroll);
  mainFigure.add(inputZone);
  SashSeparator separatorLeft=new SashSeparator();
  separatorLeft.setImage(ImageProviderMapper.getImage(ImageInfo.ZONE_SASH));
  mainFigure.add(separatorLeft);
  Figure varZone=new Figure();
  varZone.setLayoutManager(new ZoneLayout());
  searchToolBar=createSearchZoneToolBar();
  searchToolBar.setBorder(new LineBorder(ColorProviderMapper.getColor(ColorInfo.COLOR_TREE_BORDER)));
  varZone.add(searchToolBar);
  varScroll=new ScrollPane();
  varScroll.setHorizontalScrollBarVisibility(ScrollPane.NEVER);
  centerFigure=new Figure();
  subManager=new ZoneLayout();
  subManager.setSpacing(20);
  centerFigure.setLayoutManager(subManager);
  centerFigure.setBorder(new MarginBorder(5,60,5,60));
  varScroll.getViewport().setContents(centerFigure);
  varScroll.getViewport().setContentsTracksWidth(true);
  varZone.add(varScroll);
  mainFigure.add(varZone);
  SashSeparator separatorRight=new SashSeparator();
  separatorRight.setImage(ImageProviderMapper.getImage(ImageInfo.ZONE_SASH));
  mainFigure.add(separatorRight);
  Figure outputZone=new Figure();
  outputZone.setLayoutManager(new ZoneLayout());
  outputToolBar=createOutputZoneToolBar();
  outputToolBar.setBorder(new LineBorder(ColorProviderMapper.getColor(ColorInfo.COLOR_TREE_BORDER)));
  outputZone.add(outputToolBar);
  outputScroll=new ScrollPane();
  outputScroll.setHorizontalScrollBarVisibility(ScrollPane.NEVER);
  rightFigure=new Figure();
  subManager=createZoneContentLayout();
  subManager.setSpacing(20);
  subManager.setVertical(true);
  rightFigure.setLayoutManager(subManager);
  rightFigure.setBorder(new MarginBorder(20,40,20,40));
  outputScroll.getViewport().setContents(rightFigure);
  outputScroll.getViewport().setContentsTracksWidth(true);
  outputZone.add(outputScroll);
  mainFigure.add(outputZone);
  mainFigure.setOpaque(true);
  mainFigure.setBackgroundColor(ColorProviderMapper.getColor(ColorInfo.COLOR_BACKGROUND_LINKS_ZONE));
  separatorLeft.setLeftFigure(inputZone);
  separatorLeft.setRightFigure(varScroll);
  separatorLeft.setParentFigure(mainFigure);
  separatorRight.setLeftFigure(varScroll);
  separatorRight.setRightFigure(outputZone);
  separatorRight.setParentFigure(mainFigure);
  return mainFigure;
}

Fixed version (ground truth):
@Override protected IFigure createFigure(){
  Figure mainFigure=new Figure();
  XmlMapDataLayout manager2=new XmlMapDataLayout(getRootModelManager().getGraphicalViewer());
  mainFigure.setLayoutManager(manager2);
  Figure inputZone=new Figure();
  inputZone.setLayoutManager(new ZoneLayout());
  inputToolBar=createInputZoneToolBar();
  inputToolBar.setBorder(new LineBorder(ColorProviderMapper.getColor(ColorInfo.COLOR_TREE_BORDER)));
  inputZone.add(inputToolBar);
  inputScroll=new ScrollPane();
  inputScroll.setHorizontalScrollBarVisibility(ScrollPane.NEVER);
  leftFigure=new Figure();
  ToolbarLayout subManager=createZoneContentLayout();
  subManager.setSpacing(20);
  subManager.setVertical(true);
  leftFigure.setLayoutManager(subManager);
  leftFigure.setBorder(new MarginBorder(20,40,20,40));
  inputScroll.getViewport().setContents(leftFigure);
  inputScroll.getViewport().setContentsTracksWidth(true);
  inputZone.add(inputScroll);
  mainFigure.add(inputZone);
  SashSeparator separatorLeft=new SashSeparator();
  separatorLeft.setImage(ImageProviderMapper.getImage(ImageInfo.ZONE_SASH));
  mainFigure.add(separatorLeft);
  searchToolBar=createSearchZoneToolBar();
  searchToolBar.setBorder(new LineBorder(ColorProviderMapper.getColor(ColorInfo.COLOR_TREE_BORDER)));
  varScroll=new ScrollPane();
  varScroll.setHorizontalScrollBarVisibility(ScrollPane.NEVER);
  centerFigure=new Figure();
  subManager=createZoneContentLayout();
  subManager.setSpacing(20);
  subManager.setVertical(true);
  centerFigure.setLayoutManager(subManager);
  centerFigure.setBorder(new MarginBorder(10,40,10,40));
  varScroll.getViewport().setContents(centerFigure);
  varScroll.getViewport().setContentsTracksWidth(true);
  centerFigure.add(searchToolBar);
  mainFigure.add(varScroll);
  SashSeparator separatorRight=new SashSeparator();
  separatorRight.setImage(ImageProviderMapper.getImage(ImageInfo.ZONE_SASH));
  mainFigure.add(separatorRight);
  Figure outputZone=new Figure();
  outputZone.setLayoutManager(new ZoneLayout());
  outputToolBar=createOutputZoneToolBar();
  outputToolBar.setBorder(new LineBorder(ColorProviderMapper.getColor(ColorInfo.COLOR_TREE_BORDER)));
  outputZone.add(outputToolBar);
  outputScroll=new ScrollPane();
  outputScroll.setHorizontalScrollBarVisibility(ScrollPane.NEVER);
  rightFigure=new Figure();
  subManager=createZoneContentLayout();
  subManager.setSpacing(20);
  subManager.setVertical(true);
  rightFigure.setLayoutManager(subManager);
  rightFigure.setBorder(new MarginBorder(20,40,20,40));
  outputScroll.getViewport().setContents(rightFigure);
  outputScroll.getViewport().setContentsTracksWidth(true);
  outputZone.add(outputScroll);
  mainFigure.add(outputZone);
  mainFigure.setOpaque(true);
  mainFigure.setBackgroundColor(ColorProviderMapper.getColor(ColorInfo.COLOR_BACKGROUND_LINKS_ZONE));
  separatorLeft.setLeftFigure(inputZone);
  separatorLeft.setRightFigure(varScroll);
  separatorLeft.setParentFigure(mainFigure);
  separatorRight.setLeftFigure(varScroll);
  separatorRight.setRightFigure(outputZone);
  separatorRight.setParentFigure(mainFigure);
  return mainFigure;
}