[Bf-blender-cvs] [f1b5b97] master: Fix T47559: Crash when scrubbing in time on a OpenVDB Smoke.

Kévin Dietrich noreply at git.blender.org
Thu Feb 25 22:52:46 CET 2016


Commit: f1b5b97bed35bba7b0955d4255792c22f3de9eb3
Author: Kévin Dietrich
Date:   Thu Feb 25 22:44:16 2016 +0100
Branches: master
https://developer.blender.org/rBf1b5b97bed35bba7b0955d4255792c22f3de9eb3

Fix T47559: Crash when scrubbing in time on a OpenVDB Smoke.

Cache reading was not using the right simulation flags (outdated), which
made it lookup non-existent grids, and crash on de-referencing null
pointers.

===================================================================

M	source/blender/blenkernel/intern/pointcache.c

===================================================================

diff --git a/source/blender/blenkernel/intern/pointcache.c b/source/blender/blenkernel/intern/pointcache.c
index 4de924e..c8a42d8 100644
--- a/source/blender/blenkernel/intern/pointcache.c
+++ b/source/blender/blenkernel/intern/pointcache.c
@@ -1110,12 +1110,12 @@ static int ptcache_smoke_openvdb_read(struct OpenVDBReader *reader, void *smoke_
 		const char *name = (!sds->wt) ? "density" : "density low";
 		OpenVDB_import_grid_fl(reader, name, &dens, sds->res);
 
-		if (fluid_fields & SM_ACTIVE_HEAT) {
+		if (cache_fields & SM_ACTIVE_HEAT) {
 			OpenVDB_import_grid_fl(reader, "heat", &heat, sds->res);
 			OpenVDB_import_grid_fl(reader, "heat old", &heatold, sds->res);
 		}
 
-		if (fluid_fields & SM_ACTIVE_FIRE) {
+		if (cache_fields & SM_ACTIVE_FIRE) {
 			name = (!sds->wt) ? "flame" : "flame low";
 			OpenVDB_import_grid_fl(reader, name, &flame, sds->res);
 			name = (!sds->wt) ? "fuel" : "fuel low";
@@ -1124,7 +1124,7 @@ static int ptcache_smoke_openvdb_read(struct OpenVDBReader *reader, void *smoke_
 			OpenVDB_import_grid_fl(reader, name, &react, sds->res);
 		}
 
-		if (fluid_fields & SM_ACTIVE_COLORS) {
+		if (cache_fields & SM_ACTIVE_COLORS) {
 			name = (!sds->wt) ? "color" : "color low";
 			OpenVDB_import_grid_vec(reader, name, &r, &g, &b, sds->res);
 		}




More information about the Bf-blender-cvs mailing list