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

Commit 4426cbc5 authored by Keisuke Kuroyanagi's avatar Keisuke Kuroyanagi
Browse files

Fix: contacts/user dicts are too frequently regenerated.

Change-Id: I6b04a58c543fda6df7a2c016b8b8a5300f137d73
parent f614de62
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -511,12 +511,12 @@ abstract public class ExpandableBinaryDictionary extends Dictionary {
     */
    private final void asyncReloadDictionary() {
        if (mIsReloading.compareAndSet(false, true)) {
            mNeedsToReload = false;
            asyncExecuteTaskWithWriteLock(new Runnable() {
                @Override
                public void run() {
                    try {
                        if (!mDictFile.exists() || haveContentsChanged()) {
                        // TODO: Quit checking contents in ExpandableBinaryDictionary.
                        if (!mDictFile.exists() || (mNeedsToReload && haveContentsChanged())) {
                            // If the dictionary file does not exist or contents have been updated,
                            // generate a new one.
                            createNewDictionaryLocked();
@@ -524,6 +524,7 @@ abstract public class ExpandableBinaryDictionary extends Dictionary {
                            // Otherwise, load the existing dictionary.
                            loadBinaryDictionaryLocked();
                        }
                        mNeedsToReload = false;
                        if (mBinaryDictionary != null && !(isValidDictionaryLocked()
                                // TODO: remove the check below
                                && matchesExpectedBinaryDictFormatVersionForThisType(