[Bf-blender-cvs] [f29cf28bab4] soc-2019-npr: LANPR: Fix pointer mistakes.

YimingWu noreply at git.blender.org
Mon Jun 24 10:16:14 CEST 2019


Commit: f29cf28bab4349e98f15d06f1b4ff370d003e72a
Author: YimingWu
Date:   Mon Jun 24 16:15:39 2019 +0800
Branches: soc-2019-npr
https://developer.blender.org/rBf29cf28bab4349e98f15d06f1b4ff370d003e72a

LANPR: Fix pointer mistakes.

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

M	source/blender/draw/engines/lanpr/lanpr_access.c
M	source/blender/draw/engines/lanpr/lanpr_access.h
M	source/blender/draw/engines/lanpr/lanpr_chain.c
M	source/blender/draw/engines/lanpr/lanpr_ops.c
M	source/blender/gpencil_modifiers/intern/MOD_gpencilstroke.c

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

diff --git a/source/blender/draw/engines/lanpr/lanpr_access.c b/source/blender/draw/engines/lanpr/lanpr_access.c
index 32e0501c2b8..3cd915b9713 100644
--- a/source/blender/draw/engines/lanpr/lanpr_access.c
+++ b/source/blender/draw/engines/lanpr/lanpr_access.c
@@ -235,9 +235,8 @@ void lanpr_generate_gpencil_geometry(
 }
 
 void lanpr_generate_gpencil_from_chain(
-    GpencilModifierData *md, Depsgraph *depsgraph, Object *ob, bGPDlayer *gpl, bGPDframe *gpf)
+    Depsgraph *depsgraph, Object *ob, bGPDlayer *gpl, bGPDframe *gpf)
 {
-  StrokeGpencilModifierData *gpmd = (StrokeGpencilModifierData *)md;
   Scene *scene = DEG_get_evaluated_scene(depsgraph);
   LANPR_RenderBuffer *rb = lanpr_share.render_buffer_shared;
 
@@ -267,7 +266,7 @@ void lanpr_generate_gpencil_from_chain(
     if (!rlc->object_ref)
       continue;  // XXX: intersection lines are lost
 
-    if (ob && ob != rlc->object_ref->id.orig_id)
+    if (ob && &ob->id != rlc->object_ref->id.orig_id)
       continue;
 
     int array_idx = 0;
diff --git a/source/blender/draw/engines/lanpr/lanpr_access.h b/source/blender/draw/engines/lanpr/lanpr_access.h
index 5703cc2e52e..82168e71942 100644
--- a/source/blender/draw/engines/lanpr/lanpr_access.h
+++ b/source/blender/draw/engines/lanpr/lanpr_access.h
@@ -14,7 +14,7 @@ void lanpr_generate_gpencil_geometry(
     GpencilModifierData *md, Depsgraph *depsgraph, Object *ob, bGPDlayer *gpl, bGPDframe *gpf);
 
 void lanpr_generate_gpencil_from_chain(
-    GpencilModifierData *md, Depsgraph *depsgraph, Object *ob, bGPDlayer *gpl, bGPDframe *gpf);
+    Depsgraph *depsgraph, Object *ob, bGPDlayer *gpl, bGPDframe *gpf);
 
 void lanpr_update_data_for_external(Depsgraph *depsgraph);
 
diff --git a/source/blender/draw/engines/lanpr/lanpr_chain.c b/source/blender/draw/engines/lanpr/lanpr_chain.c
index 1e712ac72cf..efbd92413d0 100644
--- a/source/blender/draw/engines/lanpr/lanpr_chain.c
+++ b/source/blender/draw/engines/lanpr/lanpr_chain.c
@@ -602,7 +602,7 @@ void lanpr_connect_chains_image_space(LANPR_RenderBuffer *rb, int do_geometry_sp
         break;
       for (cre = ba->linked_chains.first; cre; cre = next_cre) {
         next_cre = (LANPR_ChainRegisterEntry *)cre->item.next;
-        if (cre->rlc->object_ref != rlc)
+        if (cre->rlc->object_ref != rlc->object_ref)
           continue;
         if (cre->rlc == rlc ||
             ((LANPR_RenderLineChainItem *)cre->rlc->chain.first)->occlusion != occlusion)
@@ -644,6 +644,8 @@ void lanpr_connect_chains_image_space(LANPR_RenderBuffer *rb, int do_geometry_sp
         break;
       for (cre = ba->linked_chains.first; cre; cre = next_cre) {
         next_cre = (LANPR_ChainRegisterEntry *)cre->item.next;
+        if (cre->rlc->object_ref != rlc->object_ref)
+          continue;
         if (cre->rlc == rlc ||
             ((LANPR_RenderLineChainItem *)cre->rlc->chain.first)->occlusion != occlusion)
           continue;
diff --git a/source/blender/draw/engines/lanpr/lanpr_ops.c b/source/blender/draw/engines/lanpr/lanpr_ops.c
index be786b5829a..602a6fab6cc 100644
--- a/source/blender/draw/engines/lanpr/lanpr_ops.c
+++ b/source/blender/draw/engines/lanpr/lanpr_ops.c
@@ -4312,7 +4312,7 @@ void lanpr_update_gp_strokes_recursive(Depsgraph *dg, struct Collection *col, in
           gpf = BKE_gpencil_frame_addnew(gpl, frame);
           BKE_gpencil_free_strokes(gpf);  // force clear now
 
-          lanpr_generate_gpencil_from_chain(md, dg, ob, gpl, gpf);
+          lanpr_generate_gpencil_from_chain(dg, ob, gpl, gpf);
         }
       }
     }
diff --git a/source/blender/gpencil_modifiers/intern/MOD_gpencilstroke.c b/source/blender/gpencil_modifiers/intern/MOD_gpencilstroke.c
index c3d4f930c88..c17b9c0d73d 100644
--- a/source/blender/gpencil_modifiers/intern/MOD_gpencilstroke.c
+++ b/source/blender/gpencil_modifiers/intern/MOD_gpencilstroke.c
@@ -84,7 +84,7 @@ static void copyData(const GpencilModifierData *md, GpencilModifierData *target)
 static void deformStroke(
     GpencilModifierData *md, Depsgraph *depsgraph, Object *ob, bGPDlayer *gpl, bGPDframe *gpf)
 {
-  lanpr_generate_gpencil_from_chain(md, depsgraph, ob, gpl, gpf);
+  lanpr_generate_gpencil_from_chain(depsgraph, ob, gpl, gpf);
 }
 
 static void bakeModifier(Main *UNUSED(bmain),



More information about the Bf-blender-cvs mailing list