Index: trunk/src/org/openstreetmap/josm/data/imagery/WMTSTileSource.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/imagery/WMTSTileSource.java	(revision 15411)
+++ trunk/src/org/openstreetmap/josm/data/imagery/WMTSTileSource.java	(revision 15415)
@@ -369,6 +369,7 @@
                 Layer first = layers.iterator().next();
                 // If max zoom lower than expected, try to find a better layer
-                if (first.getMaxZoom() < info.getMaxZoom()) {
-                    first = layers.stream().filter(l -> l.getMaxZoom() >= info.getMaxZoom()).findFirst().orElse(first);
+                final int maxZoom = info.getMaxZoom();
+                if (first.getMaxZoom() < maxZoom) {
+                    first = layers.stream().filter(l -> l.getMaxZoom() >= maxZoom).findFirst().orElse(first);
                 }
                 // If center of josm bbox not in layer bbox, try to find a better layer
@@ -378,5 +379,5 @@
                         final Layer ffirst = first;
                         first = layers.stream()
-                                .filter(l -> l.getMaxZoom() >= info.getMaxZoom() && l.getBbox() != null && l.getBbox().bounds(center)).findFirst()
+                                .filter(l -> l.getMaxZoom() >= maxZoom && l.getBbox() != null && l.getBbox().bounds(center)).findFirst()
                                 .orElseGet(() -> layers.stream().filter(l -> l.getBbox() != null && l.getBbox().bounds(center)).findFirst()
                                         .orElse(ffirst));
