aboutsummaryrefslogtreecommitdiffstats
path: root/graphics
diff options
context:
space:
mode:
authorsunpoet <sunpoet@FreeBSD.org>2019-12-11 01:16:15 +0800
committersunpoet <sunpoet@FreeBSD.org>2019-12-11 01:16:15 +0800
commitb70468e8fec62be2c04b658cd7548c4efaef54a4 (patch)
tree9a8255a2c3aa7bdfdef94470731180196294d6c3 /graphics
parent5211c15fb77ff4362e20b4318a7f5a6262be1213 (diff)
downloadfreebsd-ports-gnome-b70468e8fec62be2c04b658cd7548c4efaef54a4.tar.gz
freebsd-ports-gnome-b70468e8fec62be2c04b658cd7548c4efaef54a4.tar.zst
freebsd-ports-gnome-b70468e8fec62be2c04b658cd7548c4efaef54a4.zip
Fix build with geos 3.8.0
Obtained from: https://git.slackbuilds.org/slackbuilds/tree/gis/osgEarth/geos-3_8-support.patch
Diffstat (limited to 'graphics')
-rw-r--r--graphics/osgearth/files/patch-src-osgEarthSymbology-GEOS.cpp70
1 files changed, 70 insertions, 0 deletions
diff --git a/graphics/osgearth/files/patch-src-osgEarthSymbology-GEOS.cpp b/graphics/osgearth/files/patch-src-osgEarthSymbology-GEOS.cpp
new file mode 100644
index 000000000000..90d36828da70
--- /dev/null
+++ b/graphics/osgearth/files/patch-src-osgEarthSymbology-GEOS.cpp
@@ -0,0 +1,70 @@
+Obtained from: https://git.slackbuilds.org/slackbuilds/tree/gis/osgEarth/geos-3_8-support.patch
+
+--- src/osgEarthSymbology/GEOS.cpp.orig 2019-04-19 16:45:18 UTC
++++ src/osgEarthSymbology/GEOS.cpp
+@@ -49,7 +49,7 @@ using namespace geos::operation;
+
+ namespace
+ {
+- geom::CoordinateSequence*
++ std::unique_ptr<geom::CoordinateSequence>
+ vec3dArray2CoordSeq( const Symbology::Geometry* input, bool close, const geom::CoordinateSequenceFactory* factory )
+ {
+ bool needToClose = close && input->size() > 2 && input->front() != input->back();
+@@ -64,7 +64,7 @@ namespace
+ {
+ coords->push_back( coords->front() );
+ }
+- geom::CoordinateSequence* seq = factory->create( coords );
++ std::unique_ptr<geom::CoordinateSequence> seq = factory->create( coords );
+
+ return seq;
+ }
+@@ -108,7 +108,8 @@ namespace
+ else
+ {
+ // any other type will at least contain points:
+- geom::CoordinateSequence* seq = 0L;
++ std::unique_ptr<geom::CoordinateSequence> seq = 0L;
++
+ try
+ {
+ switch( input->getType() )
+@@ -119,24 +120,24 @@ namespace
+
+ case Symbology::Geometry::TYPE_POINTSET:
+ seq = vec3dArray2CoordSeq( input, false, f->getCoordinateSequenceFactory() );
+- if ( seq ) output = f->createPoint( seq );
++ if ( seq ) output = f->createPoint( *seq );
+ break;
+
+ case Symbology::Geometry::TYPE_LINESTRING:
+ seq = vec3dArray2CoordSeq( input, false, f->getCoordinateSequenceFactory() );
+- if ( seq ) output = f->createLineString( seq );
++ if ( seq ) output = f->createLineString( *seq );
+ break;
+
+ case Symbology::Geometry::TYPE_RING:
+ seq = vec3dArray2CoordSeq( input, true, f->getCoordinateSequenceFactory() );
+- if ( seq ) output = f->createLinearRing( seq );
++ if ( seq ) output = f->createLinearRing( *seq );
+ break;
+
+ case Symbology::Geometry::TYPE_POLYGON:
+ seq = vec3dArray2CoordSeq( input, true, f->getCoordinateSequenceFactory() );
+ geom::LinearRing* shell = 0L;
+ if ( seq )
+- shell = f->createLinearRing( seq );
++ shell = f->createLinearRing( *seq );
+
+ if ( shell )
+ {
+@@ -155,7 +156,7 @@ namespace
+ holes = 0L;
+ }
+ }
+- output = f->createPolygon( shell, holes );
++ output = f->createPolygon( shell, (std::vector<geom::LinearRing * >*)holes );
+ }
+
+ break;