Internal error caused when modifying path segment between duplicated, smoothed nodes.
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Inkscape |
Triaged
|
High
|
Unassigned |
Bug Description
When attempting to modify a path segment between duplicated smoothed nodes, an internal error is thrown and Inkscape crashes.
#######
To replicate the error:
1. Create new file
2. Using the pencil tool, create a triangle with three nodes
3. Switch to the node tool (F2)
4. Select all nodes (Ctrl+A)
5. Duplicate nodes (Shift+D)
6. With all nodes still selected, convert to smooth nodes (Shift+S)
7. Using the cursor, attempt to modify a path segment
8. A dialogue box appears, with words to the effect of "Inkscape internal Error. Inkscape will now close. Automatic backups of the file have been saved to xxPATHxx". This dialogue is only open very briefly.
9. Inkscape closes
See the attached file (bug.svg) for an example
#######
Workaround 1
1. Select all nodes
2. Convert them into cusp nodes (Shift+C)
Segments can now be modified at will
Workaround 2
1. Select duplicate node
2. Delete until only a single node remains at each site
Segments can now be modified at will
#######
Desired behaviour
1. Inkscape should not crash
2. An informative dialogue box should appear (Something like "Illegal operation: multiple smoothed nodes on path", maybe)
3. Dialogue should stay open for long enough for the user to read it
4. The user should have the opportunity to delete or modify the offending nodes
#######
System details
Inkscape 0.91 r13725
Ubuntu 15.10
Changed in inkscape: | |
importance: | Undecided → High |
tags: | added: crash node-editing |
- confirmed on Windows 7 (32 bit), Inkscape 0.91 r13725 (Jan 30 2015)
- Dos exit message is: ContinuityError ' path.cpp: 386)
terminate called after throwing an instance of 'Geom::
what(): lib2geom exception: Non-contiguous path (src/2geom/
Emergency save activated!
Emergency save completed. Inkscape will close now.
If you can reproduce this crash, please file a bug at www.inkscape.org
with a detailed description of the steps leading to the crash, so we can fix it.
terminate called recursively