Fix T60044: Sculpting brush is not visible
authorCampbell Barton <ideasman42@gmail.com>
Tue, 8 Jan 2019 22:06:59 +0000 (09:06 +1100)
committerCampbell Barton <ideasman42@gmail.com>
Tue, 8 Jan 2019 22:12:57 +0000 (09:12 +1100)
Same logic as fix from D4153, but only applied when running undo.

source/blender/blenloader/intern/readfile.c

index 316a98c..bc3d38f 100644 (file)
@@ -5646,7 +5646,8 @@ static void direct_link_object(FileData *fd, Object *ob)
        CLAMP(ob->rotmode, ROT_MODE_MIN, ROT_MODE_MAX);
 
        if (ob->sculpt) {
-               if (ob->mode & OB_MODE_ALL_SCULPT) {
+               /* Only create data on undo, otherwise rely on editor mode switching. */
+               if (fd->memfile && (ob->mode & OB_MODE_ALL_SCULPT)) {
                        ob->sculpt = MEM_callocN(sizeof(SculptSession), "reload sculpt session");
                        ob->sculpt->mode_type = ob->mode;
                }