Compare commits

...

1 commit

Author SHA1 Message Date
Artem Pavlenko
0f73b8b795 GeJSON - allow empty FeatureCollections (#4035) 2019-03-25 15:19:44 +00:00
2 changed files with 3 additions and 3 deletions

View file

@ -274,7 +274,7 @@ void geojson_datasource::initialise_index(Iterator start, Iterator end)
try
{
mapnik::json::extract_bounding_boxes(itr, end, boxes);
if (itr != end || boxes.empty()) throw std::exception();
if (itr != end) throw std::exception();
// bulk insert initialise r-tree
tree_ = std::make_unique<spatial_index_type>(boxes);
// calculate total extent
@ -366,7 +366,7 @@ void geojson_datasource::parse_geojson(Iterator start, Iterator end)
{
boxes_type boxes;
mapnik::json::extract_bounding_boxes(itr, end, boxes);
if (itr != end || boxes.empty()) throw std::exception(); //ensure we've consumed all input and we extracted at least one bbox;
if (itr != end) throw std::exception(); //ensure we've consumed all input
for (auto const& item : boxes)
{
auto const& geometry_index = std::get<1>(item);

View file

@ -108,7 +108,7 @@ TEST_CASE("geojson") {
params["type"] = "geojson";
params["file"] = "./test/data/json/empty_featurecollection.json";
params["cache_features"] = cache_features;
REQUIRE_THROWS(mapnik::datasource_cache::instance().create(params));
REQUIRE(mapnik::datasource_cache::instance().create(params));
}
}