diff options
| author | Rindbee <idleman@yeah.net> | 2023-05-20 10:22:10 +0800 |
|---|---|---|
| committer | Rindbee <idleman@yeah.net> | 2023-05-22 06:24:13 +0800 |
| commit | ebd2b9e299eca51c75a3e774a2c3f1eb8c22a46f (patch) | |
| tree | 4d4f65ede8fc78c3d2523d6110992878124f6cae /servers/rendering/renderer_rd/storage_rd | |
| parent | 809a98216267f3066b9fec2f02b2042bdc9d3e0d (diff) | |
| download | redot-engine-ebd2b9e299eca51c75a3e774a2c3f1eb8c22a46f.tar.gz | |
Fix calling `TextureStorage::texture_3d_update()` could cause a crash
Diffstat (limited to 'servers/rendering/renderer_rd/storage_rd')
| -rw-r--r-- | servers/rendering/renderer_rd/storage_rd/texture_storage.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/servers/rendering/renderer_rd/storage_rd/texture_storage.cpp b/servers/rendering/renderer_rd/storage_rd/texture_storage.cpp index 3d6092a9f6..8390782de3 100644 --- a/servers/rendering/renderer_rd/storage_rd/texture_storage.cpp +++ b/servers/rendering/renderer_rd/storage_rd/texture_storage.cpp @@ -1153,8 +1153,8 @@ void TextureStorage::texture_3d_update(RID p_texture, const Vector<Ref<Image>> & image = image->duplicate(); image->convert(tex->validated_format); } - all_data_size += images[i]->get_data().size(); - images.push_back(image); + all_data_size += image->get_data().size(); + images.write[i] = image; } all_data.resize(all_data_size); //consolidate all data here |
