diff options
author | Antonio Vazquez <blendergit@gmail.com> | 2022-03-26 15:20:34 +0300 |
---|---|---|
committer | Philipp Oeser <info@graphics-engineer.com> | 2022-03-28 17:12:04 +0300 |
commit | 5eca3278c5d7198ce8a13a8f8a54b93456cc4b4f (patch) | |
tree | 0ea85eb21c19cacad0ee09de3fdb83f716410654 | |
parent | 694e20b14152d7b54af217b0d7abd07dae222670 (diff) |
Fix T96790: Gpencil Inverted Fill makes extra stroke at origin
The problem was the stroke was created in the inverted loop before checking if the total of points is 0 and exit the loop.
Also some code Cleanup.
-rw-r--r-- | source/blender/editors/gpencil/gpencil_fill.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/source/blender/editors/gpencil/gpencil_fill.c b/source/blender/editors/gpencil/gpencil_fill.c index 81a64a91917..9aa5599f41c 100644 --- a/source/blender/editors/gpencil/gpencil_fill.c +++ b/source/blender/editors/gpencil/gpencil_fill.c @@ -2129,18 +2129,18 @@ static bool gpencil_do_frame_fill(tGPDfill *tgpf, const bool is_inverted) int totpoints_prv = 0; int loop_limit = 0; while (totpoints > 0) { - /* analyze outline */ + /* Analyze outline. */ gpencil_get_outline_points(tgpf, (totpoints == 1) ? true : false); - /* create array of points from stack */ + /* Create array of points from stack. */ totpoints = gpencil_points_from_stack(tgpf); + if (totpoints > 0) { + /* Create z-depth array for reproject. */ + gpencil_get_depth_array(tgpf); - /* create z-depth array for reproject */ - gpencil_get_depth_array(tgpf); - - /* create stroke and reproject */ - gpencil_stroke_from_buffer(tgpf); - + /* Create stroke and reproject. */ + gpencil_stroke_from_buffer(tgpf); + } if (is_inverted) { gpencil_erase_processed_area(tgpf); } |