From 2247543f653e8e2ca9d6e07131c2054e6e236ac5 Mon Sep 17 00:00:00 2001 From: Him188 Date: Sun, 5 Sep 2021 13:57:58 +0800 Subject: [PATCH] Fix serverTime diff: ignore serverTime when it is zero --- .../kotlin/network/protocol/packet/login/StatSvc.kt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/mirai-core/src/commonMain/kotlin/network/protocol/packet/login/StatSvc.kt b/mirai-core/src/commonMain/kotlin/network/protocol/packet/login/StatSvc.kt index 4b0b67354..0c9011846 100644 --- a/mirai-core/src/commonMain/kotlin/network/protocol/packet/login/StatSvc.kt +++ b/mirai-core/src/commonMain/kotlin/network/protocol/packet/login/StatSvc.kt @@ -158,9 +158,10 @@ internal class StatSvc { bot.configuration.statHeartbeatPeriodMillis = it.times(1000).toLong() } - val diffMillis = packet.origin.serverTime - currentTimeMillis() + val serverTime = packet.origin.serverTime + val diffMillis = if (serverTime == 0L) 0 else serverTime - currentTimeMillis() bot.components[ClockHolder].server = Clock.SystemDefault.adjusted(diffMillis) - bot.network.logger.info { "Server time updated, diff: ${diffMillis}ms=${diffMillis.millisToHumanReadableString()}" } + bot.network.logger.info { "Server time updated, serverTime: $serverTime, diff: ${diffMillis}ms=${diffMillis.millisToHumanReadableString()}" } } fun online(