ForestryMC / Binnie

Minecraft addons for the Forestry mod. Extra Bees, Extra Trees, Genetics, and more.
https://minecraft.curseforge.com/projects/binnies-mods
Other
69 stars 77 forks source link

Crash in Incubator GUI #619

Open Neuromantix opened 4 years ago

Neuromantix commented 4 years ago

When I opened Incubator GUI, game crash (Extra utilites problem in log). Without binnie no problem. Log link https://paste.dimdev.org/vozuvusoji.mccrash MC version - 1.12.2 Binnie version - last (196). Single player On 188 version Binnie all good

mezz commented 4 years ago

Thanks for the report!

dev notes:

The crash is from this line: https://github.com/rwtema/Extra-Utilities-2-Source/blob/9e478a1f48b559c404747c663cbb29bd8acf93d9/1.10.2/src/main/java/com/rwtema/extrautils2/items/ItemUnstableIngots.java#L192

This crash means Binnie's is modifying openContainer.inventorySlots while extra utilities is iterating over them.

Neuromantix commented 4 years ago

What can I do with it? Reported to EU team?

mezz commented 4 years ago

It may be an issue on our side, it still needs more investigation to figure out.

mezz commented 4 years ago

Can you check with versions between 188 and 196? If you can find the first version that breaks, that will narrow down the changes we need to look at to find the issue.

dev notes:

The only place I can find where we directly modify inventory slots after the inventory is created on the server is in binnie.core.gui.minecraft.ContainerCraftGUI#createServerSlot. It is called from a network packet that gets scheduled on the main thread, so I think it cannot be causing this crash.

Neuromantix commented 4 years ago

Test - opened 8 Incubator GUI in my in-game genetic lab. 190 - OK 191 - OK 192 - OK 193 - OK 194 - Crash on first incubator Log https://paste.dimdev.org/wotohijova.mccrash 195 - Crash on first incubator Log https://paste.dimdev.org/letociwuya.mccrash

nstearns96 commented 4 years ago

Looks to be the same as #534

mezz commented 4 years ago

Thanks for testing! I agree, these are the same.

dev notes:

From testing I have found there is an issue in the design of the mod in singleplayer mode, where slots are added on both the client thread and on the server thread to the same container. The slots being added on the client conflict with mods that access the slots on the server thread, causing a crash.

Neuromantix commented 4 years ago

Can i fix it without coding? Or need wait update?

mezz commented 4 years ago

Unfortunately this needs to be fixed in code, so you will have to wait for a fix and an update.