From c3d401164a5f3f97a2305987762fe6c8c6f855cd Mon Sep 17 00:00:00 2001 From: Menelaos Karavelas Date: Fri, 20 Jun 2014 12:17:44 +0300 Subject: [PATCH] [strategies][agnostic] fix bug in Graham-Andrew strategy: last is used again after two calls to pop_back() which can invalidate the reference; patch: make last a true point rather than a reference bug reported/patch suggested by David Zhao --- .../boost/geometry/strategies/agnostic/hull_graham_andrew.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/boost/geometry/strategies/agnostic/hull_graham_andrew.hpp b/include/boost/geometry/strategies/agnostic/hull_graham_andrew.hpp index 98d2f8949..ce3142d89 100644 --- a/include/boost/geometry/strategies/agnostic/hull_graham_andrew.hpp +++ b/include/boost/geometry/strategies/agnostic/hull_graham_andrew.hpp @@ -323,7 +323,7 @@ private: while (output_size >= 3) { rev_iterator rit = output.rbegin(); - point_type const& last = *rit++; + point_type const last = *rit++; point_type const& last2 = *rit++; if (Factor * side::apply(*rit, last, last2) <= 0)