From 14ba3cfd6aa0b50eb6b3884d3d7c1619f2582f2f Mon Sep 17 00:00:00 2001 From: jakepruitt Date: Thu, 23 Jul 2015 18:29:12 -0400 Subject: [PATCH] Adding special case for non-fontstack "glyph" resource URLs - does not prepend /v4/ to api endpoints like /fonts/v1/ - only prepends it to things starting with /fontstack - solves the problem in #1918 - refs mapbox/mapbox-gl-style-spec#309 --- src/mbgl/util/mapbox.cpp | 6 +++++- test/miscellaneous/mapbox.cpp | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/mbgl/util/mapbox.cpp b/src/mbgl/util/mapbox.cpp index a8da81d1f..4b4f24e13 100644 --- a/src/mbgl/util/mapbox.cpp +++ b/src/mbgl/util/mapbox.cpp @@ -45,7 +45,11 @@ std::string normalizeGlyphsURL(const std::string& url, const std::string& access if (url.compare(0, mapbox.length(), mapbox) != 0) return url; - return normalizeURL(url, "/v4/", accessToken); + const std::string fontstack = "mapbox://fontstack/"; + if (url.compare(0, fontstack.length(), fontstack) == 0) + return normalizeURL(url, "/v4/", accessToken); + + return normalizeURL(url, "/", accessToken); } std::string normalizeTileURL(const std::string& url, const std::string& sourceURL, SourceType sourceType) { diff --git a/test/miscellaneous/mapbox.cpp b/test/miscellaneous/mapbox.cpp index 1aff2494a..f93749760 100644 --- a/test/miscellaneous/mapbox.cpp +++ b/test/miscellaneous/mapbox.cpp @@ -15,6 +15,7 @@ TEST(Mapbox, SourceURL) { TEST(Mapbox, GlyphsURL) { EXPECT_EQ(mbgl::util::mapbox::normalizeGlyphsURL("mapbox://fontstack/{fontstack}/{range}.pbf", "key"), "https://api.tiles.mapbox.com/v4/fontstack/{fontstack}/{range}.pbf?access_token=key"); + EXPECT_EQ(mbgl::util::mapbox::normalizeGlyphsURL("mapbox://fonts/v1/user/{fontstack}/{range}.pbf", "key"), "https://api.tiles.mapbox.com/fonts/v1/user/{fontstack}/{range}.pbf?access_token=key"); EXPECT_EQ(mbgl::util::mapbox::normalizeGlyphsURL("http://path", "key"), "http://path"); }