Fix some undefined behavior (#209)

* Fix some undefined behavior

* Avoid overflow in line simplification calculations

* Oops, missed a test

* Didn't mean to add that to the Makefile

* Revert "Revert "[ci] test in debug mode (#202)""

This reverts commit c95c328e47.

* Fix reference to out-of-scope pointer

* Fix invalid shift and out-of-bounds vector element reference

* Update changelog and version
This commit is contained in:
Erica Fischer
2024-03-01 10:11:41 -08:00
committed by GitHub
parent 312e1560a3
commit 6a8f1b83d8
38 changed files with 7903 additions and 9076 deletions
+1 -3
View File
@@ -904,9 +904,7 @@ std::string overzoom(const mvt_tile &tile, int oz, int ox, int oy, int nz, int n
flush_multiplier_cluster = true;
feature.tags.erase(feature.tags.begin() + i, feature.tags.begin() + i + 2);
}
}
if (layer.keys[feature.tags[i]] == retain_points_multiplier_sequence) {
} else if (i < (ssize_t) feature.tags.size() && layer.keys[feature.tags[i]] == retain_points_multiplier_sequence) {
mvt_value v = layer.values[feature.tags[i + 1]];
feature.seq = mvt_value_to_long_long(v);
feature.tags.erase(feature.tags.begin() + i, feature.tags.begin() + i + 2);