Should not crash app when StateSync fails to bind.

This commit is contained in:
Koen J 2024-12-06 17:49:18 +01:00
parent 4066ce73a8
commit 7c9e9d5f52

View File

@ -112,18 +112,23 @@ class StateSync {
Logger.i(TAG, "Sync key pair initialized (public key = ${publicKey})") Logger.i(TAG, "Sync key pair initialized (public key = ${publicKey})")
_thread = Thread { _thread = Thread {
val serverSocket = ServerSocket(PORT) try {
_serverSocket = serverSocket val serverSocket = ServerSocket(PORT)
_serverSocket = serverSocket
Log.i(TAG, "Running on port ${PORT} (TCP)") Log.i(TAG, "Running on port ${PORT} (TCP)")
while (_started) { while (_started) {
val socket = serverSocket.accept() val socket = serverSocket.accept()
val session = createSocketSession(socket, true) { session, socketSession -> val session = createSocketSession(socket, true) { session, socketSession ->
}
session.startAsResponder()
} }
} catch (e: Throwable) {
session.startAsResponder() Logger.e(TAG, "Failed to bind server socket to port ${PORT}", e)
UIDialogs.toast("Failed to start sync, port in use")
} }
}.apply { start() } }.apply { start() }