diff options
| author | su_v <suv-sf@users.sourceforge.net> | 2013-03-15 17:24:54 +0000 |
|---|---|---|
| committer | ~suv <suv-sf@users.sourceforge.net> | 2013-03-15 17:24:54 +0000 |
| commit | 5068de8914944f7316bdd5fbc3d1fbc61736a99f (patch) | |
| tree | d7ccf7e4babe1b72b98ef42c262b12d9a8ca870b /src/2geom/basic-intersection.cpp | |
| parent | merge from trunk (r12201) (diff) | |
| parent | Fix missing Gtkmm/Glib headers for Gtk+ 3 build (diff) | |
| download | inkscape-5068de8914944f7316bdd5fbc3d1fbc61736a99f.tar.gz inkscape-5068de8914944f7316bdd5fbc3d1fbc61736a99f.zip | |
merge from trunk (r12209)
(bzr r11668.1.58)
Diffstat (limited to 'src/2geom/basic-intersection.cpp')
| -rw-r--r-- | src/2geom/basic-intersection.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/2geom/basic-intersection.cpp b/src/2geom/basic-intersection.cpp index 3be6792b9..544bf0dd1 100644 --- a/src/2geom/basic-intersection.cpp +++ b/src/2geom/basic-intersection.cpp @@ -64,7 +64,12 @@ void find_intersections(std::vector< std::pair<double, double> > & xs, void split(vector<Point> const &p, double t, vector<Point> &left, vector<Point> &right) { const unsigned sz = p.size(); - Geom::Point Vtemp[sz][sz]; + + Geom::Point **Vtemp = new Geom::Point* [sz]; + + for (unsigned int i = 0; i < sz; ++i) { + Vtemp[i] = new Geom::Point[sz]; + } /* Copy control points */ std::copy(p.begin(), p.end(), Vtemp[0]); @@ -82,6 +87,11 @@ void split(vector<Point> const &p, double t, left[j] = Vtemp[j][0]; for (unsigned j = 0; j < sz; j++) right[j] = Vtemp[sz-1-j][j]; + + for (unsigned int i = 0; i < sz; ++i) + delete[] Vtemp[i]; + + delete[] Vtemp; } |
