[Bf-blender-cvs] [5eca3278c5d] blender-v3.1-release: Fix T96790: Gpencil Inverted Fill makes extra stroke at origin
Antonio Vazquez
noreply at git.blender.org
Mon Mar 28 16:26:58 CEST 2022
Commit: 5eca3278c5d7198ce8a13a8f8a54b93456cc4b4f
Author: Antonio Vazquez
Date: Sat Mar 26 13:20:34 2022 +0100
Branches: blender-v3.1-release
https://developer.blender.org/rB5eca3278c5d7198ce8a13a8f8a54b93456cc4b4f
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.
===================================================================
M source/blender/editors/gpencil/gpencil_fill.c
===================================================================
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);
}
More information about the Bf-blender-cvs
mailing list