diff options
author | Campbell Barton <ideasman42@gmail.com> | 2013-01-09 08:17:53 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2013-01-09 08:17:53 +0400 |
commit | 02f6645bef3ebb3b802d03f6949f44d488e141bc (patch) | |
tree | ddb4cdf0f7f61d6151d68588a8e88a9e4fe6f14e /source | |
parent | e24443b79a23e3d274124f0f666f2632a7073267 (diff) |
fix [#33806] weight paint crash and computer freeze when painting
clear weight paint runtime data on file-load.
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/blenloader/intern/readfile.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c index 34c08a917b3..43c1179dbba 100644 --- a/source/blender/blenloader/intern/readfile.c +++ b/source/blender/blenloader/intern/readfile.c @@ -5124,6 +5124,16 @@ static void direct_link_scene(FileData *fd, Scene *sce) sce->toolsettings->imapaint.paintcursor = NULL; sce->toolsettings->particle.paintcursor = NULL; + + /* in rare cases this is needed, see [#33806] */ + if (sce->toolsettings->vpaint) { + sce->toolsettings->vpaint->vpaint_prev = NULL; + sce->toolsettings->vpaint->tot = 0; + } + if (sce->toolsettings->wpaint) { + sce->toolsettings->wpaint->wpaint_prev = NULL; + sce->toolsettings->wpaint->tot = 0; + } } if (sce->ed) { |