|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r85554 - in trunk: boost/geometry/algorithms/detail/overlay boost/geometry/multi/io/wkt libs/geometry/doc
From: barend.gehrels_at_[hidden]
Date: 2013-09-03 16:08:30
Author: barendgehrels
Date: 2013-09-03 16:08:30 EDT (Tue, 03 Sep 2013)
New Revision: 85554
URL: http://svn.boost.org/trac/boost/changeset/85554
Log:
[geometry] fixed clear/back calls for cases reported by Renaud on 2013-09-02 on mailing list
Text files modified:
trunk/boost/geometry/algorithms/detail/overlay/backtrack_check_si.hpp | 2 +-
trunk/boost/geometry/multi/io/wkt/read.hpp | 6 +++---
trunk/libs/geometry/doc/release_notes.qbk | 2 ++
3 files changed, 6 insertions(+), 4 deletions(-)
Modified: trunk/boost/geometry/algorithms/detail/overlay/backtrack_check_si.hpp
==============================================================================
--- trunk/boost/geometry/algorithms/detail/overlay/backtrack_check_si.hpp Tue Sep 3 15:31:55 2013 (r85553)
+++ trunk/boost/geometry/algorithms/detail/overlay/backtrack_check_si.hpp 2013-09-03 16:08:30 EDT (Tue, 03 Sep 2013) (r85554)
@@ -101,7 +101,7 @@
// Make bad output clean
rings.resize(size_at_start);
- ring.clear();
+ geometry::traits::clear<typename boost::range_value<Rings>::type>::apply(ring);
// Reject this as a starting point
operation.visited.set_rejected();
Modified: trunk/boost/geometry/multi/io/wkt/read.hpp
==============================================================================
--- trunk/boost/geometry/multi/io/wkt/read.hpp Tue Sep 3 15:31:55 2013 (r85553)
+++ trunk/boost/geometry/multi/io/wkt/read.hpp 2013-09-03 16:08:30 EDT (Tue, 03 Sep 2013) (r85554)
@@ -49,7 +49,7 @@
Parser
<
typename boost::range_value<MultiGeometry>::type
- >::apply(it, tokens.end(), wkt, geometry.back());
+ >::apply(it, tokens.end(), wkt, *(boost::end(geometry) - 1));
if (it != tokens.end() && *it == ",")
{
// Skip "," after multi-element is parsed
@@ -101,14 +101,14 @@
point_parser
<
typename boost::range_value<MultiGeometry>::type
- >::apply(it, tokens.end(), wkt, geometry.back());
+ >::apply(it, tokens.end(), wkt, *(boost::end(geometry) - 1));
}
else
{
noparenthesis_point_parser
<
typename boost::range_value<MultiGeometry>::type
- >::apply(it, tokens.end(), wkt, geometry.back());
+ >::apply(it, tokens.end(), wkt, *(boost::end(geometry) - 1));
}
if (it != tokens.end() && *it == ",")
Modified: trunk/libs/geometry/doc/release_notes.qbk
==============================================================================
--- trunk/libs/geometry/doc/release_notes.qbk Tue Sep 3 15:31:55 2013 (r85553)
+++ trunk/libs/geometry/doc/release_notes.qbk 2013-09-03 16:08:30 EDT (Tue, 03 Sep 2013) (r85554)
@@ -25,6 +25,8 @@
[*Bugfixes]
+* In some cases .back() or .clear() was called, violating the usage of Concepts. Fixed for the reported cases
+
[*Solved tickets]
* [@https://svn.boost.org/trac/boost/ticket/6958 6958] Intersection generates self-intersection. Caused by spike, fixed
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk