trunk: LPE Tool (experimental path effect) crash (rev >= 12532)

Bug #1238357 reported by su_v
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Inkscape
Fix Released
Wishlist
Markus Engel

Bug Description

Steps to reproduce:
1) enable the LPE tool:
=== modified file 'src/widgets/toolbox.cpp'
--- src/widgets/toolbox.cpp 2013-09-20 17:05:24 +0000
+++ src/widgets/toolbox.cpp 2013-10-07 22:30:28 +0000
@@ -1301,7 +1301,9 @@

         " <toolitem action='ToolConnector' />"

-// " <toolitem action='ToolLPETool' />"
+#ifdef LPE_ENABLE_TEST_EFFECTS
+ " <toolitem action='ToolLPETool' />"
+#endif
         " </toolbar>"
         "</ui>";

2) configure trunk build with
./configure CPPFLAGS="-DLPE_ENABLE_TEST_EFFECTS"
3) launch trunk build, draw an ellipse with 2 points using the LPE Tool

Expected result:
The basic features of the (unfinished) tool for the most parts had been functional (and didn't crash) up to revision 12531

Actual result:
After the merge of the C++-ification branch, inkscape crashes on the first click on the canvas with the tool:

Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x00007fff5f3ffff8
0x00000001000a7299 in SPLPEToolContext::root_handler ()
(gdb) bt
#0 0x00000001000a7299 in SPLPEToolContext::root_handler ()
#1 0x00000001000a72be in SPLPEToolContext::root_handler ()
#2 0x00000001000a72be in SPLPEToolContext::root_handler ()
#3 0x00000001000a72be in SPLPEToolContext::root_handler ()
#4 0x00000001000a72be in SPLPEToolContext::root_handler ()
#5 0x00000001000a72be in SPLPEToolContext::root_handler ()
#6 0x00000001000a72be in SPLPEToolContext::root_handler ()
<snip thousands of these messages … />

While disabled experimental tools/features always risk to bit-rot or break with major refactoring, it would be nice if this didn't yet happen to the Geom tools…

su_v (suv-lp)
summary: - trunk: LPE Tool (experimental path effect) crash (rev <= 12532)
+ trunk: LPE Tool (experimental path effect) crash (rev >= 12532)
Revision history for this message
Markus Engel (engelmarkus) wrote :

Try this patch, this fixes the stack overflow caused by endless recursion because the wrong function is called.

Changed in inkscape:
assignee: nobody → Markus Engel (engelmarkus)
status: New → In Progress
Revision history for this message
su_v (suv-lp) wrote :

@Markus - patch tested successfully with r12677 on OS X 10.7.5.

[ Do you ever take a break? ;-) Thanks a lot for your work and for responding so quickly to new reports! ]

Revision history for this message
Markus Engel (engelmarkus) wrote :

Fixed in r12678.
Well, these bugs are rather easy to fix. The complicated things are those I'm not working at ;) .

Changed in inkscape:
status: In Progress → Fix Released
su_v (suv-lp)
Changed in inkscape:
milestone: 0.49 → none
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.