Buggy code:
public class NavigatorConfigDialog extends JDialog implements ActionListener , MouseListener , ChangeListener , ListSelectionListener { protected static Category cat = Category . getInstance ( NavigatorConfigDialog . class ) ; public static int _numNavConfig = 0 ; public final int WIDTH = 400 ; public final int HEIGHT = 600 ; protected JTabbedPane _tabs = new JTabbedPane ( ) ; protected JPanel _mainButtons = new JPanel ( new FlowLayout ( FlowLayout . RIGHT ) ) ; protected JButton _okButton = new JButton ( "OK" ) ; protected JPanel _persPanel = new JPanel ( ) ; protected JList _persList = new JList ( ) ; protected JList _rulesList = new JList ( ) ; protected JList _ruleLibList = new JList ( ) ; protected JButton _newPersButton = new JButton ( "New" ) ; protected JButton _removePersButton = new JButton ( "Remove" ) ; protected JButton _dupPersButton = new JButton ( "Duplicate" ) ; protected JButton _addRuleButton = new JButton ( ">>" ) ; protected JButton _removeRuleButton = new JButton ( "<<" ) ; protected JPanel _panesPanel = new JPanel ( ) ; protected JPanel _paneOnePanel = new JPanel ( ) ; protected JRadioButton _paneOneNotShown = new JRadioButton ( "Not<seq2seq4repair_space>Shown" ) ; protected JRadioButton _paneOneTree = new JRadioButton ( "Rooted<seq2seq4repair_space>at<seq2seq4repair_space>Project" ) ; protected ButtonGroup _paneOneGroup = new ButtonGroup ( ) ; protected JPanel _paneTwoPanel = new JPanel ( ) ; protected JRadioButton _paneTwoNotShown = new JRadioButton ( "Not<seq2seq4repair_space>Shown" ) ; protected JRadioButton _paneTwoMRU = new JRadioButton ( "Most<seq2seq4repair_space>Recently<seq2seq4repair_space>Used" ) ; protected JRadioButton _paneTwoTree = new JRadioButton ( "Rooted<seq2seq4repair_space>at<seq2seq4repair_space>Pane<seq2seq4repair_space>One<seq2seq4repair_space>Selection" ) ; protected ButtonGroup _paneTwoGroup = new ButtonGroup ( ) ; protected JPanel _paneThreePanel = new JPanel ( ) ; protected JRadioButton _paneThreeNotShown = new JRadioButton ( "Not<seq2seq4repair_space>Shown" ) ; protected JRadioButton _paneThreeMRU = new JRadioButton ( "Most<seq2seq4repair_space>Recently<seq2seq4repair_space>Used" ) ; protected JRadioButton _paneThreeTree = new JRadioButton ( "Rooted<seq2seq4repair_space>at<seq2seq4repair_space>Pane<seq2seq4repair_space>Two<seq2seq4repair_space>Selection" ) ; protected ButtonGroup _paneThreeGroup = new ButtonGroup ( ) ; public NavigatorConfigDialog ( Frame parent ) { } public void initPersPanel ( ) { } public void initPanesPanel ( ) { } public void doNewPers ( ) { } public void doRemovePers ( ) { } public void doDupPers ( ) { } public void doAddRule ( ) { } public void doRemoveRule ( ) { } public void doSelectPers ( ) { } public void doSelectLibRule ( ) { } public void doSelectRule ( ) { } public void doOk ( ) { ProjectBrowser pb = ProjectBrowser . TheInstance ; <START_BUG> NavigatorPane np = pb . getNavPane ( ) ; <END_BUG> np . setPerspectives ( NavPerspective . getRegisteredPerspectives ( ) ) ; np . updateTree ( ) ; setVisible ( false ) ; dispose ( ) ; } public void actionPerformed ( ActionEvent e ) { } public void stateChanged ( ChangeEvent ce ) { } public void valueChanged ( ListSelectionEvent lse ) { } public void mousePressed ( MouseEvent me ) { } public void mouseReleased ( MouseEvent me ) { } public void mouseEntered ( MouseEvent me ) { } public void mouseExited ( MouseEvent me ) { } public void mouseClicked ( MouseEvent me ) { } public static void main ( String [ ] args ) { } }

Fix:
NavigatorPane np = TheInstance . getNavigatorPane ( ) ;