Initial idea of running post-modifiers out of lock wasn't correct

The tihng here is: curve is getting modified by modifier stack
and then it's coordinates are restored. To be really safe we
need to do all this locked.
This commit is contained in:
Sergey Sharybin
2013-07-02 19:23:06 +00:00
parent d50ff36d3d
commit a03437cb1a

View File

@@ -1599,9 +1599,6 @@ static void do_makeDispListCurveTypes(Scene *scene, Object *ob, ListBase *dispba
cu->bb = MEM_callocN(sizeof(BoundBox), "boundbox");
}
/* XXX: Temp workaround for depsgraph_mt branch. */
BLI_unlock_thread(LOCK_CUSTOM1);
boundbox_dispbase(cu->bb, dispbase);
if (!forRender) {
@@ -1611,6 +1608,9 @@ static void do_makeDispListCurveTypes(Scene *scene, Object *ob, ListBase *dispba
if (!forOrco)
curve_calc_modifiers_post(scene, ob, dispbase, derivedFinal, forRender, renderResolution, originalVerts, deformedVerts);
/* XXX: Temp workaround for depsgraph_mt branch. */
BLI_unlock_thread(LOCK_CUSTOM1);
if (cu->flag & CU_DEFORM_FILL && !ob->derivedFinal) {
curve_to_filledpoly(cu, nubase, dispbase);
}