diff --git a/app/src/main/java/com/geeksville/mesh/service/MeshService.kt b/app/src/main/java/com/geeksville/mesh/service/MeshService.kt index 64d5e3403..2393b6ca3 100644 --- a/app/src/main/java/com/geeksville/mesh/service/MeshService.kt +++ b/app/src/main/java/com/geeksville/mesh/service/MeshService.kt @@ -329,7 +329,7 @@ class MeshService : Service(), Logging { /// BEGINNING OF MODEL - FIXME, move elsewhere /// - val myNodeInfo: MyNodeInfo? get() = radioConfigRepository.myNodeInfo.value + private var myNodeInfo: MyNodeInfo? = null private val configTotal by lazy { ConfigProtos.Config.getDescriptor().fields.size } private val moduleTotal by lazy { ModuleConfigProtos.ModuleConfig.getDescriptor().fields.size } @@ -1517,15 +1517,11 @@ class MeshService : Service(), Logging { errormsg("Did not receive a valid config") } else { debug("Installing new node DB") + myNodeInfo = newMyNodeInfo + radioConfigRepository.installNodeDB(newMyNodeInfo!!, newNodes.map { it.toEntity() }) newNodes.clear() // Just to save RAM ;-) - withTimeoutOrNull(timeMillis = 5000) { - while (myNodeInfo == null) { - delay(100) - } - } ?: errormsg("Timeout: installNodeDB failed!") - haveNodeDB = true // we now have nodes from real hardware sendToRadio(newMeshPacketTo(myNodeNum).buildAdminPacket {