From 47605dafd8b902a616756e6faf5607d37a58f6f7 Mon Sep 17 00:00:00 2001 From: Oluwadara Abijo Date: Thu, 5 Mar 2026 13:29:27 +0100 Subject: [PATCH] fix(ADFA-3083): Use getOrDefault to ensure null safety --- .../androidide/activities/editor/BaseEditorActivity.kt | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/itsaky/androidide/activities/editor/BaseEditorActivity.kt b/app/src/main/java/com/itsaky/androidide/activities/editor/BaseEditorActivity.kt index 77797102b6..a8252cd809 100644 --- a/app/src/main/java/com/itsaky/androidide/activities/editor/BaseEditorActivity.kt +++ b/app/src/main/java/com/itsaky/androidide/activities/editor/BaseEditorActivity.kt @@ -233,10 +233,11 @@ abstract class BaseEditorActivity : private val memoryUsageListener = MemoryUsageWatcher.MemoryUsageListener { memoryUsage -> + var dataChanged = false memoryUsage.forEachValue { proc -> _binding?.memUsageView?.chart?.apply { val dataset = - (data.getDataSetByIndex(pidToDatasetIdxMap[proc.pid]) as LineDataSet?) + (data.getDataSetByIndex(pidToDatasetIdxMap.getOrDefault(proc.pid, -1)) as LineDataSet?) ?: run { log.error( "No dataset found for process: {}: {}", @@ -253,6 +254,12 @@ abstract class BaseEditorActivity : dataset.label = "%s - %.2fMB".format(proc.pname, dataset.entries.last().y) dataset.notifyDataSetChanged() + dataChanged = true + } + } + + if (dataChanged) { + _binding?.memUsageView?.chart?.apply { data.notifyDataChanged() notifyDataSetChanged() invalidate()