Inkscape (all versions) crashes when the path is accidentally dragged instead of the node

Bug #1691406 reported by Zhart
68
This bug affects 11 people
Affects Status Importance Assigned to Milestone
Inkscape
Fix Released
High
Patrick Storz

Bug Description

System info: Ubuntu 16.04, Inkscape 0.92

When the "Edit paths" tool (F2) is activated, you can drag both nodes and paths. So, with regular node editing, it often happens that when you try to drag a node, it is accidentally captured path near the node. At the same time, the contour is instantly becomes very stretched (a very long handle is formed), and immediately after that, the Inkscape crashes (in most cases, a backup file is created automatically, but not always). Inkscape behaves this way from the oldest versions to the latest. This is very annoying and interferes with the work, and in some cases the results of the work are lost. Is it possible to somehow prevent such crashes?

P.S.: By the way, I tried to achieve this result (crash by editing nodes) intentionally, but I did not succeed. It always happens by accident while trying to move nodes.

Revision history for this message
Patrick Storz (ede123) wrote :

Probably the same issue as bug #1686132.

As is currently not reproducible (you noted that yourself), it's impossible to debug and therefore to fix, so if you should find steps to reproduce please let us know.

Revision history for this message
Zhart (zhart) wrote :

I learned how to reproduce this problem!

1. Open Inkscape, activate "Bezier curves" tool ("B" or "Shift+F6" shortcut), create horizontal stroke with 2 nodes and some width (6px for example).
2. Zoom view to maximum, focus on one of ending nodes.
3. Activate "Edit nodes" tool ("N" or "F2" shortcut).
4. Try to drag area near node, but not on path, nearer to the edge is the best (as cursor position on attached image).
5. Voila! Inkscape crashes after step 4.

I hope this helps fix the bug. It is really very annoying and for this reason Inkscape crash happens again and again.

Revision history for this message
Alvin Penner (apenner) wrote :

crash confirmed on Windows 10, Inkscape 0.92.1 r15371
using the attached drawing

DOS error message is:
terminate called after throwing an instance of 'Geom::ContinuityError'
  what(): lib2geom exception: Non-contiguous path (E:\Temp\Inkscape\0.92.1\inkscape-0.92.1_32\src\2geom\path.cpp:1043)

Emergency save activated!

Changed in inkscape:
status: New → Confirmed
Revision history for this message
Alvin Penner (apenner) wrote :

using comment 2, confirming point 4, namely do not grab the line itself, but grab an area 'near' the line, perhaps on the opposite side of the endpoint

Revision history for this message
Patrick Storz (ede123) wrote :

I can also confirm the steps to reproduce. Great!

It also works nicely with cusp nodes when grabbing on the "cusp" part (which should probably not be draggable at all?).

Patrick Storz (ede123)
Changed in inkscape:
importance: Undecided → High
Revision history for this message
Hachmann (marenhachmann) wrote :
Revision history for this message
Patrick Storz (ede123) wrote :

Fix committed in
  https://gitlab.com/inkscape/inkscape/commit/2066fee4eb54540e9408478b936227071fd0a243

This effectively disables the possibility to drag a path at its tip or at its joins which caused the undefined behavior eventually causing the crash.

There still seems to be an unsolved variant of this issue (see bug #1699634) which actually occurs when not dragging at one of those positions but "properly" in between two nodes.

Changed in inkscape:
status: Confirmed → Fix Committed
assignee: nobody → Eduard Braun (eduard-braun2)
milestone: none → 0.93
tags: added: backport-proposed
Revision history for this message
Patrick Storz (ede123) wrote :

For future reference: Regression likely introduced with
  https://gitlab.com/inkscape/inkscape/commit/1112ab0a12fc0cb5a6b00d1bbd5b100c55eedff8

Revision history for this message
Patrick Storz (ede123) wrote :
Changed in inkscape:
milestone: 0.93 → 0.92.3
tags: removed: backport-proposed
Bryce Harrington (bryce)
Changed in inkscape:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.