Hi, I think the problem lies in the fact that performUpdate() is called many times when we are dragging the nodes on the wheel. That is why, the computationally intensive snippet that I posted a few mails ago in this thread is causing a crash ? Can that be a reason ? If you take a look at the snippet, you'll understand what I mean.
And I really going by Krzysztof's reply, the placement new should not cause a crash the way I have used it in my code. Correct ?
On Wed, Aug 28, 2013 at 8:01 PM, Krzysztof Kosiński <tweenk.pl@...400...>wrote:
2013/8/28 Sebastian Götte <jaseg@...2974...>:
Be careful with placement new onto GObjects allocated by g_object_new.
g_object_new puts some GObject type info into the first few bytes of the struct which is trashed when placement new invokes the whole constructor hierarchy beginning at GObject (the C++ class) since this class' constructor can not preserve the type info field's memory content. You will not notice that in normal operation except when using dynamic GObject type casts (those CLASS_NAME(object) macros) which will throw warnings on the console, though not crash, or when using g_object_unref, since the reference counter is initialized with 1 but overwritten to 0. Also, at many points in Inkscape's code base there are asserts that will crash Inkscape when they encounter a GObject lacking type information.
You should never call placement new on the GObject itself. But you have to call it on its members.
Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more! Discover the easy way to master current and previous Microsoft technologies and advance your career. Get an incredible 1,500+ hours of step-by-step tutorial videos with LearnDevNow. Subscribe today and save! http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clk... _______________________________________________ Inkscape-devel mailing list Inkscape-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/inkscape-devel