Fix for crash in Freestyle with sketchy chaining and Bezier Curve geometry modifier.
authorTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>
Tue, 28 May 2013 00:35:29 +0000 (00:35 +0000)
committerTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>
Tue, 28 May 2013 00:35:29 +0000 (00:35 +0000)
commit1ab7a6f9af2fa0124fafee84d96099de9ec051e3
treefe91c1c7e4e9a736f2f2e1ff091ee188dc3a72e7
parent5de17660e20efb28719847f24f4b99cd99f1772d
Fix for crash in Freestyle with sketchy chaining and Bezier Curve geometry modifier.

When the sketchy chaining is used, stroke geometry may contain a 180-degree U-turn.
If the 'error' parameter of the Bezier Curve geometry modifier is small (e.g., 10),
Bezier curve fitting will recursively split the original stroke into two pieces.
This splitting may take place at a U-turn point, causing a numerical singularity issue
that leads to a crash.

Problem report by edna in the BA Freestyle thread, with an example .blend to reproduce
the problem.  Thanks a lot!
source/blender/freestyle/intern/geometry/FitCurve.cpp