summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAnsis Brammanis <brammanis@gmail.com>2016-03-29 00:23:16 -0700
committerAnsis Brammanis <brammanis@gmail.com>2016-03-29 11:38:35 -0700
commit0539f7b4cb49e0690b9654f57fe9e2f724e14903 (patch)
tree4feea6aee5ab1c4879d8dda9ff0623f5c8dd90cc /src
parent6fcc7ba513753d71dc70aa219311570c2350f9e0 (diff)
downloadqtlocation-mapboxgl-0539f7b4cb49e0690b9654f57fe9e2f724e14903.tar.gz
[core] fix infinite loop in mbgl::resample
fix #4416
Diffstat (limited to 'src')
-rw-r--r--src/mbgl/renderer/line_bucket.cpp2
-rw-r--r--src/mbgl/renderer/symbol_bucket.cpp2
-rw-r--r--src/mbgl/text/get_anchors.cpp3
3 files changed, 5 insertions, 2 deletions
diff --git a/src/mbgl/renderer/line_bucket.cpp b/src/mbgl/renderer/line_bucket.cpp
index ac9a3f7231..dfaa93419c 100644
--- a/src/mbgl/renderer/line_bucket.cpp
+++ b/src/mbgl/renderer/line_bucket.cpp
@@ -69,7 +69,7 @@ void LineBucket::addGeometry(const GeometryCoordinates& vertices) {
const float miterLimit = layout.join == JoinType::Bevel ? 1.05f : float(layout.miterLimit);
- const double sharpCornerOffset = SHARP_CORNER_OFFSET * (util::EXTENT / (util::tileSize * overscaling));
+ const double sharpCornerOffset = SHARP_CORNER_OFFSET * (float(util::EXTENT) / (util::tileSize * overscaling));
const GeometryCoordinate firstVertex = vertices.front();
const GeometryCoordinate lastVertex = vertices[len - 1];
diff --git a/src/mbgl/renderer/symbol_bucket.cpp b/src/mbgl/renderer/symbol_bucket.cpp
index 404a62d374..6530510e27 100644
--- a/src/mbgl/renderer/symbol_bucket.cpp
+++ b/src/mbgl/renderer/symbol_bucket.cpp
@@ -60,7 +60,7 @@ SymbolBucket::SymbolBucket(uint32_t overscaling_, float zoom_, const MapMode mod
: overscaling(overscaling_),
zoom(zoom_),
tileSize(util::tileSize * overscaling_),
- tilePixelRatio(util::EXTENT / tileSize),
+ tilePixelRatio(float(util::EXTENT) / tileSize),
mode(mode_) {}
SymbolBucket::~SymbolBucket() {
diff --git a/src/mbgl/text/get_anchors.cpp b/src/mbgl/text/get_anchors.cpp
index 740ec288b3..c55f238e52 100644
--- a/src/mbgl/text/get_anchors.cpp
+++ b/src/mbgl/text/get_anchors.cpp
@@ -3,6 +3,7 @@
#include <mbgl/util/constants.hpp>
#include <mbgl/util/interpolate.hpp>
+#include <cassert>
#include <cmath>
namespace mbgl {
@@ -21,6 +22,8 @@ Anchors resample(const GeometryCoordinates &line, const float offset, const floa
Anchors anchors;
+ assert(spacing > 0.0);
+
int i = 0;
for (auto it = line.begin(), end = line.end() - 1; it != end; it++, i++) {
const GeometryCoordinate &a = *(it);