zlainsama / CosmeticArmorReworked

This mod allows you to wear two sets of armor, one for display, one for function.
https://minecraft.curseforge.com/projects/cosmetic-armor-reworked
Other
17 stars 18 forks source link

Client kicked- java.lang.IllegalStateException: CauseStackManager called from off main thread #24

Closed ProsperCraft closed 5 years ago

ProsperCraft commented 6 years ago

If you take your hat, and with it in your hand, click on the cosmetic armor button it will kick you from the server with a stacktrace in console.

https://gist.github.com/ProsperCraft/fb0296f788697a976eecaed8255d6fb9

Reproduced here -

https://gist.github.com/ProsperCraft/6b39501a4aa72590b0b1bf9765b2ffa6

My modpack- https://minecraft.curseforge.com/projects/towncraft

zlainsama commented 6 years ago

I couldn't reproduce this in singleplayer. Could you try to reproduce this in a vanilla forge server? If this is a sponge server issue, please try updating sponge or ask help from them.

LemADEC commented 6 years ago

Is that still an issue?

zsn741656478 commented 5 years ago

The same. https://i.loli.net/2019/01/14/5c3c30837c6fd.png Take anything in your hand and click on the cosmetic armor button. You will be kick from server, Fix it please.

@zlainsama

zlainsama commented 5 years ago

@zsn741656478 Do you mean pick something up using your cursor in your inventory, and click the button will get you kicked in a sponge server?

LemADEC commented 5 years ago

You can't access the world from a packet handler due to multithreading. Sponge detects it. Without Sponge you'll get world corruption or random CME.

zlainsama commented 5 years ago

Thanks for the info. I just tested and confirmed it. So, the dropping of the items you are working on during gui transfer was a old behavior. I will make the items stay in the inventory.

zsn741656478 commented 5 years ago

@zsn741656478 Do you mean pick something up using your cursor in your inventory, and click the button will get you kicked in a sponge server?

Oh, YES

zlainsama commented 5 years ago

Hmm, i probably should just use Baubles approach of scheduling the task in main thread.