Re: Crash in GEOS iterating through the layers in a PBF-file loaded with the MVT driver in GDAL 3.12.4#2

Daniel Baston via gdal-dev <[email protected]> Mon, 8 Jun 2026 08:21:22 -0400
Newsgroups gmane.comp.gis.gdal.devel
Message-ID <CA+K_q_oN=CzP3z8YX6ONhzLkcHjYdBF2Dt0iK8We=M5hXLOjFQ@mail.gmail.com>
--===============7850802071373679248==
Content-Type: multipart/alternative; boundary="0000000000003c3f240653bd0d74"

--0000000000003c3f240653bd0d74
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hello Roman,

Could you please share your input file, either in a GitHub issue or to me
by email? I don't recall a recent bug like this, so you may have found a
new issue.

Thanks,
Dan

On Mon, Jun 8, 2026 at 7:17=E2=80=AFAM Roman Pl=C3=B6hn via gdal-dev <
[email protected]> wrote:

> Hello,
>
> in our company we since many years use GDAL (for building C++ software fo=
r
> Windows only) from VCPKG.
>
> The GDAL version used in the most recent VCPKG is 3.12.4#2, in which I
> encounter a reproducable crash in RELEASE builds when opening a file
> downloaded from a Map-Tiles server, as soon as I iterate through its laye=
rs.
>
> My main question about this problem is if this problem is already fixed i=
n
> a more recent GDAL version ... if so I could send the VCPKG-maintainers a
> feature request to ask them to update the GDAL package in there to a
> version, where it doesn't crash anymore.
>
> Below is a description of the problem. If needed I can send the file in
> question.
>
> For us this is a serioes issue, because it hinders us from using a recent
> version of VCPKG at all (we even use the dependend lib mapnik, which need=
s
> GDAL).
>
> I really hope someone can help me ...
>
> Best regards,
>
> have a nice day,
>
> Roman
>
>
>
>
> The function I use to reproduce the crash is quite simpel:
>
> auto GetLayerFeaureFIDs( OGRLayer& layer ) -> std::vector< GIntBig >
> {
> std::cout << "Processing layer '" << layer.GetName() << "'...\n";
>
> std::vector< GIntBig > fids;
>
> OGRFeature* feature =3D layer.GetNextFeature();
>
> for ( ; feature !=3D nullptr; feature =3D layer.GetNextFeature() )
> {
> if ( nullptr =3D=3D feature )
> {
> std::cout << "Got a null feature from layer '" << layer.GetName() << "'.
> Skipping it.\n";
> continue;
> }
>
> fids.push_back( feature->GetFID() );
> }
>
> return fids;
> }
>
> It doesn't happen for each layer, i.e. in my DEBUG build, where no crash
> happens, an error is reported about a thrown TopologyException:
>
> Debug: GDAL: GDALOpen(C:\Projects\TestGdal\x64\Debug\43.pbf,
> this=3D000001D7A8789410) succeeds as MVT. (code: 0)
> Processing layer 'boundary'...
> Processing layer 'landcover'...
> Failure: TopologyException: side location conflict at 3934.7142857142858
> 3859.8571428571427. This can occur if the input geometry is invalid. (cod=
e:
> 1)
> Processing layer 'landuse'...
> Failure: TopologyException: side location conflict at 494.19230769230768
> 2796.5769230769229. This can occur if the input geometry is invalid. (cod=
e:
> 1)
> ...
>
> The crash is a Access Violation, the top of the call-stack looks like thi=
s:
>
>   [Inline Frame] geos.dll!geos::geom::CoordinateXY::equals2D(const
> geos::geom::CoordinateXY &) Line 106 C++
>   [Inline Frame]
> geos.dll!geos::index::kdtree::KdTree::queryNodePoint(geos::index::kdtree:=
:KdNode
> * currentNode, const geos::geom::Coordinate & odd, bool) Line 235 C++
>   geos.dll!geos::index::kdtree::KdTree::query(const geos::geom::Coordinat=
e
> & queryPt) Line 289 C++
>   [Inline Frame]
> geos.dll!geos::noding::snapround::HotPixelIndex::find(const
> geos::geom::Coordinate &) Line 146 C++
>   geos.dll!geos::noding::snapround::HotPixelIndex::addRounded(const
> geos::geom::CoordinateXYZM & pRound) Line 48 C++
>   [Inline Frame]
> geos.dll!geos::noding::snapround::HotPixelIndex::add(const
> geos::geom::CoordinateXYZM &) Line 90 C++
>   [Inline Frame]
> geos.dll!geos::noding::snapround::HotPixelIndex::addNodes::__l2::<lambda_=
8c47a75e4bac7a256ab75080e3e5d5f0>::operator()(const
> geos::geom::CoordinateXYZM &) Line 127 C++
>
> geos.dll!geos::geom::CoordinateSequence::forEach<<lambda_8c47a75e4bac7a25=
6ab75080e3e5d5f0>>(geos::noding::snapround::HotPixelIndex::addNodes::__l2::=
<lambda_8c47a75e4bac7a256ab75080e3e5d5f0>
> && fun) Line 701 C++
>   geos.dll!geos::noding::snapround::HotPixelIndex::addNodes(const
> geos::geom::CoordinateSequence * pts) Line 130 C++
>
> geos.dll!geos::noding::snapround::SnapRoundingNoder::addIntersectionPixel=
s(std::vector<geos::noding::SegmentString
> *,std::allocator<geos::noding::SegmentString *>> & segStrings) Line 85 C+=
+
>
> geos.dll!geos::noding::snapround::SnapRoundingNoder::snapRound(std::vecto=
r<geos::noding::SegmentString
> *,std::allocator<geos::noding::SegmentString *>> & inputSegStrings,
> std::vector<geos::noding::SegmentString
> *,std::allocator<geos::noding::SegmentString *>> & resultNodedSegments)
> Line 70 C++
>
> geos.dll!geos::operation::overlayng::EdgeNodingBuilder::node(std::vector<=
geos::noding::SegmentString
> *,std::allocator<geos::noding::SegmentString *>> * segStrings) Line 122 C=
++
>   geos.dll!geos::operation::overlayng::EdgeNodingBuilder::build(const
> geos::geom::Geometry * geom0, const geos::geom::Geometry * geom1) Line 10=
4
> C++
>   geos.dll!geos::operation::overlayng::OverlayNG::computeEdgeOverlay()
> Line 227 C++
>   geos.dll!geos::operation::overlayng::OverlayNG::getResult() Line 195 C+=
+
>   geos.dll!geos::operation::overlayng::OverlayNG::overlay(const
> geos::geom::Geometry * geom0, const geos::geom::Geometry * geom1, int
> opCode, const geos::geom::PrecisionModel * pm) Line 100 C++
>   geos.dll!geos::operation::overlayng::OverlayNGRobust::overlaySR(const
> geos::geom::Geometry * geom0, const geos::geom::Geometry * geom1, int
> opCode) Line 295 C++
>   geos.dll!geos::operation::overlayng::OverlayNGRobust::Overlay(const
> geos::geom::Geometry * geom0, const geos::geom::Geometry * geom1, int
> opCode) Line 147 C++
>   geos.dll!geos::geom::HeuristicOverlay(const geos::geom::Geometry * g0,
> const geos::geom::Geometry * g1, int opCode) Line 194 C++
>   geos.dll!geos::geom::Geometry::intersection(const geos::geom::Geometry =
*
> other) Line 616 C++
>   [Inline Frame]
> geos_c.dll!GEOSIntersection_r::__l2::<lambda_3988e1633fcf92bee6886158a695=
0fe9>::operator()()
> Line 1322 C++
>   geos_c.dll!execute<`anonymous
> namespace'::InterruptManager,<lambda_3988e1633fcf92bee6886158a6950fe9>,0>=
(GEOSContextHandle_HS
> * extHandle,
> GEOSIntersection_r::__l2::<lambda_3988e1633fcf92bee6886158a6950fe9> && f)
> Line 521 C++
>   geos_c.dll!GEOSIntersection_r(GEOSContextHandle_HS * extHandle, const
> geos::geom::Geometry * g1, const geos::geom::Geometry * g2) Line 1326 C++
>   gdal.dll!BuildGeometryFromTwoGeoms(const OGRGeometry * poSelf, const
> OGRGeometry * poOtherGeom, GEOSGeom_t *(*)(GEOSContextHandle_HS *, const
> GEOSGeom_t *, const GEOSGeom_t *) pfnGEOSFunction_r) Line 3814 C++
>   gdal.dll!OGRMVTLayer::GetNextRawFeature() Line 1381 C++
>   [Inline Frame]
> gdal.dll!OGRGetNextFeatureThroughRaw<OGRMVTLayerBase>::GetNextFeature()
> Line 513 C++
>   gdal.dll!OGRMVTLayerBase::GetNextFeature() Line 144 C++
> _______________________________________________
> gdal-dev mailing list
> [email protected]
> https://lists.osgeo.org/mailman/listinfo/gdal-dev
>

--0000000000003c3f240653bd0d74
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hello Roman,<div><br></div><div>Could you please share you=
r input file, either in a GitHub issue or to me by email? I don&#39;t recal=
l a recent bug like this, so you may have found a new issue.</div><div><br>=
</div><div>Thanks,</div><div>Dan</div></div><br><div class=3D"gmail_quote g=
mail_quote_container"><div dir=3D"ltr" class=3D"gmail_attr">On Mon, Jun 8, =
2026 at 7:17=E2=80=AFAM Roman Pl=C3=B6hn via gdal-dev &lt;<a href=3D"mailto=
:[email protected]">[email protected]</a>&gt; wrote:<br></div=
><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border=
-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);=
padding-left:1ex"><div class=3D"msg-3028603118535221414">




<div dir=3D"ltr">
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
Hello,</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
in our company we since many years use GDAL (for building C++ software for =
Windows only) from VCPKG.</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
The GDAL version used in the most recent VCPKG is 3.12.4#2, in which I enco=
unter a reproducable crash in RELEASE builds when opening a file downloaded=
 from a Map-Tiles server, as soon as I iterate through its layers.</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
My main question about this problem is if this problem is already fixed in =
a more recent GDAL version ... if so I could send the VCPKG-maintainers a f=
eature request to ask them to update the GDAL package in there to a version=
, where it doesn&#39;t crash anymore.</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
Below is a description of the problem. If needed I can send the file in que=
stion.</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
For us this is a serioes issue, because it hinders us from using a recent v=
ersion of VCPKG at all (we even use the dependend lib mapnik, which needs G=
DAL).</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
I really hope someone can help me ...</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
Best regards,</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
have a nice day,</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
Roman</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
The function I use to reproduce the crash is quite simpel:</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
auto GetLayerFeaureFIDs( OGRLayer&amp; layer ) -&gt; std::vector&lt; GIntBi=
g &gt;</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
{</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82std::cout &lt;&lt; &q=
uot;Processing layer &#39;&quot; &lt;&lt; layer.GetName() &lt;&lt; &quot;&#=
39;...\n&quot;;<br>
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82std::vector&lt; GIntB=
ig &gt; fids;</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82OGRFeature* feature =
=3D layer.GetNextFeature();</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82for ( ; feature !=3D =
nullptr; feature =3D layer.GetNextFeature() )</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82{</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=
=80=82=E2=80=82=E2=80=82=E2=80=82if ( nullptr =3D=3D feature )</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=
=80=82=E2=80=82=E2=80=82=E2=80=82{</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=
=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=
=82=E2=80=82std::cout &lt;&lt; &quot;Got a null feature from layer &#39;&qu=
ot; &lt;&lt; layer.GetName() &lt;&lt; &quot;&#39;. Skipping it.\n&quot;;</d=
iv>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=
=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=
=82=E2=80=82continue;</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=
=80=82=E2=80=82=E2=80=82=E2=80=82}</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=
=80=82=E2=80=82=E2=80=82=E2=80=82fids.push_back( feature-&gt;GetFID() );</d=
iv>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82}</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82return fids;</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
}</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
It doesn&#39;t happen for each layer, i.e. in my DEBUG build, where no cras=
h happens, an error is reported about a thrown TopologyException:</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=E2=80=82=E2=80=82=E2=80=82=E2=80=82Debug: GDAL: GDALOpen(C:\Projects\TestG=
dal\x64\Debug\43.pbf, this=3D000001D7A8789410) succeeds as MVT. (code: 0)</=
div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=E2=80=82=E2=80=82=E2=80=82=E2=80=82Processing layer &#39;boundary&#39;...<=
/div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=E2=80=82=E2=80=82=E2=80=82=E2=80=82Processing layer &#39;landcover&#39;...=
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=E2=80=82=E2=80=82=E2=80=82=E2=80=82Failure: TopologyException: side locati=
on conflict at 3934.7142857142858 3859.8571428571427. This can occur if the=
 input geometry is invalid. (code: 1)</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=E2=80=82=E2=80=82=E2=80=82=E2=80=82Processing layer &#39;landuse&#39;...</=
div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=E2=80=82=E2=80=82=E2=80=82=E2=80=82Failure: TopologyException: side locati=
on conflict at 494.19230769230768 2796.5769230769229. This can occur if the=
 input geometry is invalid. (code: 1)</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=E2=80=82=E2=80=82=E2=80=82=E2=80=82...</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
The crash is a Access Violation, the top of the call-stack looks like this:=
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82[Inline Frame] geos.dll!=
geos::geom::CoordinateXY::equals2D(const geos::geom::CoordinateXY &amp;) Li=
ne 106=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82[Inline Frame] geos.dll!=
geos::index::kdtree::KdTree::queryNodePoint(geos::index::kdtree::KdNode * c=
urrentNode, const geos::geom::Coordinate &amp; odd, bool) Line 235=E2=80=82=
C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82geos.dll!geos::index::kd=
tree::KdTree::query(const geos::geom::Coordinate &amp; queryPt) Line 289=E2=
=80=82=E2=80=82=E2=80=82=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82[Inline Frame] geos.dll!=
geos::noding::snapround::HotPixelIndex::find(const geos::geom::Coordinate &=
amp;) Line 146=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82geos.dll!geos::noding::s=
napround::HotPixelIndex::addRounded(const geos::geom::CoordinateXYZM &amp; =
pRound) Line 48=E2=80=82=E2=80=82=E2=80=82=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82[Inline Frame] geos.dll!=
geos::noding::snapround::HotPixelIndex::add(const geos::geom::CoordinateXYZ=
M &amp;) Line 90=E2=80=82=E2=80=82=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82[Inline Frame] geos.dll!=
geos::noding::snapround::HotPixelIndex::addNodes::__l2::&lt;lambda_8c47a75e=
4bac7a256ab75080e3e5d5f0&gt;::operator()(const geos::geom::CoordinateXYZM &=
amp;) Line 127=E2=80=82=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82geos.dll!geos::geom::Coo=
rdinateSequence::forEach&lt;&lt;lambda_8c47a75e4bac7a256ab75080e3e5d5f0&gt;=
&gt;(geos::noding::snapround::HotPixelIndex::addNodes::__l2::&lt;lambda_8c4=
7a75e4bac7a256ab75080e3e5d5f0&gt; &amp;&amp; fun) Line 701=E2=80=82=E2=80=
=82=E2=80=82=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82geos.dll!geos::noding::s=
napround::HotPixelIndex::addNodes(const geos::geom::CoordinateSequence * pt=
s) Line 130=E2=80=82=E2=80=82=E2=80=82=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82geos.dll!geos::noding::s=
napround::SnapRoundingNoder::addIntersectionPixels(std::vector&lt;geos::nod=
ing::SegmentString *,std::allocator&lt;geos::noding::SegmentString *&gt;&gt=
; &amp; segStrings) Line 85=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82geos.dll!geos::noding::s=
napround::SnapRoundingNoder::snapRound(std::vector&lt;geos::noding::Segment=
String *,std::allocator&lt;geos::noding::SegmentString *&gt;&gt; &amp; inpu=
tSegStrings, std::vector&lt;geos::noding::SegmentString *,std::allocator&lt=
;geos::noding::SegmentString
 *&gt;&gt; &amp; resultNodedSegments) Line 70=E2=80=82=E2=80=82=E2=80=82=E2=
=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82geos.dll!geos::operation=
::overlayng::EdgeNodingBuilder::node(std::vector&lt;geos::noding::SegmentSt=
ring *,std::allocator&lt;geos::noding::SegmentString *&gt;&gt; * segStrings=
) Line 122=E2=80=82=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82geos.dll!geos::operation=
::overlayng::EdgeNodingBuilder::build(const geos::geom::Geometry * geom0, c=
onst geos::geom::Geometry * geom1) Line 104=E2=80=82=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82geos.dll!geos::operation=
::overlayng::OverlayNG::computeEdgeOverlay() Line 227=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82geos.dll!geos::operation=
::overlayng::OverlayNG::getResult() Line 195=E2=80=82=E2=80=82=E2=80=82=E2=
=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82geos.dll!geos::operation=
::overlayng::OverlayNG::overlay(const geos::geom::Geometry * geom0, const g=
eos::geom::Geometry * geom1, int opCode, const geos::geom::PrecisionModel *=
 pm) Line 100=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82geos.dll!geos::operation=
::overlayng::OverlayNGRobust::overlaySR(const geos::geom::Geometry * geom0,=
 const geos::geom::Geometry * geom1, int opCode) Line 295=E2=80=82=E2=80=82=
=E2=80=82=E2=80=82=E2=80=82=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82geos.dll!geos::operation=
::overlayng::OverlayNGRobust::Overlay(const geos::geom::Geometry * geom0, c=
onst geos::geom::Geometry * geom1, int opCode) Line 147=E2=80=82=E2=80=82C+=
+</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82geos.dll!geos::geom::Heu=
risticOverlay(const geos::geom::Geometry * g0, const geos::geom::Geometry *=
 g1, int opCode) Line 194=E2=80=82=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82geos.dll!geos::geom::Geo=
metry::intersection(const geos::geom::Geometry * other) Line 616=E2=80=82=
=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82[Inline Frame] geos_c.dl=
l!GEOSIntersection_r::__l2::&lt;lambda_3988e1633fcf92bee6886158a6950fe9&gt;=
::operator()() Line 1322=E2=80=82=E2=80=82=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82geos_c.dll!execute&lt;`a=
nonymous namespace&#39;::InterruptManager,&lt;lambda_3988e1633fcf92bee68861=
58a6950fe9&gt;,0&gt;(GEOSContextHandle_HS * extHandle, GEOSIntersection_r::=
__l2::&lt;lambda_3988e1633fcf92bee6886158a6950fe9&gt; &amp;&amp; f) Line 52=
1=E2=80=82=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82geos_c.dll!GEOSIntersect=
ion_r(GEOSContextHandle_HS * extHandle, const geos::geom::Geometry * g1, co=
nst geos::geom::Geometry * g2) Line 1326=E2=80=82=E2=80=82=E2=80=82=E2=80=
=82=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82gdal.dll!BuildGeometryFr=
omTwoGeoms(const OGRGeometry * poSelf, const OGRGeometry * poOtherGeom, GEO=
SGeom_t *(*)(GEOSContextHandle_HS *, const GEOSGeom_t *, const GEOSGeom_t *=
) pfnGEOSFunction_r) Line 3814=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=
=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82gdal.dll!OGRMVTLayer::Ge=
tNextRawFeature() Line 1381=E2=80=82=E2=80=82=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82[Inline Frame] gdal.dll!=
OGRGetNextFeatureThroughRaw&lt;OGRMVTLayerBase&gt;::GetNextFeature() Line 5=
13=E2=80=82C++</div>
<div style=3D"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Cali=
bri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
=C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82gdal.dll!OGRMVTLayerBase=
::GetNextFeature() Line 144=E2=80=82=E2=80=82=E2=80=82C++</div>
</div>

_______________________________________________<br>
gdal-dev mailing list<br>
<a href=3D"mailto:[email protected]" target=3D"_blank">gdal-dev@list=
s.osgeo.org</a><br>
<a href=3D"https://lists.osgeo.org/mailman/listinfo/gdal-dev" rel=3D"norefe=
rrer" target=3D"_blank">https://lists.osgeo.org/mailman/listinfo/gdal-dev</=
a><br>
</div></blockquote></div>

--0000000000003c3f240653bd0d74--

--===============7850802071373679248==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
gdal-dev mailing list
[email protected]
https://lists.osgeo.org/mailman/listinfo/gdal-dev

--===============7850802071373679248==--