[Bf-blender-cvs] [74ea3698303] master: Experimental Features: More robust way of sanitizing options

Dalai Felinto noreply at git.blender.org
Fri Oct 2 14:05:16 CEST 2020


Commit: 74ea36983038da1a2f00b35feed81032fcd666eb
Author: Dalai Felinto
Date:   Fri Oct 2 12:57:23 2020 +0200
Branches: master
https://developer.blender.org/rB74ea36983038da1a2f00b35feed81032fcd666eb

Experimental Features: More robust way of sanitizing options

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

M	source/blender/blenloader/intern/versioning_userdef.c
M	source/blender/makesdna/DNA_userdef_types.h

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

diff --git a/source/blender/blenloader/intern/versioning_userdef.c b/source/blender/blenloader/intern/versioning_userdef.c
index a9082d207ca..ded371aa2d8 100644
--- a/source/blender/blenloader/intern/versioning_userdef.c
+++ b/source/blender/blenloader/intern/versioning_userdef.c
@@ -824,11 +824,8 @@ void BLO_sanitize_experimental_features_userpref_blend(UserDef *userdef)
   if (BKE_blender_version_is_alpha()) {
     return;
   }
-  userdef->experimental.use_new_particle_system = false;
-  userdef->experimental.use_new_hair_type = false;
-  userdef->experimental.use_sculpt_vertex_colors = false;
-  userdef->experimental.use_tools_missing_icons = false;
-  userdef->experimental.use_switch_object_operator = false;
+
+  MEMSET_STRUCT_AFTER(&userdef->experimental, 0, SANITIZE_AFTER_HERE);
 }
 
 #undef USER_LMOUSESELECT
diff --git a/source/blender/makesdna/DNA_userdef_types.h b/source/blender/makesdna/DNA_userdef_types.h
index 47b8e5b83bd..f0a1378920e 100644
--- a/source/blender/makesdna/DNA_userdef_types.h
+++ b/source/blender/makesdna/DNA_userdef_types.h
@@ -626,13 +626,15 @@ typedef struct UserDef_Experimental {
   char use_undo_legacy;
   char use_cycles_debug;
   char use_image_editor_legacy_drawing;
-  /* Other options - remember to turn them off on
-   * BLO_sanitize_experimental_features_userpref_blend. */
+  char SANITIZE_AFTER_HERE;
+  /* The following options are automatically sanitized (set to 0)
+   * when the release cycle is not alpha. */
   char use_new_particle_system;
   char use_new_hair_type;
   char use_sculpt_vertex_colors;
   char use_tools_missing_icons;
   char use_switch_object_operator;
+  char _pad[7];
 } UserDef_Experimental;
 
 #define USER_EXPERIMENTAL_TEST(userdef, member) \



More information about the Bf-blender-cvs mailing list