sometimes crashes when displaying status icons in inventory
Linguardium opened this issue ยท 2 comments
Edit: fixed by #76
for anyone coming here having this issue: dont use fabric 0.15.4 or mixin extras 0.3.3 (check your logs for the modlist and see if any mod is adding mixin extras 0.3.3. mixin extras 0.3.2 works fine).
appears to be due to a change in MixinExtras 0.3.3 which changes how the code generates. Would recommend reviewing the mixin code. LlamaLad suggest using a WrapOperation instead of 2 methods
addOffset is called before renderCustomIcon leaving the shared Integer value as the default null.
LocalIntRef may be the type you wanted so that it defaults to 0 rather than null.
private void method_18643(class_332 $$0, int $$1, int $$2, Iterable<class_1293> $$3, boolean $$4) {
LocalRef sharedRef17 = new LocalRefImpl();
sharedRef17.init((Object)null);
class_4074 $$5 = this.field_22787.method_18505();
int $$6 = this.field_2800;
for(Iterator var8 = $$3.iterator(); var8.hasNext(); $$6 += $$2) {
class_1293 $$7 = (class_1293)var8.next();
class_1291 $$8 = $$7.method_5579();
class_1058 $$9 = $$5.method_18663($$8);
int var10001 = $$1 + ($$4 ? 6 : 7);
int var10002 = $$6 + 7;
int injectorAllocatedLocal15 = 18;
int injectorAllocatedLocal14 = 18;
int injectorAllocatedLocal13 = 0;
class_332 injectorAllocatedLocal12 = var10002;
var10002 = this.modify$bkp000$porting_lib_entity$addOffset(injectorAllocatedLocal12, sharedRef17);
int injectorAllocatedLocal18 = injectorAllocatedLocal15;
int injectorAllocatedLocal16 = (byte)injectorAllocatedLocal14;
injectorAllocatedLocal15 = (byte)injectorAllocatedLocal13;
injectorAllocatedLocal14 = var10002;
injectorAllocatedLocal13 = var10001;
if (this.wrapWithCondition$bkp000$porting_lib_entity$renderCustomIcon($$0, injectorAllocatedLocal13, injectorAllocatedLocal14, injectorAllocatedLocal15, injectorAllocatedLocal16, injectorAllocatedLocal18, $$9, $$1, $$2, $$4, $$7, $$6, sharedRef17)) {
$$0.method_25298(injectorAllocatedLocal13, injectorAllocatedLocal14, injectorAllocatedLocal15, injectorAllocatedLocal16, injectorAllocatedLocal18, $$9);
}
}
}