Commit a8d48f3173f53b4f43f9eadfd881ee6edf427f30
1 parent
1d4f6f14
dependency check should ignore enumerator state
Showing
1 changed file
with
23 additions
and
4 deletions
java/common/com/mumfrey/liteloader/core/LiteLoaderEnumerator.java
| @@ -284,7 +284,7 @@ public class LiteLoaderEnumerator implements LoaderEnumerator | @@ -284,7 +284,7 @@ public class LiteLoaderEnumerator implements LoaderEnumerator | ||
| 284 | { | 284 | { |
| 285 | this.checkState(EnumeratorState.FINALISED, "getModMetaData"); | 285 | this.checkState(EnumeratorState.FINALISED, "getModMetaData"); |
| 286 | 286 | ||
| 287 | - return this.getContainer(modClass).getMetaValue(metaDataKey, defaultValue); | 287 | + return this.getContainerForMod(modClass).getMetaValue(metaDataKey, defaultValue); |
| 288 | } | 288 | } |
| 289 | 289 | ||
| 290 | /** | 290 | /** |
| @@ -296,7 +296,17 @@ public class LiteLoaderEnumerator implements LoaderEnumerator | @@ -296,7 +296,17 @@ public class LiteLoaderEnumerator implements LoaderEnumerator | ||
| 296 | { | 296 | { |
| 297 | this.checkState(EnumeratorState.FINALISED, "getContainer"); | 297 | this.checkState(EnumeratorState.FINALISED, "getContainer"); |
| 298 | 298 | ||
| 299 | - return this.enabledContainers.get(identifier); | 299 | + return this.getContainerById(identifier); |
| 300 | + } | ||
| 301 | + | ||
| 302 | + /** | ||
| 303 | + * @param identifier | ||
| 304 | + * @return | ||
| 305 | + */ | ||
| 306 | + private LoadableMod<?> getContainerById(String identifier) | ||
| 307 | + { | ||
| 308 | + LoadableMod<?> container = this.enabledContainers.get(identifier); | ||
| 309 | + return container != null ? container : LoadableMod.NONE; | ||
| 300 | } | 310 | } |
| 301 | 311 | ||
| 302 | /** | 312 | /** |
| @@ -308,6 +318,15 @@ public class LiteLoaderEnumerator implements LoaderEnumerator | @@ -308,6 +318,15 @@ public class LiteLoaderEnumerator implements LoaderEnumerator | ||
| 308 | { | 318 | { |
| 309 | this.checkState(EnumeratorState.FINALISED, "getContainer"); | 319 | this.checkState(EnumeratorState.FINALISED, "getContainer"); |
| 310 | 320 | ||
| 321 | + return this.getContainerForMod(modClass); | ||
| 322 | + } | ||
| 323 | + | ||
| 324 | + /** | ||
| 325 | + * @param modClass | ||
| 326 | + * @return | ||
| 327 | + */ | ||
| 328 | + private LoadableMod<?> getContainerForMod(Class<? extends LiteMod> modClass) | ||
| 329 | + { | ||
| 311 | for (ModInfo<LoadableMod<?>> mod : this.modsToLoad) | 330 | for (ModInfo<LoadableMod<?>> mod : this.modsToLoad) |
| 312 | { | 331 | { |
| 313 | if (modClass.equals(mod.getModClass())) | 332 | if (modClass.equals(mod.getModClass())) |
| @@ -825,8 +844,8 @@ public class LiteLoaderEnumerator implements LoaderEnumerator | @@ -825,8 +844,8 @@ public class LiteLoaderEnumerator implements LoaderEnumerator | ||
| 825 | { | 844 | { |
| 826 | circularDependencySet.add(dependency); | 845 | circularDependencySet.add(dependency); |
| 827 | 846 | ||
| 828 | - LoadableMod<?> dependencyContainer = this.getContainer(dependency); | ||
| 829 | - if (dependencyContainer != null) | 847 | + LoadableMod<?> dependencyContainer = this.getContainerById(dependency); |
| 848 | + if (dependencyContainer != LoadableMod.NONE) | ||
| 830 | { | 849 | { |
| 831 | if (this.environment.getEnabledModsList().isEnabled(this.environment.getProfile(), dependency)) | 850 | if (this.environment.getEnabledModsList().isEnabled(this.environment.getProfile(), dependency)) |
| 832 | { | 851 | { |