From 09cbfe96d62b81cac6dcdaf7cde2c3fa62247e42 Mon Sep 17 00:00:00 2001 From: PrototypeTrousers Date: Sun, 1 Aug 2021 17:36:23 -0300 Subject: [PATCH] fix NPE when configuring storage busses --- gradle.properties | 2 +- .../appeng/parts/misc/PartStorageBus.java | 22 +++++++++++-------- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/gradle.properties b/gradle.properties index 0a4b8eff8..9c9690327 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,7 +3,7 @@ aechannel=stable aebuild=7 aegroup=appeng aebasename=appliedenergistics2 -trousers=omni-fixes-v45l +trousers=omni-fixes-v45m ######################################################### # Versions # diff --git a/src/main/java/appeng/parts/misc/PartStorageBus.java b/src/main/java/appeng/parts/misc/PartStorageBus.java index 6c93ce812..e74b6bc05 100644 --- a/src/main/java/appeng/parts/misc/PartStorageBus.java +++ b/src/main/java/appeng/parts/misc/PartStorageBus.java @@ -369,19 +369,23 @@ public class PartStorageBus extends PartUpgradeable implements IGridTickable, IC boolean denyRead = false; if( in != null ) { - AccessRestriction currentAccess = ( AccessRestriction ) ( ( ConfigManager ) this.getConfigManager() ).getSetting( Settings.ACCESS ); - AccessRestriction oldAccess = ( AccessRestriction ) ( ( ConfigManager ) this.getConfigManager() ).getOldSetting( Settings.ACCESS ); - if( oldAccess.hasPermission( AccessRestriction.READ ) && !currentAccess.hasPermission( AccessRestriction.READ ) ) - { - denyRead = true; - } if( accessChanged ) { + AccessRestriction currentAccess = (AccessRestriction) ( (ConfigManager) this.getConfigManager() ).getSetting( Settings.ACCESS ); + AccessRestriction oldAccess = (AccessRestriction) ( (ConfigManager) this.getConfigManager() ).getOldSetting( Settings.ACCESS ); + if( oldAccess.hasPermission( AccessRestriction.READ ) && !currentAccess.hasPermission( AccessRestriction.READ ) ) + { + denyRead = true; + } in.setBaseAccess( oldAccess ); + before = in.getAvailableItems( before ); + in.setBaseAccess( currentAccess ); + accessChanged = false; + } + else + { + before = in.getAvailableItems( before ); } - before = in.getAvailableItems( before ); - accessChanged = false; - in.setBaseAccess( currentAccess ); } this.cached = false;