commit fcd6bf2fd515d567b88b806501930a0a682d5330
parent 3db184668e0ffeb88f06095abe003b1e941699a0
Author: Olivia Hall <ohall@mozilla.com>
Date: Mon, 27 Oct 2025 16:51:15 +0000
Bug 1992765 - Skip onTrimMemory Breadcrumb for Isolated Processes r=android-reviewers,calu
Where the crash reporter is not established for isolated processes, the
crash breadcrumb is causing a crash in isolated processes.
Differential Revision: https://phabricator.services.mozilla.com/D267651
Diffstat:
1 file changed, 15 insertions(+), 10 deletions(-)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/FenixApplication.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/FenixApplication.kt
@@ -565,6 +565,7 @@ open class FenixApplication : LocaleAwareApplication(), Provider {
}
}
+ @SuppressLint("NewApi")
override fun onTrimMemory(level: Int) {
super.onTrimMemory(level)
@@ -573,17 +574,21 @@ open class FenixApplication : LocaleAwareApplication(), Provider {
logger.info("onTrimMemory(), level=$level, main=${isMainProcess()}")
- components.analytics.crashReporter.recordCrashBreadcrumb(
- Breadcrumb(
- category = "Memory",
- message = "onTrimMemory()",
- data = mapOf(
- "level" to level.toString(),
- "main" to isMainProcess().toString(),
+ // See Bug 1969818: Crash reporting requires updates to be compatible with
+ // isolated content process.
+ if (!android.os.Process.isIsolated()) {
+ components.analytics.crashReporter.recordCrashBreadcrumb(
+ Breadcrumb(
+ category = "Memory",
+ message = "onTrimMemory()",
+ data = mapOf(
+ "level" to level.toString(),
+ "main" to isMainProcess().toString(),
+ ),
+ level = Breadcrumb.Level.INFO,
),
- level = Breadcrumb.Level.INFO,
- ),
- )
+ )
+ }
runOnlyInMainProcess {
components.core.icons.onTrimMemory(level)