-diff -ur pstoedit-3.70/src/drvmagick++.cpp pstoedit-3.70-im7/src/drvmagick++.cpp
---- pstoedit-3.70/src/drvmagick++.cpp 2015-01-01 18:05:33.000000000 +0100
-+++ pstoedit-3.70-im7/src/drvmagick++.cpp 2016-12-26 23:26:10.491193646 +0100
-@@ -120,14 +120,14 @@
- const basedrawingelement & elem = pathElement(n);
- switch (elem.getType()) {
- case moveto:{
-- const Point & p = elem.getPoint(0);
-+ const ::Point & p = elem.getPoint(0);
- const Magick::Coordinate coord(p.x_ + x_offset,
- currentDeviceHeight - p.y_ + y_offset);
- vpath.push_back(PathMovetoAbs(coord));
- }
- break;
- case lineto:{
-- const Point & p = elem.getPoint(0);
-+ const ::Point & p = elem.getPoint(0);
- const Magick::Coordinate coord(p.x_ + x_offset,
- currentDeviceHeight - p.y_ + y_offset);
- vpath.push_back(PathLinetoAbs(coord));
-@@ -137,9 +137,9 @@
- vpath.push_back(PathClosePath());
- break;
- case curveto:{
-- const Point & p0 = elem.getPoint(0);
-- const Point & p1 = elem.getPoint(1);
-- const Point & p2 = elem.getPoint(2);
-+ const ::Point & p0 = elem.getPoint(0);
-+ const ::Point & p1 = elem.getPoint(1);
-+ const ::Point & p2 = elem.getPoint(2);
- vpath.
- push_back(PathCurvetoAbs
- (PathCurvetoArgs
-@@ -278,7 +278,7 @@
- dasharray[i] = d_numbers[i];
- }
- dasharray[dp.nrOfEntries] = 0; // mark last element
-- drawList.push_back(DrawableDashArray(dasharray)); // pulls a copy, so we are the owner of dasharray
-+ drawList.push_back(DrawableStrokeDashArray(dasharray)); // pulls a copy, so we are the owner of dasharray
- //?? DrawableDashOffset
- delete[]dasharray;
- }
-@@ -300,7 +300,9 @@
- #ifndef onedrawlist
- drawList.push_back(DrawablePopGraphicContext());
- // Draw everything using completed drawing list
-- imageptr->draw(drawList);
-+ std::vector<Magick::Drawable> drawVect;
-+ copy(drawList.begin(),drawList.end(),back_inserter(drawVect));
-+ imageptr->draw(drawVect);
- #endif
-
- }