Skip to content

Commit

Permalink
Do not provide world context during off-thread tooltip retrieval (#710)
Browse files Browse the repository at this point in the history
  • Loading branch information
embeddedt authored Sep 25, 2024
1 parent 4e97eb6 commit cc0e0e7
Showing 1 changed file with 6 additions and 1 deletion.
7 changes: 6 additions & 1 deletion xplat/src/main/java/dev/emi/emi/api/stack/ItemEmiStack.java
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,12 @@ public void renderForBatch(VertexConsumerProvider vcp, DrawContext draw, int x,

@Override
public List<Text> getTooltipText() {
return getItemStack().getTooltip(Item.TooltipContext.create(client.world), client.player, TooltipType.BASIC);
if (client.isOnThread()) {
return getItemStack().getTooltip(Item.TooltipContext.create(client.world), client.player, TooltipType.BASIC);
} else {
// Don't provide world or entity as context, as they are not thread safe
return getItemStack().getTooltip(Item.TooltipContext.create(client.world.getRegistryManager()), null, TooltipType.BASIC);
}
}

@Override
Expand Down

0 comments on commit cc0e0e7

Please sign in to comment.