[Bf-blender-cvs] [b095c19] openvdb: Fix double freeing of OpenVDB data from dangling pointers in device data.
Lukas Tönne
noreply at git.blender.org
Fri Nov 18 09:46:14 CET 2016
Commit: b095c1979fa6193a3b32414afbb5f62df67a9875
Author: Lukas Tönne
Date: Fri Nov 18 09:45:11 2016 +0100
Branches: openvdb
https://developer.blender.org/rBb095c1979fa6193a3b32414afbb5f62df67a9875
Fix double freeing of OpenVDB data from dangling pointers in device data.
===================================================================
M intern/cycles/render/volume.cpp
===================================================================
diff --git a/intern/cycles/render/volume.cpp b/intern/cycles/render/volume.cpp
index c8b4fe6..0fcb9a9 100644
--- a/intern/cycles/render/volume.cpp
+++ b/intern/cycles/render/volume.cpp
@@ -508,9 +508,14 @@ void VolumeManager::device_free(Device *device, DeviceScene *dscene)
for (size_t i = 0; i < vdb->scalar_main_isectors.size(); ++i) {
delete vdb->scalar_main_isectors[i];
}
+ vdb->scalar_grids.clear();
+ vdb->scalar_main_isectors.clear();
+
for (size_t i = 0; i < vdb->vector_main_isectors.size(); ++i) {
delete vdb->vector_main_isectors[i];
}
+ vdb->vector_grids.clear();
+ vdb->vector_main_isectors.clear();
#endif
device->tex_free(dscene->vol_shader);
More information about the Bf-blender-cvs
mailing list