diff --git a/generator.c b/generator.c index d0a4a35..8893b8b 100644 --- a/generator.c +++ b/generator.c @@ -498,6 +498,10 @@ static void getMaxArea( areaX += layer->edge; areaZ += layer->edge; + // multi-layers and zoom-layers use a temporary copy of their parent area + if (layer->p2 || layer->zoom != 1) + *siz += areaX * areaZ; + if (areaX > *maxX) *maxX = areaX; if (areaZ > *maxZ) *maxZ = areaZ; @@ -512,10 +516,6 @@ static void getMaxArea( areaZ >>= 2; } - // multi-layers and zoom-layers use a temporary copy of their parent area - if (layer->p2 || layer->zoom != 1) - *siz += areaX * areaZ; - getMaxArea(layer->p, areaX, areaZ, maxX, maxZ, siz); if (layer->p2) getMaxArea(layer->p2, areaX, areaZ, maxX, maxZ, siz);