diff --git a/source/blender/blenloader/intern/versioning_400.cc b/source/blender/blenloader/intern/versioning_400.cc index 3f8ad98f069..78ce9937488 100644 --- a/source/blender/blenloader/intern/versioning_400.cc +++ b/source/blender/blenloader/intern/versioning_400.cc @@ -2539,10 +2539,6 @@ void blo_do_versions_400(FileData *fd, Library * /*lib*/, Main *bmain) } } - LISTBASE_FOREACH (Mesh *, mesh, &bmain->meshes) { - blender::bke::mesh_sculpt_mask_to_generic(*mesh); - } - if (!DNA_struct_member_exists( fd->filesdna, "RaytraceEEVEE", "float", "screen_trace_max_roughness")) { @@ -2604,4 +2600,11 @@ void blo_do_versions_400(FileData *fd, Library * /*lib*/, Main *bmain) { /* Keep this block, even when empty. */ } + + /* Always run this versioning; meshes are written with the legacy format which always needs to + * be converted to the new format on file load. Can be moved to a subversion check in a larger + * breaking release. */ + LISTBASE_FOREACH (Mesh *, mesh, &bmain->meshes) { + blender::bke::mesh_sculpt_mask_to_generic(*mesh); + } }