Prevents multiple initialization of extension manager.
This commit is contained in:
@@ -8,6 +8,7 @@ using System.Reflection;
|
|||||||
|
|
||||||
namespace Cryville.Crtr.Browsing {
|
namespace Cryville.Crtr.Browsing {
|
||||||
internal static class ExtensionManager {
|
internal static class ExtensionManager {
|
||||||
|
static bool _init;
|
||||||
static readonly Dictionary<string, List<ResourceConverter>> _converters
|
static readonly Dictionary<string, List<ResourceConverter>> _converters
|
||||||
= new Dictionary<string, List<ResourceConverter>>();
|
= new Dictionary<string, List<ResourceConverter>>();
|
||||||
public static ISet<string> GetSupportedFormats() {
|
public static ISet<string> GetSupportedFormats() {
|
||||||
@@ -25,6 +26,8 @@ namespace Cryville.Crtr.Browsing {
|
|||||||
return _localRes;
|
return _localRes;
|
||||||
}
|
}
|
||||||
public static void Init(string rootPath) {
|
public static void Init(string rootPath) {
|
||||||
|
if (_init) return;
|
||||||
|
_init = true;
|
||||||
LoadExtension(typeof(Extensions.Extension));
|
LoadExtension(typeof(Extensions.Extension));
|
||||||
var asms = AppDomain.CurrentDomain.GetAssemblies().Select(a => a.GetName().Name).ToHashSet();
|
var asms = AppDomain.CurrentDomain.GetAssemblies().Select(a => a.GetName().Name).ToHashSet();
|
||||||
var modules = new Queue<ModuleItem>();
|
var modules = new Queue<ModuleItem>();
|
||||||
|
Reference in New Issue
Block a user