From 44bdadbe3aa3a593ad40fc4d579fb56d74908f37 Mon Sep 17 00:00:00 2001 From: BlueCube3310 <53150244+BlueCube3310@users.noreply.github.com> Date: Wed, 14 May 2025 13:04:58 +0200 Subject: [PATCH] DDS: Prevent crashing when unable to load image --- modules/dds/texture_loader_dds.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/modules/dds/texture_loader_dds.cpp b/modules/dds/texture_loader_dds.cpp index fb118d411a6..e51b6cbba9d 100644 --- a/modules/dds/texture_loader_dds.cpp +++ b/modules/dds/texture_loader_dds.cpp @@ -392,12 +392,15 @@ static Vector> _dds_load_images(Ref p_f, DDSFormat p_dds_ for (uint32_t i = 0; i < p_layer_count; i++) { images.write[i] = _dds_load_layer(p_f, p_dds_format, p_width, p_height, p_mipmaps, p_pitch, p_flags, src_data); + ERR_FAIL_COND_V(images.write[i].is_null(), Vector>()); } return images; } static Ref _dds_create_texture(const Vector> &p_images, uint32_t p_dds_type, uint32_t p_width, uint32_t p_height, uint32_t p_layer_count, uint32_t p_mipmaps, Error *r_error) { + ERR_FAIL_COND_V(p_images.is_empty(), Ref()); + if ((p_dds_type & DDST_TYPE_MASK) == DDST_2D) { if (p_dds_type & DDST_ARRAY) { Ref texture;