Index: trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/MapPaintVisitor.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/MapPaintVisitor.java	(revision 3166)
+++ trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/MapPaintVisitor.java	(revision 3167)
@@ -17,5 +17,4 @@
 import java.util.Comparator;
 import java.util.LinkedList;
-import java.util.List;
 
 import org.openstreetmap.josm.Main;
@@ -645,4 +644,5 @@
         BBox bbox = new BBox(bounds);
         this.data = data;
+        ++paintid;
 
         useStyleCache = Main.pref.getBoolean("mappaint.cache", true);
@@ -653,5 +653,5 @@
 
         zoomLevelDisplay = Main.pref.getBoolean("mappaint.zoomLevelDisplay", false);
-        circum = Main.map.mapView.getDist100Pixel();
+        circum = nc.getDist100Pixel();
         styles = MapPaintStyles.getStyles().getStyleSet();
         drawMultipolygon = Main.pref.getBoolean("mappaint.multipolygon", true);
@@ -670,10 +670,8 @@
         data.clearErrors();
 
-        ++paintid;
 
         if (fillAreas > dist && styles != null && styles.hasAreas()) {
             Collection<Way> noAreaWays = new LinkedList<Way>();
 
-            List<Relation> relations = data.searchRelations(bbox);
             /*** RELATIONS ***/
             for (final Relation osm: data.searchRelations(bbox)) {
@@ -709,5 +707,5 @@
 
             /*** WAYS (filling disabled)  ***/
-            for (final Way way: data.getWays()) {
+            for (final Way way: data.searchWays(bbox)) {
                 if (way.isDrawable() && !data.isSelected(way)) {
                     drawWay(way, 0);
Index: trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/MapPainter.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/MapPainter.java	(revision 3166)
+++ trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/MapPainter.java	(revision 3167)
@@ -185,5 +185,5 @@
 
         int w = icon.getIconWidth(), h=icon.getIconHeight();
-        icon.paintIcon ( Main.map.mapView, g, p.x-w/2, p.y-h/2 );
+        icon.paintIcon ( nc, g, p.x-w/2, p.y-h/2 );
         if(name != null) {
             if (inactive || n.isDisabled()) {
