From d0102af83786716582f035758142297dad087509 Mon Sep 17 00:00:00 2001 From: embeddedt <42941056+embeddedt@users.noreply.github.com> Date: Mon, 1 May 2023 08:42:57 -0400 Subject: [PATCH] Fix potential issue if restitching is performed --- .../org/embeddedt/modernfix/textures/StbStitcher.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/embeddedt/modernfix/textures/StbStitcher.java b/src/main/java/org/embeddedt/modernfix/textures/StbStitcher.java index 42c2fdf8..60477c28 100644 --- a/src/main/java/org/embeddedt/modernfix/textures/StbStitcher.java +++ b/src/main/java/org/embeddedt/modernfix/textures/StbStitcher.java @@ -184,17 +184,19 @@ public class StbStitcher { STBRectPack.stbrp_pack_rects(ctx, rectBuf); for (STBRPRect rect : rectBuf) { - Stitcher.Holder holder = holders[rect.id()]; - // Ensure that everything is properly packed! if (!rect.was_packed()) { + Stitcher.Holder holder = holders[rect.id()]; throw new StitcherException(holder.spriteInfo, Stream.of(holders).map(arg -> arg.spriteInfo).collect(ImmutableList.toImmutableList())); } + } + + for (STBRPRect rect : rectBuf) { + Stitcher.Holder holder = holders[rect.id()]; // Initialize the sprite now with the position and size that we've calculated so far infoList.add(new LoadableSpriteInfo(holder.spriteInfo, longestWidth, longestHeight, getX(rect), getY(rect))); - //holder.spriteInfo.initSprite(size, size, rect.x(), rect.y(), false); } return Pair.of(Pair.of(longestWidth, longestHeight), infoList);