summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAntti Määttä <antti.maatta@qt.io>2019-03-18 11:01:35 +0200
committerAntti Määttä <antti.maatta@qt.io>2019-03-18 14:16:12 +0000
commit5d9f20e35c11292ebefcd19653c1cf51ee7baaf0 (patch)
tree962a263cacc8288993c4d20cf3f633e2b44c0224 /src
parent3a49977934c46b5b406a62b15ba16135c5db4c44 (diff)
Fix crash in dragon texture job
Use copy of texture images instead of reference since the generateTexture will overwrite the existing array. Task-number: QT3DS-3176 Change-Id: Id6bc14e0a017f70d267a599ef1d00faab15f7b4d Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/runtime/dragon/jobs/dragontexturejobs.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/runtime/dragon/jobs/dragontexturejobs.cpp b/src/runtime/dragon/jobs/dragontexturejobs.cpp
index 09d4387..ba4e3df 100644
--- a/src/runtime/dragon/jobs/dragontexturejobs.cpp
+++ b/src/runtime/dragon/jobs/dragontexturejobs.cpp
@@ -110,8 +110,8 @@ LoadedTextures loadTextures(LoadedTextures loadedTextures, const ValueContainer<
// more sophisticated dependency tracking between different types of nodes.
const auto &dirtyOrNewImages = loadedImages.dirtyOrNew();
for (const auto &textureId : loadedTextures.keys()) {
- const auto &loadedTexture = loadedTextures[textureId];
- for (const auto &loadedTextureImage : loadedTexture->images) {
+ const auto loadedTextureImages = loadedTextures[textureId]->images;
+ for (const auto &loadedTextureImage : loadedTextureImages) {
if (dirtyOrNewImages.contains(loadedTextureImage->image->peerId())) {
loadedTextures[textureId] = generateTexture(textureId, textures[textureId]);
loadedTextures.markDirty(textureId);