Skip to content

fix: Fix the crash problem of postbox#1860

Open
QZero233 wants to merge 5 commits intoFabricators-of-Create:mc1.20.1/fabric/devfrom
QZero233:mc1.20.1/fabric/dev
Open

fix: Fix the crash problem of postbox#1860
QZero233 wants to merge 5 commits intoFabricators-of-Create:mc1.20.1/fabric/devfrom
QZero233:mc1.20.1/fabric/dev

Conversation

@QZero233
Copy link

@QZero233 QZero233 commented Jan 5, 2026

Detailed bug reproduce see Creators-of-Create#9785
Below is a copy of the original issue (Written by @Sukiet):

Context

Full sequence

  1. A chute inserts items into a white postbox.
  2. The inventory-change callback notifies neighbouring blocks.
  3. A redstone comparator next to the postbox asks for the analog signal strength.
  4. Create’s ItemHelper.calcRedstoneFromInventory() calls TransferUtil.getTransaction() to access the item cache.
  5. This runs inside a Transaction.close() callback; Fabric API forbids getCurrentUnsafe() at that moment and throws IllegalStateException.
  6. The exception is caught as a “Ticking block entity” error and the server is killed.

How to reproduce

  1. Place a white postbox.
  2. Put a redstone comparator against the postbox so it reads the fill level.
  3. Insert items through Create logistics (chutes, funnels, etc.).
  4. Wait for item transfer -> instant crash.
image

Crash Report

https://mclo.gs/TXsULuX

@TesseractGitHub
Copy link

This also fixes the same problem where a comparator being placed next to a frogport will crash the game when a package is received! Fix works well 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants