Hello
It looks like the recent changes to make ellipses use the correct SVG element cause incomplete undo events being left on the undo stack when a document containing old ellipses is loaded. To see for yourself, load the attached document and press Ctrl+Z.
This is causing crashes in some scenarios, one of which is detailed here: https://bugs.launchpad.net/inkscape/+bug/1001756
The culprit is the update_patheffect() function of SPGenericEllipse, which writes to the XML tree and is called by document->ensureUpToDate(). This write happens even if the object in question does not have any path effect. Under the SP tree model, writing to the XML tree in response to view changes or update events is not permitted.
For now, I have hacked around this by disabling undo tracking when ensureUpToDate() is called from SPDesktop::init(), but the proper solution would be to avoid rewriting the LPE result when loading, and prevent the update_patheffect() function from rewriting shapes which do not have any LPEs.
Regards, Krzysztof
participants (1)
-
Krzysztof Kosiński