diff options
Diffstat (limited to 'src/share/classes/sun/awt/shell/ShellFolder.java')
-rw-r--r-- | src/share/classes/sun/awt/shell/ShellFolder.java | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/share/classes/sun/awt/shell/ShellFolder.java b/src/share/classes/sun/awt/shell/ShellFolder.java index 965dd6f04..d38fd98e0 100644 --- a/src/share/classes/sun/awt/shell/ShellFolder.java +++ b/src/share/classes/sun/awt/shell/ShellFolder.java @@ -202,8 +202,16 @@ public abstract class ShellFolder extends File { private static ShellFolderManager shellFolderManager; static { - Class managerClass = (Class)Toolkit.getDefaultToolkit(). - getDesktopProperty("Shell.shellFolderManager"); + String managerClassName = (String)Toolkit.getDefaultToolkit(). + getDesktopProperty("Shell.shellFolderManager"); + Class managerClass = null; + try { + managerClass = Class.forName(managerClassName); + // swallow the exceptions below and use default shell folder + } catch(ClassNotFoundException e) { + } catch(NullPointerException e) { + } + if (managerClass == null) { managerClass = ShellFolderManager.class; } |