Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c917f74d authored by Andreas Gampe's avatar Andreas Gampe
Browse files

Frameworks/base: Use better Class.forName in ZygoteInit

Use the three-argument version of Class.forName. This saves an
expensive stack lookup for the caller's class-loader on each
invocation.

Bug: 19498458
Change-Id: I859affde31e580fd2de3f70ee0a9295936c2d9f4
parent b0557ace
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -267,7 +267,12 @@ public class ZygoteInit {
                    if (false) {
                        Log.v(TAG, "Preloading " + line + "...");
                    }
                    Class.forName(line);
                    // Load and explicitly initialize the given class. Use the tree-argument version
                    // of forName to avoid repeated stack lookups (to derive the caller's
                    // class-loader). Use true to force initialization, and null for the boot
                    // classpath class-loader (could as well cache the class-loader of this class in
                    // a variable).
                    Class.forName(line, true, null);
                    count++;
                } catch (ClassNotFoundException e) {
                    Log.w(TAG, "Class not found for preloading: " + line);