Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Sharybin <sergey@blender.org>2021-03-29 15:42:52 +0300
committerSergey Sharybin <sergey@blender.org>2021-03-29 15:43:58 +0300
commit8f38534300b4e24e0ef2c561721b11ff9667e3de (patch)
treed7be4b5f8b7df89bf5e16c2d0417273df0639037
parente0ce76f1c5eb70ab66755dce4627b918fc102cbd (diff)
Tracking: Avoid integer overflow in dopesheet update
Straightforward check to discard cases when dopesheet is being updated for a movie clip which has no markers at all. Possible bugfix for T86847.
-rw-r--r--source/blender/blenkernel/intern/tracking.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/tracking.c b/source/blender/blenkernel/intern/tracking.c
index d124922acd1..f3d6bc4a6e3 100644
--- a/source/blender/blenkernel/intern/tracking.c
+++ b/source/blender/blenkernel/intern/tracking.c
@@ -3251,6 +3251,11 @@ static void tracking_dopesheet_calc_coverage(MovieTracking *tracking)
end_frame = max_ii(end_frame, track->markers[track->markersnr - 1].framenr);
}
+ if (start_frame > end_frame) {
+ /* There are no markers at all, nothing to calculate coverage from. */
+ return;
+ }
+
frames = end_frame - start_frame + 1;
/* this is a per-frame counter of markers (how many markers belongs to the same frame) */