Commit: 77e66d630a28032672619ea76b96328a241f1e9f
Author: Antonio Vazquez
Date:   Wed Dec 7 17:23:30 2022 +0100
Branches: blender-v3.3-release
https://developer.blender.org/rB77e66d630a28032672619ea76b96328a241f1e9f

GPencil: Fix unreported interpolate crash if no frames

If there is a layer that hasn't frames but is not the active layer
the pointer to frames can be NULL and crash.

Now, the empty layers are skipped.

Reported to me by Samuel Bernou.

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

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 bf6616638c4..72dbe45b580 100644
--- a/source/blender/editors/gpencil/gpencil_interpolate.c
+++ b/source/blender/editors/gpencil/gpencil_interpolate.c
@@ -483,10 +483,17 @@ static void gpencil_interpolate_set_points(bContext *C, 
tGPDinterpolate *tgpi)
     tgpil = MEM_callocN(sizeof(tGPDinterpolate_layer), "GPencil Interpolate 
Layer");
 
     tgpil->gpl = gpl;
+
     bGPDframe *gpf = gpencil_get_previous_keyframe(gpl, scene->r.cfra);
+    if (gpf == NULL) {
+      continue;
+    }
     tgpil->prevFrame = BKE_gpencil_frame_duplicate(gpf, true);
 
     gpf = gpencil_get_next_keyframe(gpl, scene->r.cfra);
+    if (gpf == NULL) {
+      continue;
+    }
     tgpil->nextFrame = BKE_gpencil_frame_duplicate(gpf, true);
 
     BLI_addtail(&tgpi->ilayers, tgpil);

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
List details, subscription details or unsubscribe:
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to