Program: 32519
Project: 32519
Buggy source:
/** 
 * Display a frame for browsing issues.
 */
private JPanel constructView(){
  final SortedList<Issue> issuesSortedList=new SortedList<Issue>(issuesEventList,null);
  FilterList<Issue> filteredIssues=new FilterList<Issue>(issuesSortedList,filterPanel.getMatcherEditor());
  SeparatorList<Issue> separatedIssues=new SeparatorList<Issue>(filteredIssues,GlazedLists.beanPropertyComparator(Issue.class,"String_Node_Str"),0,Integer.MAX_VALUE);
  issuesTableModel=new EventTableModel<Issue>(separatedIssues,new IssueTableFormat());
  final TableColumnModel issuesTableColumnModel=new EventTableColumnModel(new BasicEventList<TableColumn>());
  JSeparatorTable issuesJTable=new JSeparatorTable(issuesTableModel,issuesTableColumnModel);
  issuesJTable.setAutoCreateColumnsFromModel(true);
  issuesJTable.setSeparatorRenderer(new IssueSeparatorTableCell(separatedIssues));
  issuesJTable.setSeparatorEditor(new IssueSeparatorTableCell(separatedIssues));
  issuesSelectionModel=new EventSelectionModel<Issue>(separatedIssues);
  issuesSelectionModel.setSelectionMode(ListSelection.MULTIPLE_INTERVAL_SELECTION_DEFENSIVE);
  issuesSelectionModel.addListSelectionListener(new IssuesSelectionListener());
  issuesJTable.setSelectionModel(issuesSelectionModel);
  issuesJTable.getColumnModel().getColumn(0).setPreferredWidth(150);
  issuesJTable.getColumnModel().getColumn(1).setPreferredWidth(400);
  issuesJTable.getColumnModel().getColumn(2).setPreferredWidth(300);
  issuesJTable.getColumnModel().getColumn(3).setPreferredWidth(300);
  issuesJTable.getColumnModel().getColumn(4).setPreferredWidth(250);
  issuesJTable.getColumnModel().getColumn(5).setPreferredWidth(300);
  issuesJTable.getColumnModel().getColumn(6).setPreferredWidth(300);
  issuesJTable.getColumnModel().getColumn(7).setPreferredWidth(1000);
  issuesJTable.setDefaultRenderer(String.class,new NoFocusRenderer(issuesJTable.getDefaultRenderer(String.class)));
  issuesJTable.setDefaultRenderer(Integer.class,new NoFocusRenderer(issuesJTable.getDefaultRenderer(Integer.class)));
  issuesJTable.setDefaultRenderer(Priority.class,new NoFocusRenderer(new PriorityTableCellRenderer()));
  LookAndFeelTweaks.tweakTable(issuesJTable);
  TableComparatorChooser.install(issuesJTable,issuesSortedList,TableComparatorChooser.MULTIPLE_COLUMN_KEYBOARD);
  JScrollPane issuesTableScrollPane=new JScrollPane(issuesJTable,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
  issuesTableScrollPane.getViewport().setBackground(UIManager.getColor("String_Node_Str"));
  issuesTableScrollPane.setBorder(BorderFactory.createEmptyBorder());
  issueDetails=new IssueDetailsComponent(filteredIssues);
  EventList<Project> projects=Project.getProjects();
  EventComboBoxModel projectsComboModel=new EventComboBoxModel<Project>(projects);
  JComboBox projectsCombo=new JComboBox(projectsComboModel);
  projectsCombo.setEditable(false);
  projectsCombo.setOpaque(false);
  projectsCombo.addItemListener(new ProjectChangeListener());
  projectsComboModel.setSelectedItem(new Project(null,"String_Node_Str"));
  issueCounter=new IssueCounterLabel(filteredIssues);
  issueCounter.setHorizontalAlignment(SwingConstants.CENTER);
  issueCounter.setForeground(Color.WHITE);
  throbber=new JLabel(THROBBER_STATIC);
  throbber.setHorizontalAlignment(SwingConstants.RIGHT);
  JPanel iconBar=new GradientPanel(GLAZED_LISTS_MEDIUM_BROWN,GLAZED_LISTS_DARK_BROWN,true);
  iconBar.setLayout(new GridLayout(1,3));
  iconBar.add(projectsCombo);
  iconBar.add(issueCounter);
  iconBar.add(throbber);
  iconBar.setBorder(BorderFactory.createEmptyBorder(5,5,5,5));
  JPanel dataPanel=new JPanel();
  JComponent issueDetailsComponent=issueDetails;
  dataPanel.setLayout(new GridLayout(2,1));
  dataPanel.add(issuesTableScrollPane);
  dataPanel.add(issueDetailsComponent);
  JComponent filtersPanel=filterPanel.getComponent();
  filtersPanel.setBorder(BorderFactory.createEmptyBorder());
  issueDetailsComponent.setBorder(BorderFactory.createMatteBorder(1,0,0,0,GLAZED_LISTS_DARK_BROWN));
  final JPanel mainPanel=new JPanel(new GridBagLayout());
  mainPanel.add(iconBar,new GridBagConstraints(0,0,2,1,1.0,0.0,GridBagConstraints.CENTER,GridBagConstraints.BOTH,new Insets(0,0,0,0),0,0));
  mainPanel.add(filtersPanel,new GridBagConstraints(0,1,1,1,0.0,1.0,GridBagConstraints.CENTER,GridBagConstraints.BOTH,new Insets(0,0,0,0),0,0));
  mainPanel.add(Box.createHorizontalStrut(240),new GridBagConstraints(0,1,1,1,0.0,0.0,GridBagConstraints.CENTER,GridBagConstraints.BOTH,new Insets(0,0,0,0),0,0));
  mainPanel.add(dataPanel,new GridBagConstraints(1,1,1,1,1.0,1.0,GridBagConstraints.CENTER,GridBagConstraints.BOTH,new Insets(0,0,0,0),0,0));
  return mainPanel;
}

Fixed version (ground truth):
/** 
 * Display a frame for browsing issues.
 */
private JPanel constructView(){
  final SortedList<Issue> issuesSortedList=new SortedList<Issue>(issuesEventList,null);
  FilterList<Issue> filteredIssues=new FilterList<Issue>(issuesSortedList,filterPanel.getMatcherEditor());
  SeparatorList<Issue> separatedIssues=new SeparatorList<Issue>(filteredIssues,GlazedLists.beanPropertyComparator(Issue.class,"String_Node_Str",new String[0]),0,Integer.MAX_VALUE);
  issuesTableModel=new EventTableModel<Issue>(separatedIssues,new IssueTableFormat());
  final TableColumnModel issuesTableColumnModel=new EventTableColumnModel(new BasicEventList<TableColumn>());
  JSeparatorTable issuesJTable=new JSeparatorTable(issuesTableModel,issuesTableColumnModel);
  issuesJTable.setAutoCreateColumnsFromModel(true);
  issuesJTable.setSeparatorRenderer(new IssueSeparatorTableCell(separatedIssues));
  issuesJTable.setSeparatorEditor(new IssueSeparatorTableCell(separatedIssues));
  issuesSelectionModel=new EventSelectionModel<Issue>(separatedIssues);
  issuesSelectionModel.setSelectionMode(ListSelection.MULTIPLE_INTERVAL_SELECTION_DEFENSIVE);
  issuesSelectionModel.addListSelectionListener(new IssuesSelectionListener());
  issuesJTable.setSelectionModel(issuesSelectionModel);
  issuesJTable.getColumnModel().getColumn(0).setPreferredWidth(150);
  issuesJTable.getColumnModel().getColumn(1).setPreferredWidth(400);
  issuesJTable.getColumnModel().getColumn(2).setPreferredWidth(300);
  issuesJTable.getColumnModel().getColumn(3).setPreferredWidth(300);
  issuesJTable.getColumnModel().getColumn(4).setPreferredWidth(250);
  issuesJTable.getColumnModel().getColumn(5).setPreferredWidth(300);
  issuesJTable.getColumnModel().getColumn(6).setPreferredWidth(300);
  issuesJTable.getColumnModel().getColumn(7).setPreferredWidth(1000);
  issuesJTable.setDefaultRenderer(String.class,new NoFocusRenderer(issuesJTable.getDefaultRenderer(String.class)));
  issuesJTable.setDefaultRenderer(Integer.class,new NoFocusRenderer(issuesJTable.getDefaultRenderer(Integer.class)));
  issuesJTable.setDefaultRenderer(Priority.class,new NoFocusRenderer(new PriorityTableCellRenderer()));
  LookAndFeelTweaks.tweakTable(issuesJTable);
  TableComparatorChooser.install(issuesJTable,issuesSortedList,TableComparatorChooser.MULTIPLE_COLUMN_KEYBOARD);
  JScrollPane issuesTableScrollPane=new JScrollPane(issuesJTable,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
  issuesTableScrollPane.getViewport().setBackground(UIManager.getColor("String_Node_Str"));
  issuesTableScrollPane.setBorder(BorderFactory.createEmptyBorder());
  issueDetails=new IssueDetailsComponent(filteredIssues);
  EventList<Project> projects=Project.getProjects();
  EventComboBoxModel projectsComboModel=new EventComboBoxModel<Project>(projects);
  JComboBox projectsCombo=new JComboBox(projectsComboModel);
  projectsCombo.setEditable(false);
  projectsCombo.setOpaque(false);
  projectsCombo.addItemListener(new ProjectChangeListener());
  projectsComboModel.setSelectedItem(new Project(null,"String_Node_Str"));
  issueCounter=new IssueCounterLabel(filteredIssues);
  issueCounter.setHorizontalAlignment(SwingConstants.CENTER);
  issueCounter.setForeground(Color.WHITE);
  throbber=new JLabel(THROBBER_STATIC);
  throbber.setHorizontalAlignment(SwingConstants.RIGHT);
  JPanel iconBar=new GradientPanel(GLAZED_LISTS_MEDIUM_BROWN,GLAZED_LISTS_DARK_BROWN,true);
  iconBar.setLayout(new GridLayout(1,3));
  iconBar.add(projectsCombo);
  iconBar.add(issueCounter);
  iconBar.add(throbber);
  iconBar.setBorder(BorderFactory.createEmptyBorder(5,5,5,5));
  JPanel dataPanel=new JPanel();
  JComponent issueDetailsComponent=issueDetails;
  dataPanel.setLayout(new GridLayout(2,1));
  dataPanel.add(issuesTableScrollPane);
  dataPanel.add(issueDetailsComponent);
  JComponent filtersPanel=filterPanel.getComponent();
  filtersPanel.setBorder(BorderFactory.createEmptyBorder());
  issueDetailsComponent.setBorder(BorderFactory.createMatteBorder(1,0,0,0,GLAZED_LISTS_DARK_BROWN));
  final JPanel mainPanel=new JPanel(new GridBagLayout());
  mainPanel.add(iconBar,new GridBagConstraints(0,0,2,1,1.0,0.0,GridBagConstraints.CENTER,GridBagConstraints.BOTH,new Insets(0,0,0,0),0,0));
  mainPanel.add(filtersPanel,new GridBagConstraints(0,1,1,1,0.0,1.0,GridBagConstraints.CENTER,GridBagConstraints.BOTH,new Insets(0,0,0,0),0,0));
  mainPanel.add(Box.createHorizontalStrut(240),new GridBagConstraints(0,1,1,1,0.0,0.0,GridBagConstraints.CENTER,GridBagConstraints.BOTH,new Insets(0,0,0,0),0,0));
  mainPanel.add(dataPanel,new GridBagConstraints(1,1,1,1,1.0,1.0,GridBagConstraints.CENTER,GridBagConstraints.BOTH,new Insets(0,0,0,0),0,0));
  return mainPanel;
}