summaryrefslogtreecommitdiff
path: root/src/mbgl/util/tile_cover.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mbgl/util/tile_cover.cpp')
-rw-r--r--src/mbgl/util/tile_cover.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/mbgl/util/tile_cover.cpp b/src/mbgl/util/tile_cover.cpp
index 9e2451e1af..c7ef73c4ba 100644
--- a/src/mbgl/util/tile_cover.cpp
+++ b/src/mbgl/util/tile_cover.cpp
@@ -131,7 +131,8 @@ std::vector<UnwrappedTileID> tileCover(const Point<double>& tl,
} // namespace
int32_t coveringZoomLevel(double zoom, style::SourceType type, uint16_t size) {
- zoom += util::log2(util::tileSize / size);
+ // At negative zoom levels load tiles from z0 because negative tile zoom levels don't exist.
+ zoom = ::fmax(0.0, zoom + util::log2(util::tileSize / size));
if (type == style::SourceType::Raster || type == style::SourceType::Video) {
return ::round(zoom);
} else {