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

Commit ced14474 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "[pm/incremental] schedule write when loading progress is complete" into sc-dev

parents ba1e39dc 4bfc84a1
Loading
Loading
Loading
Loading
+14 −4
Original line number Original line Diff line number Diff line
@@ -11634,9 +11634,17 @@ public class PackageManagerService extends IPackageManager.Stub
                healthCheckParams.unhealthyTimeoutMs = INCREMENTAL_STORAGE_UNHEALTHY_TIMEOUT_MS;
                healthCheckParams.unhealthyTimeoutMs = INCREMENTAL_STORAGE_UNHEALTHY_TIMEOUT_MS;
                healthCheckParams.unhealthyMonitoringMs =
                healthCheckParams.unhealthyMonitoringMs =
                        INCREMENTAL_STORAGE_UNHEALTHY_MONITORING_MS;
                        INCREMENTAL_STORAGE_UNHEALTHY_MONITORING_MS;
                // Continue monitoring health and loading progress of active incremental packages
                mIncrementalManager.registerHealthListener(parsedPackage.getPath(),
                mIncrementalManager.registerHealthListener(parsedPackage.getPath(),
                        healthCheckParams,
                        healthCheckParams,
                        new IncrementalHealthListener(parsedPackage.getPackageName()));
                        new IncrementalHealthListener(parsedPackage.getPackageName()));
                final IncrementalStatesCallback incrementalStatesCallback =
                        new IncrementalStatesCallback(parsedPackage.getPackageName(),
                                UserHandle.getUid(UserHandle.ALL, pkgSetting.appId),
                                getInstalledUsers(pkgSetting, UserHandle.USER_ALL));
                pkgSetting.setIncrementalStatesCallback(incrementalStatesCallback);
                mIncrementalManager.registerLoadingProgressCallback(parsedPackage.getPath(),
                        new IncrementalProgressListener(parsedPackage.getPackageName()));
            }
            }
        }
        }
        return scanResult.pkgSetting.pkg;
        return scanResult.pkgSetting.pkg;
@@ -19420,6 +19428,8 @@ public class PackageManagerService extends IPackageManager.Stub
            mIncrementalManager.unregisterLoadingProgressCallbacks(codePath);
            mIncrementalManager.unregisterLoadingProgressCallbacks(codePath);
            // Unregister health listener as it will always be healthy from now
            // Unregister health listener as it will always be healthy from now
            mIncrementalManager.unregisterHealthListener(codePath);
            mIncrementalManager.unregisterHealthListener(codePath);
            // Make sure the information is preserved
            scheduleWriteSettingsLocked();
        }
        }
        @Override
        @Override
@@ -19482,13 +19492,13 @@ public class PackageManagerService extends IPackageManager.Stub
            final PackageSetting ps;
            final PackageSetting ps;
            synchronized (mLock) {
            synchronized (mLock) {
                ps = mSettings.getPackageLPr(mPackageName);
                ps = mSettings.getPackageLPr(mPackageName);
            }
                if (ps == null) {
                if (ps == null) {
                    return;
                    return;
                }
                }
                ps.setLoadingProgress(progress);
                ps.setLoadingProgress(progress);
            }
            }
        }
        }
    }
    /**
    /**
     * Incremental storage health status callback, used to listen for monitoring changes and update
     * Incremental storage health status callback, used to listen for monitoring changes and update