From 34f1eab423dcf6ab29d01b84bf3b99621a75e2e8 Mon Sep 17 00:00:00 2001 From: Juan Yescas Date: Tue, 9 May 2023 12:08:02 -0700 Subject: [PATCH] Return TotalMemory size when ddr size is not present When the ddr size is not present or it is invalid, getAdvertisedMem() must return getTotalMemory() size. Bug: 278977257 Test: atest frameworks/base/core/tests/coretests/src/android/os/ProcessTest.java Merged-In: I2323d79d869a4c58eb29d0cae351144f357b867d Change-Id: I2323d79d869a4c58eb29d0cae351144f357b867d --- core/java/android/os/Process.java | 2 +- core/tests/coretests/src/android/os/ProcessTest.java | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/core/java/android/os/Process.java b/core/java/android/os/Process.java index bf3d52d358ede..04525e8b8ff76 100644 --- a/core/java/android/os/Process.java +++ b/core/java/android/os/Process.java @@ -1359,7 +1359,7 @@ public class Process { String formatSize = MemoryProperties.memory_ddr_size().orElse("0KB"); long memSize = FileUtils.parseSize(formatSize); - if (memSize == Long.MIN_VALUE) { + if (memSize <= 0) { return FileUtils.roundStorageSize(getTotalMemory()); } diff --git a/core/tests/coretests/src/android/os/ProcessTest.java b/core/tests/coretests/src/android/os/ProcessTest.java index 52846dfbb14b8..b2ffdc035e8b0 100644 --- a/core/tests/coretests/src/android/os/ProcessTest.java +++ b/core/tests/coretests/src/android/os/ProcessTest.java @@ -73,6 +73,7 @@ public class ProcessTest extends TestCase { } public void testGetAdvertisedMem() { + assertTrue(Process.getAdvertisedMem() > 0); assertTrue(Process.getTotalMemory() <= Process.getAdvertisedMem()); } }