diff options
author | Bastien Montagne <montagne29@wanadoo.fr> | 2018-06-16 19:02:50 +0300 |
---|---|---|
committer | Bastien Montagne <montagne29@wanadoo.fr> | 2018-06-16 19:02:50 +0300 |
commit | 3b7f630a54164285ab4d72cf1ffb77f3a5f9e19b (patch) | |
tree | 4451bf33a0dd69ba758be49087f4146c10c63dd0 | |
parent | dc1c820b2b007302e37dd97bb244737d7351ae89 (diff) | |
parent | ace8ad861de78a19645cdf87e138eda6bc66ea3e (diff) |
Merge branch 'master' into blender2.8
-rw-r--r-- | source/blender/blenkernel/intern/deform.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/deform.c b/source/blender/blenkernel/intern/deform.c index d4ff9bd5c0c..2da157d5b88 100644 --- a/source/blender/blenkernel/intern/deform.c +++ b/source/blender/blenkernel/intern/deform.c @@ -1192,7 +1192,12 @@ bool data_transfer_layersmapping_vgroups( if (fromlayers >= 0) { idx_src = fromlayers; - BLI_assert(idx_src < BLI_listbase_count(&ob_src->defbase)); + if (idx_src >= BLI_listbase_count(&ob_src->defbase)) { + /* This can happen when vgroups are removed from source object... + * Remapping would be really tricky here, we'd need to go over all objects in Main everytime we delete + * a vgroup... for now, simpler and safer to abort. */ + return false; + } } else if ((idx_src = ob_src->actdef - 1) == -1) { return false; |