diff --git a/src/Components/Modules/AssetInterfaces/IGfxWorld.cpp b/src/Components/Modules/AssetInterfaces/IGfxWorld.cpp index c3c3a1d7..a79f3e91 100644 --- a/src/Components/Modules/AssetInterfaces/IGfxWorld.cpp +++ b/src/Components/Modules/AssetInterfaces/IGfxWorld.cpp @@ -250,7 +250,7 @@ namespace Assets if (aabbTree->smodelIndexes) { - void* oldPointer = aabbTree->smodelIndexes; + unsigned short* oldPointer = aabbTree->smodelIndexes; if(builder->getAllocator()->isPointerMapped(oldPointer)) { // We still have to read it @@ -261,7 +261,11 @@ namespace Assets else { aabbTree->smodelIndexes = reader.readArray(aabbTree->smodelIndexCount); - builder->getAllocator()->mapPointer(oldPointer, aabbTree->smodelIndexes); + + for (unsigned short k = 0; k < aabbTree->smodelIndexCount; ++k) + { + builder->getAllocator()->mapPointer(&oldPointer[k], &aabbTree->smodelIndexes[k]); + } } } }