From efe74b404e83095e32fc2f853ff0d1cb1560b6d7 Mon Sep 17 00:00:00 2001 From: PhatPhuckDave Date: Tue, 18 Mar 2025 17:27:35 +0100 Subject: [PATCH] Fix stroking out on missing loadbefore/after --- lib/mod_list.dart | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/lib/mod_list.dart b/lib/mod_list.dart index 376c4f5..7d88311 100644 --- a/lib/mod_list.dart +++ b/lib/mod_list.dart @@ -337,6 +337,15 @@ class ModList { if (loadAfterMod != null && loadOrder.order.indexOf(mod) < loadOrder.order.indexOf(loadAfterMod)) { + final loadAfterIndex = loadOrder.order.indexOf(loadAfterMod); + // Mod is not loaded, we don't care about it + if (loadAfterIndex == -1) { + logger.warning( + 'Missing loadAfter: ${mod.id} requires mod with ID $loadAfter', + ); + continue; + } + logger.info( 'Reordering: ${mod.id} should come after ${loadAfterMod.id}', ); @@ -352,6 +361,15 @@ class ModList { if (loadBeforeMod != null && loadOrder.order.indexOf(mod) > loadOrder.order.indexOf(loadBeforeMod)) { + final loadBeforeIndex = loadOrder.order.indexOf(loadBeforeMod); + // Mod is not loaded, we don't care about it + if (loadBeforeIndex == -1) { + logger.warning( + 'Missing loadBefore: ${mod.id} requires mod with ID $loadBefore', + ); + continue; + } + logger.info( 'Reordering: ${mod.id} should come before ${loadBeforeMod.id}', );