From e4895f437cb3162830f6e9f93f1c4db8f63d7cc8 Mon Sep 17 00:00:00 2001 From: Songchun Fan Date: Wed, 31 Mar 2021 18:38:40 +0000 Subject: [PATCH] [incremental] increase progress comparison precision This ensures that the package is not regarded as fully loaded even if only 1 page is missing in a 4GB app. BUG: 182205656 Test: atest android.cts.statsdatom.statsd.IncrementalAtomTests Change-Id: Id6f41a77c690c01cf0d210e6b09708572a36e088 --- .../core/java/com/android/server/pm/IncrementalStates.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/services/core/java/com/android/server/pm/IncrementalStates.java b/services/core/java/com/android/server/pm/IncrementalStates.java index ecafdfdbd6f11..4fd360bcd453c 100644 --- a/services/core/java/com/android/server/pm/IncrementalStates.java +++ b/services/core/java/com/android/server/pm/IncrementalStates.java @@ -293,11 +293,11 @@ public final class IncrementalStates { Slog.i(TAG, "received progress update: " + progress); } mLoadingState.setProgress(progress); - if (1 - progress < 0.001) { + if (Math.abs(1.0f - progress) < 0.00000001f) { if (DEBUG) { Slog.i(TAG, "package is fully loaded"); } - mLoadingState.setProgress(1); + mLoadingState.setProgress(1.0f); if (mLoadingState.isLoading()) { mLoadingState.adoptNewLoadingStateLocked(false); }