[Bf-blender-cvs] [f4479012754] greasepencil-object: Fix T74476: Crash when interpolate GPencil sequence

Antonio Vazquez noreply at git.blender.org
Thu Mar 5 23:24:23 CET 2020


Commit: f44790127540c8e4fd35cab6de0ffea90f636451
Author: Antonio Vazquez
Date:   Thu Mar 5 23:24:15 2020 +0100
Branches: greasepencil-object
https://developer.blender.org/rBf44790127540c8e4fd35cab6de0ffea90f636451

Fix T74476: Crash when interpolate GPencil sequence

The stroke totpoints was not updated.

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

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 184d50d3cde..d27fa3c95a9 100644
--- a/source/blender/editors/gpencil/gpencil_interpolate.c
+++ b/source/blender/editors/gpencil/gpencil_interpolate.c
@@ -991,7 +991,6 @@ static int gpencil_interpolate_seq_exec(bContext *C, wmOperator *op)
 
       /* create new strokes data with interpolated points reading original stroke */
       for (gps_from = prevFrame->strokes.first; gps_from; gps_from = gps_from->next) {
-        bGPDstroke *new_stroke = NULL;
 
         /* only selected */
         if ((flag & GP_TOOLFLAG_INTERPOLATE_ONLY_SELECTED) &&
@@ -1021,7 +1020,7 @@ static int gpencil_interpolate_seq_exec(bContext *C, wmOperator *op)
         }
 
         /* create new stroke */
-        new_stroke = BKE_gpencil_stroke_duplicate(gps_from, true);
+        bGPDstroke *new_stroke = BKE_gpencil_stroke_duplicate(gps_from, true);
 
         /* if destination stroke is smaller, resize new_stroke to size of gps_to stroke */
         if (gps_from->totpoints > gps_to->totpoints) {
@@ -1038,6 +1037,8 @@ static int gpencil_interpolate_seq_exec(bContext *C, wmOperator *op)
             new_stroke->dvert = MEM_recallocN(new_stroke->dvert,
                                               sizeof(*new_stroke->dvert) * gps_to->totpoints);
           }
+
+          new_stroke->totpoints = gps_to->totpoints;
         }
 
         /* update points position */



More information about the Bf-blender-cvs mailing list