From 706c7d120eb75b8846bcf60bea86c3d77a625853 Mon Sep 17 00:00:00 2001 From: andrekir Date: Mon, 19 Sep 2022 18:08:54 -0300 Subject: [PATCH 1/2] fix findDataPacket null object reference --- .../main/java/com/geeksville/mesh/database/dao/PacketDao.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/geeksville/mesh/database/dao/PacketDao.kt b/app/src/main/java/com/geeksville/mesh/database/dao/PacketDao.kt index a4bb580ca..82f4fbab3 100644 --- a/app/src/main/java/com/geeksville/mesh/database/dao/PacketDao.kt +++ b/app/src/main/java/com/geeksville/mesh/database/dao/PacketDao.kt @@ -23,7 +23,7 @@ interface PacketDao { fun getMessagesFrom(contact: String): Flow> @Query("Select * from packet where data = :data") - fun findDataPacket(data: DataPacket): Packet + fun findDataPacket(data: DataPacket): Packet? @Query("Delete from packet where port_num = 1") fun deleteAllMessages() @@ -45,6 +45,6 @@ interface PacketDao { @Transaction fun updateMessageStatus(data: DataPacket, m: MessageStatus) { val new = data.copy(status = m) - update(findDataPacket(data).copy(data = new)) + findDataPacket(data)?.let { update(it.copy(data = new)) } } } From 86c9ca55dd84ed5ac7736b9b084bd269fc374d0a Mon Sep 17 00:00:00 2001 From: andrekir Date: Mon, 19 Sep 2022 18:11:07 -0300 Subject: [PATCH 2/2] fix activity call outside MainActivity --- app/src/main/java/com/geeksville/mesh/model/BTScanModel.kt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/geeksville/mesh/model/BTScanModel.kt b/app/src/main/java/com/geeksville/mesh/model/BTScanModel.kt index f09f23d56..d027afe91 100644 --- a/app/src/main/java/com/geeksville/mesh/model/BTScanModel.kt +++ b/app/src/main/java/com/geeksville/mesh/model/BTScanModel.kt @@ -236,9 +236,10 @@ class BTScanModel @Inject constructor( devices.value = (testnodes.map { it.fullAddress to it }).toMap().toMutableMap() // If nothing was selected, by default select the first thing we see - if (selectedAddress == null) + val activity = GeeksvilleApplication.currentActivity + if (selectedAddress == null && activity is MainActivity) changeScanSelection( - GeeksvilleApplication.currentActivity as MainActivity, + activity, testnodes.first().fullAddress )