mirror of
https://github.com/mamoe/mirai.git
synced 2025-02-25 03:30:15 +08:00
Fix: MultiFilePluginDataStorageImpl (#393)
* fix: builtins config use ReadOnlyPluginConfig * fix: remove BINTRAY_REPOSITORY * merge: mamoe * use: mavenCentral * feat: handle UTF8-BOM remove: mainLogger
This commit is contained in:
parent
03ebfd2278
commit
1e158a93ce
@ -10,7 +10,6 @@
|
|||||||
package net.mamoe.mirai.console.internal.data
|
package net.mamoe.mirai.console.internal.data
|
||||||
|
|
||||||
import kotlinx.serialization.json.Json
|
import kotlinx.serialization.json.Json
|
||||||
import net.mamoe.mirai.console.MiraiConsole
|
|
||||||
import net.mamoe.mirai.console.data.*
|
import net.mamoe.mirai.console.data.*
|
||||||
import net.mamoe.mirai.console.util.ConsoleExperimentalApi
|
import net.mamoe.mirai.console.util.ConsoleExperimentalApi
|
||||||
import net.mamoe.mirai.utils.MiraiLogger
|
import net.mamoe.mirai.utils.MiraiLogger
|
||||||
@ -33,7 +32,8 @@ internal open class MultiFilePluginDataStorageImpl(
|
|||||||
public override fun load(holder: PluginDataHolder, instance: PluginData) {
|
public override fun load(holder: PluginDataHolder, instance: PluginData) {
|
||||||
instance.onInit(holder, this)
|
instance.onInit(holder, this)
|
||||||
|
|
||||||
val text = getPluginDataFile(holder, instance).readText()
|
// 0xFEFF is BOM, handle UTF8-BOM
|
||||||
|
val text = getPluginDataFile(holder, instance).readText().removePrefix("\uFEFF")
|
||||||
if (text.isNotBlank()) {
|
if (text.isNotBlank()) {
|
||||||
logger.warning { "Deserializing $text" }
|
logger.warning { "Deserializing $text" }
|
||||||
Yaml.decodeFromString(instance.updaterSerializer, text)
|
Yaml.decodeFromString(instance.updaterSerializer, text)
|
||||||
@ -78,8 +78,7 @@ internal open class MultiFilePluginDataStorageImpl(
|
|||||||
yaml.decodeAnyFromString(it) // test yaml
|
yaml.decodeAnyFromString(it) // test yaml
|
||||||
}
|
}
|
||||||
}.recoverCatching {
|
}.recoverCatching {
|
||||||
// Just use mainLogger for convenience.
|
logger.warning(
|
||||||
MiraiConsole.mainLogger.warning(
|
|
||||||
"Could not save ${instance.saveName} in YAML format due to exception in YAML encoder. " +
|
"Could not save ${instance.saveName} in YAML format due to exception in YAML encoder. " +
|
||||||
"Please report this exception and relevant configurations to https://github.com/mamoe/mirai-console/issues/new",
|
"Please report this exception and relevant configurations to https://github.com/mamoe/mirai-console/issues/new",
|
||||||
it
|
it
|
||||||
|
Loading…
Reference in New Issue
Block a user