} catch (OutOfMemoryError e) {
r.handleOutOfMemoryError();
} catch (FileNotFoundException e) {
r.handleFileNotFound(path);
} catch (Throwable t) {
r.handleOpenError(t, path);
} finally {
parser.removeNavigationFileParserListener(listener);
invokeLater(new Runnable() {
public void run() {
stopWaitCursor(r.getFrame().getRootPane());