Skip to content

Commit

Permalink
Prevent against checking if a position is inside a multiblock if it i…
Browse files Browse the repository at this point in the history
…sn't valid so has no manager #7394
  • Loading branch information
pupnewfster committed Feb 23, 2022
1 parent 6a5a767 commit 89721bf
Showing 1 changed file with 8 additions and 6 deletions.
14 changes: 8 additions & 6 deletions src/main/java/mekanism/common/lib/multiblock/MultiblockData.java
Original file line number Diff line number Diff line change
Expand Up @@ -294,12 +294,14 @@ public <T extends MultiblockData> boolean isPositionInsideBounds(@Nonnull Struct
} else if (relativeLocation.isWall()) {
//If we are in the wall check if we are really an inner position. For example evap towers
MultiblockManager<T> manager = (MultiblockManager<T>) structure.getManager();
IStructureValidator<T> validator = manager.createValidator();
if (validator instanceof CuboidStructureValidator) {
CuboidStructureValidator<T> cuboidValidator = (CuboidStructureValidator<T>) validator;
validator.init(getWorld(), manager, structure);
cuboidValidator.loadCuboid(getBounds());
return cuboidValidator.getStructureRequirement(pos) == StructureRequirement.INNER;
if (manager != null) {
IStructureValidator<T> validator = manager.createValidator();
if (validator instanceof CuboidStructureValidator) {
CuboidStructureValidator<T> cuboidValidator = (CuboidStructureValidator<T>) validator;
validator.init(getWorld(), manager, structure);
cuboidValidator.loadCuboid(getBounds());
return cuboidValidator.getStructureRequirement(pos) == StructureRequirement.INNER;
}
}
}
}
Expand Down

0 comments on commit 89721bf

Please sign in to comment.