diff --git a/idofront-config/src/main/kotlin/com/mineinabyss/idofront/config/Config.kt b/idofront-config/src/main/kotlin/com/mineinabyss/idofront/config/Config.kt index 0b79a26..de52d3f 100644 --- a/idofront-config/src/main/kotlin/com/mineinabyss/idofront/config/Config.kt +++ b/idofront-config/src/main/kotlin/com/mineinabyss/idofront/config/Config.kt @@ -38,11 +38,11 @@ class Config( fun getOrLoad(): T { loaded?.let { return it } - return load().also(onFirstLoad).also(onLoad) + return runCatching(::load).onFailure { it.printStackTrace() }.getOrDefault(default).also(onFirstLoad).also(onLoad) } fun reload(): T { - return load().also(onReload).also(onLoad) + return runCatching(::load).onFailure { it.printStackTrace() }.getOrDefault(loaded ?: default).also(onReload).also(onLoad) } private fun load(): T {