Crashes applying "Path along path" effect to closed contour

Bug #168865 reported by Bug Importer
0
Affects Status Importance Assigned to Milestone
Inkscape
Fix Released
High
Johan Engelen

Bug Description

Inkscape 0.46+devel from SVN at 02.09.2007.

For example, create an ellipse, apply "Path -> Object to path". Press
Ctrl-Shift-7, select "Path along path" and press Apply. Et volia! :)
Inkscape writes to console:

glibmm-ERROR **:
unhandled exception (type std::exception) in signal handler:
what: vector::_M_range_check

aborting...

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 after throwing an instance of 'std::out_of_range'
  what(): vector::_M_range_check

After some experiments, I found that one dirty hack solves this problem: in
file src/live_effects/lpe-skeletalstrokes.cpp, in function
LPESkeletalStrokes::doEffect, change line
"n = force_continuity(remove_short_cuts(n,.1));"
to
    try
    {
      n = force_continuity(remove_short_cuts(n, .1));
    }
    catch (std::exception)
    {
      printf("Force_continuity exception\n");
    }

I.e., a bug is in "force_continuity" or in "remove_short_cuts" functions.

Revision history for this message
Johan Engelen (johanengelen) wrote :

Originator: NO

Not fixed yet, but does not crash any more.

Ryan Lerch (ryanlerch)
Changed in inkscape:
importance: Critical → High
status: New → Confirmed
Revision history for this message
Johan Engelen (johanengelen) wrote :

Exception can no longer occur, since no zerolength pw<d2>'s can happen after toPwSb().
Thanks Mental!

Changed in inkscape:
status: Confirmed → Fix Released
Changed in inkscape:
milestone: none → 0.46
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.