[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