Merge "Construct default MimeMap lazily rather than eagerly." am: 7dbc7ed543 am: 59d2c429bb
am: bfd4e55a48

Change-Id: I8110cd6d464b5d0b79498cb68cf1267402b139d8
diff --git a/core/java/com/android/internal/os/RuntimeInit.java b/core/java/com/android/internal/os/RuntimeInit.java
index 103c79d..fd3cd42 100644
--- a/core/java/com/android/internal/os/RuntimeInit.java
+++ b/core/java/com/android/internal/os/RuntimeInit.java
@@ -203,13 +203,15 @@
     public static void preForkInit() {
         if (DEBUG) Slog.d(TAG, "Entered preForkInit.");
         RuntimeInit.enableDdms();
+        // TODO(b/142019040#comment13): Decide whether to load the default instance eagerly, i.e.
+        // MimeMap.setDefault(DefaultMimeMapFactory.create());
         /*
          * Replace libcore's minimal default mapping between MIME types and file
          * extensions with a mapping that's suitable for Android. Android's mapping
          * contains many more entries that are derived from IANA registrations but
          * with several customizations (extensions, overrides).
          */
-        MimeMap.setDefault(DefaultMimeMapFactory.create());
+        MimeMap.setDefaultSupplier(DefaultMimeMapFactory::create);
     }
 
     @UnsupportedAppUsage