🆙 Fix the catalog search in some cases it will give a black screen

This commit is contained in:
duckietm
2026-04-01 17:12:09 +02:00
parent bfb56f0a4e
commit 6ad9a0c7b9
5 changed files with 37 additions and 30 deletions
+19 -24
View File
@@ -150,39 +150,34 @@ export class AvatarEditorThumbnailsHelper
if(cached) return cached;
const avatarImage = GetAvatarRenderManager().createAvatarImage(figureString, AvatarScaleType.LARGE, null, null);
if(avatarImage.isPlaceholder())
return new Promise(async (resolve, reject) =>
{
avatarImage.dispose();
const resetFigure = async (figure: string) =>
{
const avatarImage = GetAvatarRenderManager().createAvatarImage(figure, AvatarScaleType.LARGE, null, { resetFigure, dispose: null, disposed: false });
return null;
}
if(avatarImage.isPlaceholder()) return;
const texture = avatarImage.processAsTexture(AvatarSetType.HEAD, false);
const texture = avatarImage.processAsTexture(AvatarSetType.HEAD, false);
const sprite = new NitroSprite(texture);
if(!texture)
{
avatarImage.dispose();
if(isDisabled) sprite.filters = [ AvatarEditorThumbnailsHelper.ALPHA_FILTER ];
return null;
}
const imageUrl = await TextureUtils.generateImageUrl({
target: sprite,
frame: new NitroRectangle(0, 0, texture.width, texture.height)
});
const sprite = new NitroSprite(texture);
sprite.destroy();
avatarImage.dispose();
if(isDisabled) sprite.filters = [ AvatarEditorThumbnailsHelper.ALPHA_FILTER ];
AvatarEditorThumbnailsHelper.THUMBNAIL_CACHE.set(thumbnailKey, imageUrl);
const imageUrl = await TextureUtils.generateImageUrl({
target: sprite,
frame: new NitroRectangle(0, 0, texture.width, texture.height)
resolve(imageUrl);
};
resetFigure(figureString);
});
sprite.destroy();
avatarImage.dispose();
if(imageUrl) AvatarEditorThumbnailsHelper.THUMBNAIL_CACHE.set(thumbnailKey, imageUrl);
return imageUrl;
}
private static sortByDrawOrder(a: IFigurePart, b: IFigurePart): number