Buggy code:
public class GeneralOptionPane extends AbstractOptionPane { public GeneralOptionPane ( ) { } protected void _init ( ) { String [ ] lineSeps = new String [ ] { jEdit . getProperty ( "lineSep.unix" ) , jEdit . getProperty ( "lineSep.windows" ) , jEdit . getProperty ( "lineSep.mac" ) } ; lineSeparator = new JComboBox ( lineSeps ) ; String lineSep = jEdit . getProperty ( "buffer.lineSeparator" , System . getProperty ( "line.separator" ) ) ; if ( "\n" . equals ( lineSep ) ) lineSeparator . setSelectedIndex ( 0 ) ; else if ( "\r\n" . equals ( lineSep ) ) lineSeparator . setSelectedIndex ( 1 ) ; else if ( "\r" . equals ( lineSep ) ) lineSeparator . setSelectedIndex ( 2 ) ; addComponent ( jEdit . getProperty ( "options.general.lineSeparator" ) , lineSeparator ) ; <START_BUG> String [ ] encodings = MiscUtilities . getEncodings ( ) ; <END_BUG> Arrays . sort ( encodings , new MiscUtilities . StringICaseCompare ( ) ) ; encoding = new JComboBox ( encodings ) ; encoding . setEditable ( true ) ; encoding . setSelectedItem ( jEdit . getProperty ( "buffer.encoding" , System . getProperty ( "file.encoding" ) ) ) ; addComponent ( jEdit . getProperty ( "options.general.encoding" ) , encoding ) ; encodingAutodetect = new JCheckBox ( jEdit . getProperty ( "options.general.encodingAutodetect" ) ) ; encodingAutodetect . setSelected ( jEdit . getBooleanProperty ( "buffer.encodingAutodetect" ) ) ; addComponent ( encodingAutodetect ) ; String [ ] modCheckOptions = new String [ ] { jEdit . getProperty ( "options.general.checkModStatus.nothing" ) , jEdit . getProperty ( "options.general.checkModStatus.prompt" ) , jEdit . getProperty ( "options.general.checkModStatus.reload" ) } ; checkModStatus = new JComboBox ( modCheckOptions ) ; if ( jEdit . getBooleanProperty ( "autoReload" ) ) checkModStatus . setSelectedIndex ( 2 ) ; else if ( jEdit . getBooleanProperty ( "autoReloadDialog" ) ) checkModStatus . setSelectedIndex ( 1 ) ; else checkModStatus . setSelectedIndex ( 0 ) ; addComponent ( jEdit . getProperty ( "options.general.checkModStatus" ) , checkModStatus ) ; recentFiles = new JTextField ( jEdit . getProperty ( "options.general.recentFiles" ) ) ; recentFiles . setText ( jEdit . getProperty ( "recentFiles" ) ) ; addComponent ( jEdit . getProperty ( "options.general.recentFiles" ) , recentFiles ) ; sortRecent = new JCheckBox ( jEdit . getProperty ( "options.general.sortRecent" ) ) ; sortRecent . setSelected ( jEdit . getBooleanProperty ( "sortRecent" ) ) ; addComponent ( sortRecent ) ; saveCaret = new JCheckBox ( jEdit . getProperty ( "options.general.saveCaret" ) ) ; saveCaret . setSelected ( jEdit . getBooleanProperty ( "saveCaret" ) ) ; addComponent ( saveCaret ) ; persistentMarkers = new JCheckBox ( jEdit . getProperty ( "options.general.persistentMarkers" ) ) ; persistentMarkers . setSelected ( jEdit . getBooleanProperty ( "persistentMarkers" ) ) ; addComponent ( persistentMarkers ) ; restore = new JCheckBox ( jEdit . getProperty ( "options.general.restore" ) ) ; restore . setSelected ( jEdit . getBooleanProperty ( "restore" ) ) ; restore . addActionListener ( new ActionListener ( ) { public void actionPerformed ( ActionEvent evt ) { restoreCLI . setEnabled ( restore . isSelected ( ) ) ; } } ) ; addComponent ( restore ) ; restoreCLI = new JCheckBox ( jEdit . getProperty ( "options.general.restore.cli" ) ) ; restoreCLI . setSelected ( jEdit . getBooleanProperty ( "restore.cli" ) ) ; restoreCLI . setEnabled ( restore . isSelected ( ) ) ; addComponent ( restoreCLI ) ; sortBuffers = new JCheckBox ( jEdit . getProperty ( "options.general.sortBuffers" ) ) ; sortBuffers . setSelected ( jEdit . getBooleanProperty ( "sortBuffers" ) ) ; sortBuffers . addActionListener ( new ActionListener ( ) { public void actionPerformed ( ActionEvent evt ) { sortByName . setEnabled ( sortBuffers . isSelected ( ) ) ; } } ) ; addComponent ( sortBuffers ) ; sortByName = new JCheckBox ( jEdit . getProperty ( "options.general.sortByName" ) ) ; sortByName . setSelected ( jEdit . getBooleanProperty ( "sortByName" ) ) ; sortByName . setEnabled ( sortBuffers . isSelected ( ) ) ; addComponent ( sortByName ) ; newKeyboardHandling = new JCheckBox ( jEdit . getProperty ( "options.general.newkeyhandling" ) ) ; newKeyboardHandling . setSelected ( jEdit . getBooleanProperty ( "newkeyhandling" ) ) ; addComponent ( newKeyboardHandling ) ; } protected void _save ( ) { } private JComboBox lineSeparator ; private JComboBox encoding ; private JCheckBox encodingAutodetect ; private JComboBox checkModStatus ; private JTextField recentFiles ; private JCheckBox saveCaret ; private JCheckBox sortRecent ; private JCheckBox persistentMarkers ; private JCheckBox restore ; private JCheckBox restoreCLI ; private JCheckBox sortBuffers ; private JCheckBox sortByName ; private JCheckBox newKeyboardHandling ; }

Fix:
String [ ] encodings = MiscUtilities . getEncodings ( true ) ;