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

Commit 9134b213 authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "[res] Double checked locking in ResourcesManager" into main

parents b30994d8 cda85734
Loading
Loading
Loading
Loading
+9 −6
Original line number Diff line number Diff line
@@ -74,7 +74,7 @@ public class ResourcesManager {
    static final String TAG = "ResourcesManager";
    private static final boolean DEBUG = false;

    private static ResourcesManager sResourcesManager;
    private static volatile ResourcesManager sResourcesManager;

    /**
     * Internal lock object
@@ -359,17 +359,20 @@ public class ResourcesManager {
            sResourcesManager = resourcesManager;
            return oldResourceManager;
        }

    }

    @UnsupportedAppUsage
    public static ResourcesManager getInstance() {
        var rm = sResourcesManager;
        if (rm == null) {
            synchronized (ResourcesManager.class) {
            if (sResourcesManager == null) {
                sResourcesManager = new ResourcesManager();
                rm = sResourcesManager;
                if (rm == null) {
                    sResourcesManager = rm = new ResourcesManager();
                }
            }
            return sResourcesManager;
        }
        return rm;
    }

    /**