Crash on activation: NPE in RobertManagerImpl.matchingCleaPrefix
on my Le Smooth device, I get an app crash on activation:
05-09 17:06:18.235 23595 30097 E AndroidRuntime: FATAL EXCEPTION: DefaultDispatcher-worker-2
05-09 17:06:18.235 23595 30097 E AndroidRuntime: Process: fr.gouv.android.stopcovid, PID: 23595
05-09 17:06:18.235 23595 30097 E AndroidRuntime: java.lang.NullPointerException: Parameter specified as non-null is null: method kotlin.text.StringsKt__IndentKt.startsWith, parameter $this$startsWith
05-09 17:06:18.235 23595 30097 E AndroidRuntime: at kotlin.text.StringsKt__IndentKt.startsWith(Unknown Source:2)
05-09 17:06:18.235 23595 30097 E AndroidRuntime: at com.lunabeestudio.robert.RobertManagerImpl.matchingCleaPrefix(RobertManagerImpl.kt:6)
05-09 17:06:18.235 23595 30097 E AndroidRuntime: at com.lunabeestudio.robert.RobertManagerImpl.calculateRiskForNewIteration(RobertManagerImpl.kt:4)
05-09 17:06:18.235 23595 30097 E AndroidRuntime: at com.lunabeestudio.robert.RobertManagerImpl.cleaStatus
full log:
...
05-09 17:06:08.763 23595 23670 E WM-WorkerWrapper: Didn't find WorkSpec for id 4c16af19-f396-41b0-921e-8f2697ef68a9
05-09 17:06:09.081 23595 23614 E WM-WorkerWrapper: Didn't find WorkSpec for id 56a0730e-882b-4293-afdf-1b5f6247a4a6
05-09 17:06:09.133 23595 23614 E WM-WorkerWrapper: Didn't find WorkSpec for id 7a7d274e-456f-4eab-aa4a-5cbcb420c2a3
05-09 17:06:09.291 23595 23670 E WM-WorkerWrapper: Didn't find WorkSpec for id 4c16af19-f396-41b0-921e-8f2697ef68a9
05-09 17:06:09.429 23595 23620 E WM-WorkerWrapper: Work [ id=7f8a1cb8-d80b-4b08-ad5a-c5f9871ec6cd, tags={ com.lunabeestudio.stopcovid.worker.MaintenanceWorker } ] failed because it threw an exception/error
05-09 17:06:09.429 23595 23620 E WM-WorkerWrapper: java.util.concurrent.ExecutionException: java.lang.NullPointerException
05-09 17:06:09.429 23595 23620 E WM-WorkerWrapper: at androidx.work.impl.utils.futures.AbstractFuture.getDoneValue(AbstractFuture.java:4)
05-09 17:06:09.429 23595 23620 E WM-WorkerWrapper: at androidx.work.impl.utils.futures.AbstractFuture.get(AbstractFuture.java:48)
05-09 17:06:09.429 23595 23620 E WM-WorkerWrapper: at androidx.work.impl.WorkerWrapper$2.run(WorkerWrapper.java:1)
05-09 17:06:09.429 23595 23620 E WM-WorkerWrapper: at androidx.work.impl.utils.SerialExecutor$Task.run(SerialExecutor.java:1)
05-09 17:06:09.429 23595 23620 E WM-WorkerWrapper: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
05-09 17:06:09.429 23595 23620 E WM-WorkerWrapper: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
05-09 17:06:09.429 23595 23620 E WM-WorkerWrapper: at java.lang.Thread.run(Thread.java:764)
05-09 17:06:09.429 23595 23620 E WM-WorkerWrapper: Caused by: java.lang.NullPointerException
05-09 17:06:09.429 23595 23620 E WM-WorkerWrapper: at com.lunabeestudio.stopcovid.manager.AppMaintenanceManager.updateCheckForMaintenanceUpgrade$stopcovid_release(AppMaintenanceManager.kt:1)
05-09 17:06:09.429 23595 23620 E WM-WorkerWrapper: at com.lunabeestudio.stopcovid.manager.AppMaintenanceManager.checkForMaintenanceUpgrade(AppMaintenanceManager.kt:2)
05-09 17:06:09.429 23595 23620 E WM-WorkerWrapper: at com.lunabeestudio.stopcovid.worker.MaintenanceWorker.doWork(MaintenanceWorker.kt:4)
05-09 17:06:09.429 23595 23620 E WM-WorkerWrapper: at androidx.work.CoroutineWorker$startWork$1.invokeSuspend(CoroutineWorker.kt:4)
05-09 17:06:09.429 23595 23620 E WM-WorkerWrapper: at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:3)
05-09 17:06:09.429 23595 23620 E WM-WorkerWrapper: at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:18)
05-09 17:06:09.429 23595 23620 E WM-WorkerWrapper: at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:1)
05-09 17:06:09.429 23595 23620 E WM-WorkerWrapper: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:11)
05-09 17:06:09.471 23595 23620 I WM-WorkerWrapper: Worker result FAILURE for Work [ id=7f8a1cb8-d80b-4b08-ad5a-c5f9871ec6cd, tags={ com.lunabeestudio.stopcovid.worker.MaintenanceWorker } ]
05-09 17:06:18.172 23595 30113 E RequestHelper$tryCatchRequestData: kotlinx.coroutines.JobCancellationException: Parent job is Cancelling; job=ScopeCoroutine{Cancelling}@ed6d578
05-09 17:06:18.172 23595 30113 E RequestHelper$tryCatchRequestData: Caused by: java.lang.NullPointerException: Parameter specified as non-null is null: method kotlin.text.StringsKt__IndentKt.startsWith, parameter $this$startsWith
05-09 17:06:18.172 23595 30113 E RequestHelper$tryCatchRequestData: at kotlin.text.StringsKt__IndentKt.startsWith(Unknown Source:2)
05-09 17:06:18.172 23595 30113 E RequestHelper$tryCatchRequestData: at com.lunabeestudio.robert.RobertManagerImpl.matchingCleaPrefix(RobertManagerImpl.kt:6)
05-09 17:06:18.172 23595 30113 E RequestHelper$tryCatchRequestData: at com.lunabeestudio.robert.RobertManagerImpl.calculateRiskForNewIteration(RobertManagerImpl.kt:4)
05-09 17:06:18.172 23595 30113 E RequestHelper$tryCatchRequestData: at com.lunabeestudio.robert.RobertManagerImpl.cleaStatus(RobertManagerImpl.kt:14)
05-09 17:06:18.172 23595 30113 E RequestHelper$tryCatchRequestData: at com.lunabeestudio.robert.RobertManagerImpl$cleaStatus$1.invokeSuspend(Unknown Source:12)
05-09 17:06:18.172 23595 30113 E RequestHelper$tryCatchRequestData: at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:3)
05-09 17:06:18.172 23595 30113 E RequestHelper$tryCatchRequestData: at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:18)
05-09 17:06:18.172 23595 30113 E RequestHelper$tryCatchRequestData: at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:1)
05-09 17:06:18.172 23595 30113 E RequestHelper$tryCatchRequestData: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:11)
05-09 17:06:18.235 23595 30097 E AndroidRuntime: FATAL EXCEPTION: DefaultDispatcher-worker-2
05-09 17:06:18.235 23595 30097 E AndroidRuntime: Process: fr.gouv.android.stopcovid, PID: 23595
05-09 17:06:18.235 23595 30097 E AndroidRuntime: java.lang.NullPointerException: Parameter specified as non-null is null: method kotlin.text.StringsKt__IndentKt.startsWith, parameter $this$startsWith
05-09 17:06:18.235 23595 30097 E AndroidRuntime: at kotlin.text.StringsKt__IndentKt.startsWith(Unknown Source:2)
05-09 17:06:18.235 23595 30097 E AndroidRuntime: at com.lunabeestudio.robert.RobertManagerImpl.matchingCleaPrefix(RobertManagerImpl.kt:6)
05-09 17:06:18.235 23595 30097 E AndroidRuntime: at com.lunabeestudio.robert.RobertManagerImpl.calculateRiskForNewIteration(RobertManagerImpl.kt:4)
05-09 17:06:18.235 23595 30097 E AndroidRuntime: at com.lunabeestudio.robert.RobertManagerImpl.cleaStatus(RobertManagerImpl.kt:14)
05-09 17:06:18.235 23595 30097 E AndroidRuntime: at com.lunabeestudio.robert.RobertManagerImpl$cleaStatus$1.invokeSuspend(Unknown Source:12)
05-09 17:06:18.235 23595 30097 E AndroidRuntime: at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:3)
05-09 17:06:18.235 23595 30097 E AndroidRuntime: at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:18)
05-09 17:06:18.235 23595 30097 E AndroidRuntime: at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:1)
05-09 17:06:18.235 23595 30097 E AndroidRuntime: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:11)
Edited by Ofa