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!
Inkscape-devel mailing list

Arshdeep Singh
Third Year, Computer Engineering
Delhi Technological University
Ph: +91-9654115614