From 920886434cc1b5548aea4f109a76bd6da80cdc83 Mon Sep 17 00:00:00 2001 From: Him188 Date: Fri, 14 Jan 2022 17:54:41 +0000 Subject: [PATCH] Fix `SafeStateObserver`: add missing override `beforeStateChanged` --- .../handler/state/SafeStateObserver.kt | 23 +++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/mirai-core/src/commonMain/kotlin/network/handler/state/SafeStateObserver.kt b/mirai-core/src/commonMain/kotlin/network/handler/state/SafeStateObserver.kt index 655e0165d..99e883982 100644 --- a/mirai-core/src/commonMain/kotlin/network/handler/state/SafeStateObserver.kt +++ b/mirai-core/src/commonMain/kotlin/network/handler/state/SafeStateObserver.kt @@ -1,10 +1,10 @@ /* - * Copyright 2019-2021 Mamoe Technologies and contributors. + * Copyright 2019-2022 Mamoe Technologies and contributors. * - * 此源代码的使用受 GNU AFFERO GENERAL PUBLIC LICENSE version 3 许可证的约束, 可以在以下链接找到该许可证. - * Use of this source code is governed by the GNU AGPLv3 license that can be found through the following link. + * 此源代码的使用受 GNU AFFERO GENERAL PUBLIC LICENSE version 3 许可证的约束, 可以在以下链接找到该许可证. + * Use of this source code is governed by the GNU AGPLv3 license that can be found through the following link. * - * https://github.com/mamoe/mirai/blob/master/LICENSE + * https://github.com/mamoe/mirai/blob/dev/LICENSE */ package net.mamoe.mirai.internal.network.handler.state @@ -31,6 +31,21 @@ internal class SafeStateObserver( return "SafeStateObserver(delegate=$delegate)" } + override fun beforeStateChanged( + networkHandler: NetworkHandlerSupport, + previous: NetworkHandlerSupport.BaseStateImpl, + new: NetworkHandlerSupport.BaseStateImpl + ) { + try { + delegate.beforeStateChanged(networkHandler, previous, new) + } catch (e: Throwable) { + logger.error( + { "Internal error: exception in StateObserver $delegate" }, + ExceptionInStateObserverException(e) + ) + } + } + override fun stateChanged( networkHandler: NetworkHandlerSupport, previous: NetworkHandlerSupport.BaseStateImpl,