Skip to content

Commit

Permalink
Fixed double plugin registration (if failed on property scanning)
Browse files Browse the repository at this point in the history
  • Loading branch information
KimihikoAkayasaki committed Feb 20, 2023
1 parent ed86237 commit c097cf0
Showing 1 changed file with 17 additions and 17 deletions.
34 changes: 17 additions & 17 deletions Amethyst/MainWindow.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -530,7 +530,7 @@ public MainWindow()
PluginType = TrackingDevices.PluginType.TrackingDevice,
Publisher = plugin.Metadata.Publisher,
Website = plugin.Metadata.Website,
Error = e.Message,
Error = $"{e.Message}\n\n{e.StackTrace}",
Status = TrackingDevices.PluginLoadError.Other
});
}
Expand Down Expand Up @@ -567,7 +567,7 @@ public MainWindow()
Logger.Info("Skipping this catalog part as it doesn't contain any usable plugins!");
continue; // Skip composing this plugin, it won't do any good!
}

var plugin = devicePlugins.First();
Logger.Info($"Preparing exports for ({plugin.Metadata.Name}, {plugin.Metadata.Guid})...");

Expand Down Expand Up @@ -668,20 +668,6 @@ public MainWindow()
var pluginLocation = Assembly.GetAssembly(plugin.Value.GetType()).Location;
var pluginFolder = Directory.GetParent(pluginLocation).FullName;

// Add the device to the 'attempted' list, mark as all fine
Logger.Info($"Adding ({plugin.Metadata.Name}, {plugin.Metadata.Guid}) " +
"to the load-attempted device plugins list (TrackingDevices)...");
TrackingDevices.LoadAttemptedPluginsList.Add(new LoadAttemptedPlugin
{
Name = plugin.Metadata.Name,
Guid = plugin.Metadata.Guid,
PluginType = TrackingDevices.PluginType.ServiceEndpoint,
Publisher = plugin.Metadata.Publisher,
Website = plugin.Metadata.Website,
Folder = pluginFolder,
Status = TrackingDevices.PluginLoadError.NoError
});

// Add the device to the global device list, add the plugin folder path
Logger.Info($"Adding ({plugin.Metadata.Name}, {plugin.Metadata.Guid}) " +
"to the global service endpoints plugins list (TrackingDevices)...");
Expand Down Expand Up @@ -712,6 +698,20 @@ public MainWindow()
$"- Supports Settings: {plugin.Value.IsSettingsDaemonSupported}\n" +
$"- Additional Supported Trackers: {plugin.Value.AdditionalSupportedTrackerTypes.ToList()}");

// Add the device to the 'attempted' list, mark as all fine
Logger.Info($"Adding ({plugin.Metadata.Name}, {plugin.Metadata.Guid}) " +
"to the load-attempted device plugins list (TrackingDevices)...");
TrackingDevices.LoadAttemptedPluginsList.Add(new LoadAttemptedPlugin
{
Name = plugin.Metadata.Name,
Guid = plugin.Metadata.Guid,
PluginType = TrackingDevices.PluginType.ServiceEndpoint,
Publisher = plugin.Metadata.Publisher,
Website = plugin.Metadata.Website,
Folder = pluginFolder,
Status = TrackingDevices.PluginLoadError.NoError
});

// Check if the loaded device is used as anything (AppData.Settings)
Logger.Info($"Checking if ({plugin.Metadata.Name}, {plugin.Metadata.Guid}) has any roles set...");
Logger.Info($"({plugin.Metadata.Name}, {plugin.Metadata.Guid}) " +
Expand Down Expand Up @@ -742,7 +742,7 @@ public MainWindow()
PluginType = TrackingDevices.PluginType.ServiceEndpoint,
Publisher = plugin.Metadata.Publisher,
Website = plugin.Metadata.Website,
Error = e.Message,
Error = $"{e.Message}\n\n{e.StackTrace}",
Status = TrackingDevices.PluginLoadError.Other
});
}
Expand Down

0 comments on commit c097cf0

Please sign in to comment.