From 62367b52e197b1dbca5ec8ba423a2ce3bfc89790 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ion=20Gazta=C3=B1aga?= Date: Fri, 25 Apr 2014 18:18:37 +0200 Subject: [PATCH] Fixed #9949 (clear header node hooks upon intrusive container destruction) --- doc/intrusive.qbk | 1 + include/boost/intrusive/bstree.hpp | 1 - include/boost/intrusive/list.hpp | 1 - include/boost/intrusive/slist.hpp | 1 - 4 files changed, 1 insertion(+), 3 deletions(-) diff --git a/doc/intrusive.qbk b/doc/intrusive.qbk index 4b2c898..a0cf973 100644 --- a/doc/intrusive.qbk +++ b/doc/intrusive.qbk @@ -3799,6 +3799,7 @@ to be inserted in intrusive containers are allocated using `std::vector` or `std * [@https://svn.boost.org/trac/boost/ticket/9332 #9332: ['"has_member_function_callable_with.hpp compile error on msvc-12.0"]]. * [@https://svn.boost.org/trac/boost/ticket/9746 #9746: Modern Sun CC compiler detects error in intrusive library header] * [@https://svn.boost.org/trac/boost/ticket/9940 #9940: bad bug in intrusive list with safe_link (or auto_unlink) hooks] + * [@https://svn.boost.org/trac/boost/ticket/9949 #9949: clear header node hooks upon intrusive container destruction] * Optimized tree rebalancing code to avoid redundant assignments. diff --git a/include/boost/intrusive/bstree.hpp b/include/boost/intrusive/bstree.hpp index ea0cbc8..d2850e9 100644 --- a/include/boost/intrusive/bstree.hpp +++ b/include/boost/intrusive/bstree.hpp @@ -526,7 +526,6 @@ struct bstbase ( this->header_ptr() , detail::node_disposer (detail::null_disposer(), &this->get_value_traits())); - node_algorithms::init(this->header_ptr()); } } }; diff --git a/include/boost/intrusive/list.hpp b/include/boost/intrusive/list.hpp index f9bcb96..ac845c4 100644 --- a/include/boost/intrusive/list.hpp +++ b/include/boost/intrusive/list.hpp @@ -205,7 +205,6 @@ class list_impl { if(is_safe_autounlink::value){ this->clear(); - node_algorithms::init(this->get_root_node()); } } diff --git a/include/boost/intrusive/slist.hpp b/include/boost/intrusive/slist.hpp index 8307358..fa88cd2 100644 --- a/include/boost/intrusive/slist.hpp +++ b/include/boost/intrusive/slist.hpp @@ -339,7 +339,6 @@ class slist_impl { if(is_safe_autounlink::value){ this->clear(); - node_algorithms::init(this->get_root_node()); } }