diff options
author | Jacques Lucke <jacques@blender.org> | 2021-11-29 21:23:43 +0300 |
---|---|---|
committer | Jacques Lucke <jacques@blender.org> | 2021-11-29 21:23:43 +0300 |
commit | e7ae9f493aaa004caf3627489752139f177a807b (patch) | |
tree | 0877ae732204c3b6f5d5e9aa630340bd29087a1b /source/blender/compositor/operations/COM_ScaleOperation.cc | |
parent | aa7051c8f21a6b7e2b413b40317502e69764fa05 (diff) |
Fix T93310: crash due to broken image paths
The crash was caused by allocating an uninitialized amount of memory.
This fix initializes a bunch of variables that could cause the error.
It should be possible to also fix this in the function that actually uses
the uninitialized memory, but that could cause unknown consequences
that are a bit too risky for 3.0. Just initializing some variables should
be safe though. For more details see D13369.
Differential Revision: https://developer.blender.org/D13369
Diffstat (limited to 'source/blender/compositor/operations/COM_ScaleOperation.cc')
-rw-r--r-- | source/blender/compositor/operations/COM_ScaleOperation.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/source/blender/compositor/operations/COM_ScaleOperation.cc b/source/blender/compositor/operations/COM_ScaleOperation.cc index 350934b0d3b..5a351055241 100644 --- a/source/blender/compositor/operations/COM_ScaleOperation.cc +++ b/source/blender/compositor/operations/COM_ScaleOperation.cc @@ -223,7 +223,7 @@ void ScaleOperation::determine_canvas(const rcti &preferred_area, rcti &r_area) get_input_socket(IMAGE_INPUT_INDEX)->determine_canvas(preferred_area, r_area); if (image_determined) { rcti image_canvas = r_area; - rcti unused; + rcti unused = COM_AREA_NONE; NodeOperationInput *x_socket = get_input_socket(X_INPUT_INDEX); NodeOperationInput *y_socket = get_input_socket(Y_INPUT_INDEX); x_socket->determine_canvas(image_canvas, unused); @@ -503,7 +503,7 @@ void ScaleFixedSizeOperation::determine_canvas(const rcti &preferred_area, rcti rcti local_preferred = preferred_area; local_preferred.xmax = local_preferred.xmin + new_width_; local_preferred.ymax = local_preferred.ymin + new_height_; - rcti input_canvas; + rcti input_canvas = COM_AREA_NONE; const bool input_determined = get_input_socket(0)->determine_canvas(local_preferred, input_canvas); if (input_determined) { |