This commit is contained in:
Hugh Nimmo-Smith 2026-05-18 11:44:47 +01:00
parent 668edbc679
commit 458405b29f

View file

@ -434,7 +434,8 @@ class RustMatrixAuthenticationService(
qrCodeData: QrCodeData,
): Client {
Timber.d("Creating client for QR Code login with simplified sliding sync")
// The 2025 versions of MSC4108 should always give us the baseUrl
// The 2025 version of MSC4108 will always give us the baseUrl and guarantees it to be a well-formed URL
// The 2024 version always has null baseUrl and uses the serverName instead, which can be null or malformed
val baseUrlOrServerName = qrCodeData.baseUrl() ?: qrCodeData.serverName()
if (baseUrlOrServerName == null) {
@ -444,6 +445,10 @@ class RustMatrixAuthenticationService(
throw HumanQrLoginException.OtherDeviceNotSignedIn()
}
if (baseUrlOrServerName.isBlank()) {
error("The QR code contains an empty base URL or server name, which is invalid")
}
return rustMatrixClientFactory
.getBaseClientBuilder(
sessionPaths = sessionPaths,