Index: trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/Selector.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/Selector.java	(revision 15065)
+++ trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/Selector.java	(revision 15068)
@@ -9,7 +9,5 @@
 import java.util.LinkedHashSet;
 import java.util.List;
-import java.util.NoSuchElementException;
 import java.util.Objects;
-import java.util.Set;
 import java.util.function.IntFunction;
 import java.util.function.IntSupplier;
@@ -21,9 +19,7 @@
 import org.openstreetmap.josm.data.osm.IRelationMember;
 import org.openstreetmap.josm.data.osm.IWay;
-import org.openstreetmap.josm.data.osm.OsmPrimitive;
 import org.openstreetmap.josm.data.osm.OsmPrimitiveType;
 import org.openstreetmap.josm.data.osm.OsmUtils;
 import org.openstreetmap.josm.data.osm.Relation;
-import org.openstreetmap.josm.data.osm.Way;
 import org.openstreetmap.josm.data.osm.visitor.PrimitiveVisitor;
 import org.openstreetmap.josm.data.osm.visitor.paint.relations.MultipolygonCache;
@@ -358,28 +354,5 @@
                 }
 
-                ContainsFinder containsFinder;
-                try {
-                    // if right selector also matches relations and if matched primitive is a way which is part of a multipolygon,
-                    // use the multipolygon for further analysis
-                    if (!(e.osm instanceof Way)
-                            || (right instanceof OptimizedGeneralSelector
-                            && !((OptimizedGeneralSelector) right).matchesBase(OsmPrimitiveType.RELATION))) {
-                        throw new NoSuchElementException();
-                    }
-                    final Relation multipolygon = ((Way) e.osm).referrers(Relation.class)
-                            .filter(p -> p.hasTag("type", "multipolygon"))
-                            .findFirst()
-                            .orElseThrow(NoSuchElementException::new);
-                    final Set<OsmPrimitive> members = multipolygon.getMemberPrimitives();
-                    containsFinder = new ContainsFinder(new Environment(multipolygon)) {
-                        @Override
-                        public boolean isPrimitiveUsable(IPrimitive p) {
-                            return super.isPrimitiveUsable(p) && !members.contains(p);
-                        }
-                    };
-                } catch (NoSuchElementException ignore) {
-                    Logging.trace(ignore);
-                    containsFinder = new ContainsFinder(e);
-                }
+                ContainsFinder containsFinder = new ContainsFinder(e);
                 e.parent = e.osm;
 
