From a0bdd182fe6bb2babfc24b0706da1be48859c860 Mon Sep 17 00:00:00 2001 From: Symmetricity <184246+Symmetricity@users.noreply.github.com> Date: Thu, 28 May 2026 14:33:47 +0200 Subject: [PATCH] Read relation blocks without multipolygons ReadRelations skipped an entire primitive block unless the block string table contained both type and multipolygon. That prevented otherwise valid boundary or custom relation_function processing when a block had no multipolygon string. Keep the existing per-relation filtering, but enter the relation loop whenever the block contains a type key. relationIsType already handles a missing multipolygon value by returning false. Co-authored-by: Codex --- src/pbf_processor.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pbf_processor.cpp b/src/pbf_processor.cpp index cea28bb7..9f776eaf 100644 --- a/src/pbf_processor.cpp +++ b/src/pbf_processor.cpp @@ -279,7 +279,7 @@ bool PbfProcessor::ReadRelations( int boundaryKey = findStringPosition(pb, "boundary"); int innerKey= findStringPosition(pb, "inner"); int outerKey= findStringPosition(pb, "outer"); - if (typeKey >-1 && mpKey>-1) { + if (typeKey >-1) { int j = -1; for (PbfReader::Relation pbfRelation : pg.relations()) { j++;