I’m quite stumped with this bug and maybe you can have some other ideas.
From I don’t know when, the Advanced Outline render has been screwed up on OSX 10.9. See attachment:
Clearly there is a mistake on one of the points added to the sides of the outline shape. Somehow the added point for the position of the widthpoint is wrongly the position of the first point of the bezier instead of what it should be.
I’ve been discussing this with Jcome that have available OSX 10.9 as well and he confirms that building latest master produces this kind of render. On the other hand, packages created with OSX 10.7 and running on 10.9 DOESN’T produce the render artifact (!).
In order to know when this has started to happen I needed to compile an earlier version on OSX 10.9. For that I need to add three (two, depending on how much you get back) commits to fix some compiling errors so it is not easy to debug.
I’ve have gone back up to February 22nd 2014 with the same result. This commit is before the ValueBase refactor made by Ivan. See Advanced Outline history:
github.com/synfig/synfig/commit … utline.cpp
So I suspect that I won’t get good render results going further back in time in the commit history because the algorithm to produce the Advanced outline hasn’t changed basically since 2 years ago…
So the thing is: Is this bug related to the compiler itself?
The next steps to do are to debug the algorithm to know when that wrong point is being produced but that’s time consuming
If someone else has other idea about why could this happen (usage of pointers, some kind of different interpretation between C++03 and C++11, clang issues, etc.) I would be highly appreciated.