Skip to content

[Bug] Crash due concurrency issues #1937

@mmemfox

Description

@mmemfox

Concurrency issues between threads:

Time: 2025-04-06 18:43:42
Description: Unexpected error

java.util.ConcurrentModificationException: null
	at java.util.HashMap.computeIfAbsent(HashMap.java:1221) ~[?:?] {}
	at mrtjp.projectred.integration.part.BundledGatePart$BusInputPanel.getOrCreateOutline(BundledGatePart.java:693) ~[ProjectRed-1.20.1-4.21.0-integration.jar%23172!/:?] {re:classloading}
	at mrtjp.projectred.integration.part.BundledGatePart$BusInputPanel.getShape(BundledGatePart.java:865) ~[ProjectRed-1.20.1-4.21.0-integration.jar%23172!/:?] {re:classloading}
	at codechicken.multipart.block.TileMultipart.lambda$getShape$10(TileMultipart.java:363) ~[CBMultipart-1.20.1-3.3.0.146-universal.jar%23166!/:1.20.1-3.3.0.146] 
...

Suggestion - replace HashMap with ConcurrentHashMap

private static final ArrayList<HashMap<Integer, MultiIndexedVoxelShape>> shapeCache = new ArrayList<>(6 * 4);

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions