diff options
author | Paolo Angelelli <paolo.angelelli@theqtcompany.com> | 2016-04-07 15:50:46 +0200 |
---|---|---|
committer | Paolo Angelelli <paolo.angelelli@theqtcompany.com> | 2016-06-15 09:41:05 +0000 |
commit | 0da6abc2cb62ec9cf51c594493142c1626c83ffe (patch) | |
tree | bdd0db1afb49a0a54007e7ee305417ef935d38a0 /src/3rdparty/poly2tri | |
parent | d90b2bffd76bf74ab4b6e6c0c68a26f6830c8d6f (diff) | |
download | qtlocation-0da6abc2cb62ec9cf51c594493142c1626c83ffe.tar.gz |
Fix for crash on tessellation of self-intersectiong GeoPolygons
QtLocation makes use of a 3rd party library for polygon tessellation,
poly2tri.
This library is known to be weak in handling complex input, like, for
example, polygons with self intersecting edges.
Sanitizing the input data through clipper solves the problem, and it
has already been implemented in the clip2tri library, which this
patch includes and uses.
Task-number: QTBUG-52076
Change-Id: I071a58e202345bc71da583995f7245361f00e8c4
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
Diffstat (limited to 'src/3rdparty/poly2tri')
-rw-r--r-- | src/3rdparty/poly2tri/poly2tri.pro | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/3rdparty/poly2tri/poly2tri.pro b/src/3rdparty/poly2tri/poly2tri.pro index f042bd84..d4ae9cd8 100644 --- a/src/3rdparty/poly2tri/poly2tri.pro +++ b/src/3rdparty/poly2tri/poly2tri.pro @@ -11,6 +11,14 @@ contains(QT_CONFIG, c++11): CONFIG += c++11 QMAKE_CXXFLAGS += -O3 -ftree-vectorize -ffast-math -funsafe-math-optimizations -Wno-error=return-type } +HEADERS += poly2tri.h \ + common/shapes.h \ + common/utils.h \ + sweep/advancing_front.h \ + sweep/cdt.h \ + sweep/sweep.h \ + sweep/sweep_context.h + SOURCES += common/shapes.cpp \ sweep/sweep_context.cpp \ sweep/cdt.cpp \ |