Fix 1947076: Infinite error message loop on split tangents.
authordooglus <dooglus@1f10aa63-cdf2-0310-b900-c93c546f37ac>
Sun, 20 Apr 2008 15:29:03 +0000 (15:29 +0000)
committerdooglus <dooglus@1f10aa63-cdf2-0310-b900-c93c546f37ac>
Sun, 20 Apr 2008 15:29:03 +0000 (15:29 +0000)
git-svn-id: http://svn.voria.com/code@2023 1f10aa63-cdf2-0310-b900-c93c546f37ac

synfig-studio/trunk/src/gtkmm/workarea.cpp

index 97c0a6d..5f17dc1 100644 (file)
@@ -1371,15 +1371,19 @@ WorkArea::on_drawing_area_event(GdkEvent *event)
                                                // if the tangent isn't split, then split it
                                                if (!((*(parent_value_node->get_link("split")))(get_time()).get(bool())))
                                                {
-                                                       get_canvas_view()->canvas_interface()->
+                                                       if (get_canvas_view()->canvas_interface()->
                                                                change_value(synfigapp::ValueDesc(parent_value_node,
                                                                                                                                  parent_value_node->get_link_index_from_name("split")),
                                                                                         true);
-                                                       // rebuild the ducks from scratch, so the tangents ducks aren't connected
-                                                       get_canvas_view()->rebuild_ducks();
-
-                                                       // reprocess the mouse click
-                                                       return on_drawing_area_event(event);
+                                                       {
+                                                               // rebuild the ducks from scratch, so the tangents ducks aren't connected
+                                                               get_canvas_view()->rebuild_ducks();
+
+                                                               // reprocess the mouse click
+                                                               return on_drawing_area_event(event);
+                                                       }
+                                                       else
+                                                               return true;
                                                }
                                        } else {
                                                // I don't know how to access the vertex from the tangent duck when originally drawing the bline in the bline tool