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

Commit 35809cf1 authored by Daniel Norman's avatar Daniel Norman Committed by Automerger Merge Worker
Browse files

Merge "Revert "[SettingsProvider] skip caching in system server"" into udc-dev am: da53d584

parents deb59173 da53d584
Loading
Loading
Loading
Loading
+44 −56
Original line number Diff line number Diff line
@@ -3036,7 +3036,9 @@ public final class Settings {
        public void destroy() {
            try {
                if (!mArray.isClosed()) {
                // If this process is the system server process, mArray is the same object as
                // the memory int array kept inside SettingsProvider, so skipping the close()
                if (!Settings.isInSystemServer() && !mArray.isClosed()) {
                    mArray.close();
                }
            } catch (IOException e) {
@@ -3216,9 +3218,8 @@ public final class Settings {
        @UnsupportedAppUsage
        public String getStringForUser(ContentResolver cr, String name, final int userHandle) {
            final boolean isSelf = (userHandle == UserHandle.myUserId());
            final boolean useCache = isSelf && !isInSystemServer();
            boolean needsGenerationTracker = false;
            if (useCache) {
            if (isSelf) {
                synchronized (NameValueCache.this) {
                    final GenerationTracker generationTracker = mGenerationTrackers.get(name);
                    if (generationTracker != null) {
@@ -3250,10 +3251,8 @@ public final class Settings {
                needsGenerationTracker = true;
            } else {
                if (DEBUG || LOCAL_LOGV) {
                    Log.v(TAG, "get setting " + name + " for user " + userHandle + " by user "
                            + UserHandle.myUserId()
                            + (isInSystemServer() ? " in system_server" : "")
                            + " so skipping cache");
                    Log.v(TAG, "get setting for user " + userHandle
                            + " by user " + UserHandle.myUserId() + " so skipping cache");
                }
            }
@@ -3366,13 +3365,10 @@ public final class Settings {
                                }
                            }
                        } else {
                            if (DEBUG || LOCAL_LOGV) {
                                Log.i(TAG, "call-query of user " + userHandle
                            if (LOCAL_LOGV) Log.i(TAG, "call-query of user " + userHandle
                                    + " by " + UserHandle.myUserId()
                                        + (isInSystemServer() ? " in system_server" : "")
                                    + " so not updating cache");
                        }
                        }
                        return value;
                    }
                    // If the response Bundle is null, we fall through
@@ -3444,14 +3440,12 @@ public final class Settings {
        public ArrayMap<String, String> getStringsForPrefix(ContentResolver cr, String prefix,
                List<String> names) {
            final boolean useCache = !isInSystemServer();
            String namespace = prefix.substring(0, prefix.length() - 1);
            Config.enforceReadPermission(namespace);
            ArrayMap<String, String> keyValues = new ArrayMap<>();
            int currentGeneration = -1;
            boolean needsGenerationTracker = false;
            if (useCache) {
            synchronized (NameValueCache.this) {
                final GenerationTracker generationTracker = mGenerationTrackers.get(prefix);
                if (generationTracker != null) {
@@ -3497,12 +3491,6 @@ public final class Settings {
                    needsGenerationTracker = true;
                }
            }
            } else {
                if (DEBUG || LOCAL_LOGV) {
                    Log.v(TAG, "getting settings for prefix " + prefix + " in system_server"
                            + " so skipping cache");
                }
            }
            if (mCallListCommand == null) {
                // No list command specified, return empty map