Changeset 19452 in josm for trunk/src


Ignore:
Timestamp:
2026-01-04T09:10:13+01:00 (8 days ago)
Author:
GerdP
Message:

fix #24572: "Crossing waterways" validator produces many false positives with waterway=fairway

  • ignore crossing ways with waterway=fairway
  • ignore a fairway crossing a linear waterway (river,stream,canal,drain,ditch)
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/data/validation/tests/CrossingWays.java

    r19108 r19452  
    134134                    || w1.hasTag(RAILWAY, "halt") != w2.hasTag(RAILWAY, "halt")))
    135135                return true;  // see #20089, #21541
    136             return (w1.hasTag(WATERWAY, "river", "stream", "canal", "drain", "ditch") && isWaterArea(w2))
    137                     || (w2.hasTag(WATERWAY, "river", "stream", "canal", "drain", "ditch") && isWaterArea(w1));
     136            if (w1.hasTag(WATERWAY, "fairway") && w2.hasTag(WATERWAY, "fairway"))
     137                return true; // see #24572
     138            return (w1.hasTag(WATERWAY, "river", "stream", "canal", "drain", "ditch") && isWaterAreaOrFairway(w2))
     139                    || (w2.hasTag(WATERWAY, "river", "stream", "canal", "drain", "ditch") && isWaterAreaOrFairway(w1));
    138140        }
    139141
     
    363365    }
    364366
     367    static boolean isWaterAreaOrFairway(OsmPrimitive w) {
     368        return isWaterArea(w) || w.hasTag(WATERWAY, "fairway");
     369    }
     370
    365371    static boolean isHighway(OsmPrimitive w) {
    366372        return w.hasTagDifferent(HIGHWAY, "rest_area", "services", "bus_stop", "platform");
Note: See TracChangeset for help on using the changeset viewer.