< prev index next >

src/java.base/share/classes/java/nio/file/FileSystems.java

Print this page
8213406: (fs) More than one instance of built-in FileSystem observed in heap
Reviewed-by: alanb, cushon, weijun

@@ -86,20 +86,10 @@
  */
 
 public final class FileSystems {
     private FileSystems() { }
 
-    // Built-in file system provider
-    private static final FileSystemProvider builtinFileSystemProvider =
-        sun.nio.fs.DefaultFileSystemProvider.create();
-
-    // built-in file system
-    private static class BuiltinFileSystemHolder {
-        static final FileSystem builtinFileSystem =
-            builtinFileSystemProvider.getFileSystem(URI.create("file:///"));
-    }
-
     // lazy initialization of default file system
     private static class DefaultFileSystemHolder {
         static final FileSystem defaultFileSystem = defaultFileSystem();
 
         // returns default file system

@@ -116,11 +106,12 @@
             return provider.getFileSystem(URI.create("file:///"));
         }
 
         // returns default provider
         private static FileSystemProvider getDefaultProvider() {
-            FileSystemProvider provider = builtinFileSystemProvider;
+            FileSystemProvider provider =
+                sun.nio.fs.DefaultFileSystemProvider.FILE_SYSTEM_PROVIDER;
 
             // if the property java.nio.file.spi.DefaultFileSystemProvider is
             // set then its value is the name of the default provider (or a list)
             String prop = "java.nio.file.spi.DefaultFileSystemProvider";
             String propValue = System.getProperty(prop);

@@ -187,11 +178,11 @@
      */
     public static FileSystem getDefault() {
         if (VM.isModuleSystemInited()) {
             return DefaultFileSystemHolder.defaultFileSystem;
         } else {
-            return BuiltinFileSystemHolder.builtinFileSystem;
+            return sun.nio.fs.DefaultFileSystemProvider.theFileSystem();
         }
     }
 
     /**
      * Returns a reference to an existing {@code FileSystem}.
< prev index next >