[Bf-blender-cvs] [e314aa1e47b] blender2.8: Fix specific 2.8 broken files
Dalai Felinto
noreply at git.blender.org
Thu Nov 23 16:34:09 CET 2017
Commit: e314aa1e47bde878f3a36828827a354f161c8a1f
Author: Dalai Felinto
Date: Thu Nov 23 12:54:52 2017 -0200
Branches: blender2.8
https://developer.blender.org/rBe314aa1e47bde878f3a36828827a354f161c8a1f
Fix specific 2.8 broken files
Short of checking for types (SceneLayer) this is the only reliable
way of getting all 2.80 files to date.
===================================================================
M source/blender/makesdna/intern/dna_genfile.c
===================================================================
diff --git a/source/blender/makesdna/intern/dna_genfile.c b/source/blender/makesdna/intern/dna_genfile.c
index c8312ce568b..ac932a8daaf 100644
--- a/source/blender/makesdna/intern/dna_genfile.c
+++ b/source/blender/makesdna/intern/dna_genfile.c
@@ -325,16 +325,29 @@ static bool need_doversion_280(SDNA *sdna, int *data, const bool data_alloc)
return false;
}
+ bool active_layer = false, render_layers = false;
+
const char *cp = (char *)data;
for (int nr = 0; nr < sdna->nr_names; nr++) {
- if (strcmp(cp, "*cur_render_layer") == 0) {
- return true;
+ if (strcmp(cp, "active_layer") == 0) {
+ active_layer = true;
+ if (active_layer && render_layers) {
+ return true;
+ }
+ }
+ else if (strcmp(cp, "render_layers") == 0) {
+ render_layers = true;
+ if (active_layer && render_layers) {
+ return true;
+ }
}
while (*cp) cp++;
cp++;
}
+ /* If someone adds only one of them to the DNA, don't! */
+ BLI_assert(!(active_layer || render_layers));
return false;
}
More information about the Bf-blender-cvs
mailing list