From 5f03d0dc696ec5b7731376062171972b12ac6405 Mon Sep 17 00:00:00 2001 From: Seigo Nonaka Date: Wed, 3 Feb 2021 16:44:23 -0800 Subject: [PATCH] Reuse computed font mapping for preinstalled system font config. This CL reduces private dirty page from 54259712 to 50823168. Bug: 178472803 Test: Forrest run Change-Id: Ie7d5f6fe5b6a37efa90113bf9ee9a44c38deafe2 --- .../android/server/graphics/fonts/FontManagerService.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/graphics/fonts/FontManagerService.java b/services/core/java/com/android/server/graphics/fonts/FontManagerService.java index 90368129e78eb..2eabf4054d841 100644 --- a/services/core/java/com/android/server/graphics/fonts/FontManagerService.java +++ b/services/core/java/com/android/server/graphics/fonts/FontManagerService.java @@ -219,7 +219,13 @@ public final class FontManagerService extends IFontManager.Stub { private void initialize() { synchronized (mUpdatableFontDirLock) { if (mUpdatableFontDir == null) { - updateSerializedFontMap(); + synchronized (mSerializedFontMapLock) { + try { + mSerializedFontMap = Typeface.serializeFontMap(Typeface.getSystemFontMap()); + } catch (IOException | ErrnoException e) { + mSerializedFontMap = null; + } + } return; } if (mFontCrashDetector.hasCrashed()) {