From 783f0781a5982c939e71a1389a6a294fb2921e3d Mon Sep 17 00:00:00 2001 From: Patrick Brosi Date: Fri, 10 May 2024 12:29:35 +0200 Subject: [PATCH] exact test for invalid-range encoded multi-OUT events --- src/spatialjoin/Sweeper.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/spatialjoin/Sweeper.cpp b/src/spatialjoin/Sweeper.cpp index 48222e3..a5004e0 100644 --- a/src/spatialjoin/Sweeper.cpp +++ b/src/spatialjoin/Sweeper.cpp @@ -431,7 +431,7 @@ void Sweeper::multiOut(size_t t, const std::string& gidA) { void Sweeper::flush() { LOG(INFO) << _multiIds.size() << " multi geometries"; for (size_t i = 0; i < _multiIds.size(); i++) { - diskAdd({i, 2, 1, _multiLeftX[i] - 1, false, POINT, 0.0, {}}); + diskAdd({i, 1, 0, _multiLeftX[i] - 1, false, POINT, 0.0, {}}); } ssize_t r = write(_file, _outBuffer, _obufpos); @@ -525,7 +525,7 @@ void Sweeper::sweep() { auto cur = reinterpret_cast(buf + i); jj++; - if (!cur->out && cur->loY > cur->upY) { + if (!cur->out && cur->loY == 1 && cur->upY == 0 && cur->type == POINT) { // special multi-IN _activeMultis.insert(cur->id); } else if (!cur->out) {