[Bf-blender-cvs] [8202d2b3568] temp-lineart-contained: LineArt: Fix wrong user data reference.

YimingWu noreply at git.blender.org
Wed May 18 09:44:18 CEST 2022


Commit: 8202d2b3568dafc6866683779498ef9e412c5b68
Author: YimingWu
Date:   Mon May 9 22:06:02 2022 +0800
Branches: temp-lineart-contained
https://developer.blender.org/rB8202d2b3568dafc6866683779498ef9e412c5b68

LineArt: Fix wrong user data reference.

the user data in lineart_identify_loose_edges should be the `tls` one
rather than the plain `userdata`.

This will lead to incorrect address being accessed. Fixed now.

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

M	source/blender/gpencil_modifiers/intern/lineart/lineart_cpu.c

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

diff --git a/source/blender/gpencil_modifiers/intern/lineart/lineart_cpu.c b/source/blender/gpencil_modifiers/intern/lineart/lineart_cpu.c
index f93b2350098..31c41d2c9fb 100644
--- a/source/blender/gpencil_modifiers/intern/lineart/lineart_cpu.c
+++ b/source/blender/gpencil_modifiers/intern/lineart/lineart_cpu.c
@@ -1741,11 +1741,11 @@ static void lineart_add_loose_edge(LooseEdgeData *loose_data, MEdge *e)
   loose_data->loose_count++;
 }
 
-static void lineart_identify_loose_edges(void *__restrict userdata,
+static void lineart_identify_loose_edges(void *__restrict UNUSED(userdata),
                                          const int i,
-                                         const TaskParallelTLS *__restrict UNUSED(tls))
+                                         const TaskParallelTLS *__restrict tls)
 {
-  LooseEdgeData *loose_data = (LooseEdgeData *)userdata;
+  LooseEdgeData *loose_data = (LooseEdgeData *)tls->userdata_chunk;
   Mesh *me = loose_data->me;
 
   if (me->medge[i].flag & ME_LOOSEEDGE) {



More information about the Bf-blender-cvs mailing list