[Bf-blender-cvs] [49ab38bf54d] master: Fix T91534: GPencil interpolate Sequence fails if stroke has 0 points

Antonio Vazquez noreply at git.blender.org
Tue Sep 21 17:29:32 CEST 2021


Commit: 49ab38bf54d4da95f0bb67a348c9305527d95983
Author: Antonio Vazquez
Date:   Tue Sep 21 17:29:19 2021 +0200
Branches: master
https://developer.blender.org/rB49ab38bf54d4da95f0bb67a348c9305527d95983

Fix T91534: GPencil interpolate Sequence fails if stroke has 0 points

In some cases the stroke has 0 points and this must be skipped in the interpolation.

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

M	source/blender/editors/gpencil/gpencil_interpolate.c

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

diff --git a/source/blender/editors/gpencil/gpencil_interpolate.c b/source/blender/editors/gpencil/gpencil_interpolate.c
index fdd9f44605e..d7cab85abad 100644
--- a/source/blender/editors/gpencil/gpencil_interpolate.c
+++ b/source/blender/editors/gpencil/gpencil_interpolate.c
@@ -316,6 +316,9 @@ static void gpencil_stroke_pair_table(bContext *C,
     if (ELEM(NULL, gps_from, gps_to)) {
       continue;
     }
+    if ((gps_from->totpoints == 0) || (gps_to->totpoints == 0)) {
+      continue;
+    }
     /* Insert the pair entry in the hash table and the list of strokes to keep order. */
     BLI_addtail(&tgpil->selected_strokes, BLI_genericNodeN(gps_from));
     BLI_ghash_insert(tgpil->pair_strokes, gps_from, gps_to);
@@ -1333,6 +1336,9 @@ static int gpencil_interpolate_seq_exec(bContext *C, wmOperator *op)
       if (ELEM(NULL, gps_from, gps_to)) {
         continue;
       }
+      if ((gps_from->totpoints == 0) || (gps_to->totpoints == 0)) {
+        continue;
+      }
 
       /* if destination stroke is smaller, resize new_stroke to size of gps_to stroke */
       if (gps_from->totpoints > gps_to->totpoints) {



More information about the Bf-blender-cvs mailing list