From e2beb3cf2f19e0836b7aed686cbf500c53e48f5f Mon Sep 17 00:00:00 2001 From: Adam Wulkiewicz Date: Tue, 20 Nov 2012 13:45:48 +0000 Subject: [PATCH] Safety issue fixed in pushable_array. Filenames related to filters(old name) changed to adaptors. [SVN r81436] --- .../nearest_query.hpp} | 8 ++++---- .../query_filter.hpp => adaptors/spatial_query.hpp} | 8 ++++---- .../geometry/extensions/index/pushable_array.hpp | 3 ++- .../index/rtree/{filters.hpp => adaptors.hpp} | 12 ++++++------ .../boost/geometry/extensions/index/rtree/rtree.hpp | 2 +- 5 files changed, 17 insertions(+), 16 deletions(-) rename include/boost/geometry/extensions/index/{filters/nearest_filter.hpp => adaptors/nearest_query.hpp} (91%) rename include/boost/geometry/extensions/index/{filters/query_filter.hpp => adaptors/spatial_query.hpp} (88%) rename include/boost/geometry/extensions/index/rtree/{filters.hpp => adaptors.hpp} (87%) diff --git a/include/boost/geometry/extensions/index/filters/nearest_filter.hpp b/include/boost/geometry/extensions/index/adaptors/nearest_query.hpp similarity index 91% rename from include/boost/geometry/extensions/index/filters/nearest_filter.hpp rename to include/boost/geometry/extensions/index/adaptors/nearest_query.hpp index 8e1ecb1f1..f9c6a046f 100644 --- a/include/boost/geometry/extensions/index/filters/nearest_filter.hpp +++ b/include/boost/geometry/extensions/index/adaptors/nearest_query.hpp @@ -1,6 +1,6 @@ // Boost.Geometry Index // -// Nearest neighbour filter implementation +// Nearest neighbour query range adaptor // // Copyright (c) 2011-2012 Adam Wulkiewicz, Lodz, Poland. // @@ -8,8 +8,8 @@ // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) -#ifndef BOOST_GEOMETRY_EXTENSIONS_INDEX_FILTERS_NEAREST_FILTER_HPP -#define BOOST_GEOMETRY_EXTENSIONS_INDEX_FILTERS_NEAREST_FILTER_HPP +#ifndef BOOST_GEOMETRY_EXTENSIONS_INDEX_ADAPTORS_NEAREST_QUERY_HPP +#define BOOST_GEOMETRY_EXTENSIONS_INDEX_ADAPTORS_NEAREST_QUERY_HPP namespace boost { namespace geometry { namespace index { @@ -98,4 +98,4 @@ operator|( }}} // namespace boost::geometry::index -#endif // BOOST_GEOMETRY_EXTENSIONS_INDEX_FILTERS_NEAREST_FILTER_HPP +#endif // BOOST_GEOMETRY_EXTENSIONS_INDEX_ADAPTORS_NEAREST_QUERY_HPP diff --git a/include/boost/geometry/extensions/index/filters/query_filter.hpp b/include/boost/geometry/extensions/index/adaptors/spatial_query.hpp similarity index 88% rename from include/boost/geometry/extensions/index/filters/query_filter.hpp rename to include/boost/geometry/extensions/index/adaptors/spatial_query.hpp index 4d30b4ea9..8b9d12262 100644 --- a/include/boost/geometry/extensions/index/filters/query_filter.hpp +++ b/include/boost/geometry/extensions/index/adaptors/spatial_query.hpp @@ -1,6 +1,6 @@ // Boost.Geometry Index // -// Query filter implementation +// Spatial query range adaptor // // Copyright (c) 2011-2012 Adam Wulkiewicz, Lodz, Poland. // @@ -8,8 +8,8 @@ // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) -#ifndef BOOST_GEOMETRY_EXTENSIONS_INDEX_FILTERS_QUERY_FILTER_HPP -#define BOOST_GEOMETRY_EXTENSIONS_INDEX_FILTERS_QUERY_FILTER_HPP +#ifndef BOOST_GEOMETRY_EXTENSIONS_INDEX_ADAPTORS_SPATIAL_QUERY_HPP +#define BOOST_GEOMETRY_EXTENSIONS_INDEX_ADAPTORS_SPATIAL_QUERY_HPP namespace boost { namespace geometry { namespace index { @@ -74,4 +74,4 @@ operator|( }}} // namespace boost::geometry::index -#endif // BOOST_GEOMETRY_EXTENSIONS_INDEX_FILTERS_QUERY_FILTER_HPP +#endif // BOOST_GEOMETRY_EXTENSIONS_INDEX_ADAPTORS_SPATIAL_QUERY_HPP diff --git a/include/boost/geometry/extensions/index/pushable_array.hpp b/include/boost/geometry/extensions/index/pushable_array.hpp index 68b69dd00..14570afdf 100644 --- a/include/boost/geometry/extensions/index/pushable_array.hpp +++ b/include/boost/geometry/extensions/index/pushable_array.hpp @@ -151,7 +151,8 @@ public: inline void push_back(Element const& v) { BOOST_GEOMETRY_INDEX_ASSERT(m_size < Capacity, "can't further increase the size of the container"); - m_array[m_size++] = v; + m_array[m_size] = v; + ++m_size; } inline void pop_back() diff --git a/include/boost/geometry/extensions/index/rtree/filters.hpp b/include/boost/geometry/extensions/index/rtree/adaptors.hpp similarity index 87% rename from include/boost/geometry/extensions/index/rtree/filters.hpp rename to include/boost/geometry/extensions/index/rtree/adaptors.hpp index 44f56dd2f..85b14d670 100644 --- a/include/boost/geometry/extensions/index/rtree/filters.hpp +++ b/include/boost/geometry/extensions/index/rtree/adaptors.hpp @@ -1,6 +1,6 @@ // Boost.Geometry Index // -// R-tree queries filters implementation +// R-tree queries range adaptors // // Copyright (c) 2011-2012 Adam Wulkiewicz, Lodz, Poland. // @@ -8,14 +8,14 @@ // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) -#ifndef BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_FILTERS_HPP -#define BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_FILTERS_HPP +#ifndef BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_ADAPTORS_HPP +#define BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_ADAPTORS_HPP #include #include -#include -#include +#include +#include namespace boost { namespace geometry { namespace index { @@ -82,4 +82,4 @@ private: }}} // namespace boost::geometry::index -#endif // BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_FILTERS_HPP +#endif // BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_ADAPTORS_HPP diff --git a/include/boost/geometry/extensions/index/rtree/rtree.hpp b/include/boost/geometry/extensions/index/rtree/rtree.hpp index b8a93e95c..8020cdaf5 100644 --- a/include/boost/geometry/extensions/index/rtree/rtree.hpp +++ b/include/boost/geometry/extensions/index/rtree/rtree.hpp @@ -26,7 +26,7 @@ #include #include -#include +#include #include