From 46e75e81070a2479e4f0590dbed9e2d157c28ca2 Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Sat, 18 Apr 2020 22:20:15 +0200 Subject: [PATCH] - fixed crash with particles checking a non-existent actor. --- src/common/textures/textures.h | 2 +- src/rendering/hwrenderer/scene/hw_sprites.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/common/textures/textures.h b/src/common/textures/textures.h index 774c75161..9b2f6e1c2 100644 --- a/src/common/textures/textures.h +++ b/src/common/textures/textures.h @@ -374,7 +374,7 @@ public: FImageTexture(FImageSource* image) noexcept; virtual TArray Get8BitPixels(bool alphatex); - void SetImage(FImageSource* img) // This is only for the multipatch texture builder! + void SetImage(FImageSource* img) { mImage = img; SetFromImage(); diff --git a/src/rendering/hwrenderer/scene/hw_sprites.cpp b/src/rendering/hwrenderer/scene/hw_sprites.cpp index c9dae4348..44dee7c84 100644 --- a/src/rendering/hwrenderer/scene/hw_sprites.cpp +++ b/src/rendering/hwrenderer/scene/hw_sprites.cpp @@ -197,7 +197,7 @@ void HWSprite::DrawSprite(HWDrawInfo *di, FRenderState &state, bool translucent) state.SetFog(0, 0); } - uint32_t spritetype = (actor->renderflags & RF_SPRITETYPEMASK); + uint32_t spritetype = actor? uint32_t(actor->renderflags & RF_SPRITETYPEMASK) : 0; if (texture) state.SetMaterial(texture, UF_Sprite, (spritetype == RF_FACESPRITE) ? CTF_Expand : 0, CLAMP_XY, translation, OverrideShader); else if (!modelframe) state.EnableTexture(false);