diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index a6a05895899848316028d1c251820bafb20f5f9e..ce61055d8b723ea6cce5f5580a636d897ce2be10 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,8 @@ +2006-10-29 Paolo Carlini <pcarlini@suse.de> + + * src/debug.cc (_Safe_sequence_base::_M_revalidate_singular): Fix + pasto, advance __iter only once per iteration. + 2006-10-29 Paolo Carlini <pcarlini@suse.de> PR libstdc++/29520 diff --git a/libstdc++-v3/src/debug.cc b/libstdc++-v3/src/debug.cc index c43acd6e727528099d76e3e4d01df5ab68d3afbb..46c6c14810f310409d07f45437fca713c136c5ba 100644 --- a/libstdc++-v3/src/debug.cc +++ b/libstdc++-v3/src/debug.cc @@ -146,23 +146,18 @@ namespace __gnu_debug __old->_M_attach(0, true); } } - - void + + void _Safe_sequence_base:: _M_revalidate_singular() { - _Safe_iterator_base* __iter; - for (__iter = _M_iterators; __iter; __iter = __iter->_M_next) - { - __iter->_M_version = _M_version; - __iter = __iter->_M_next; - } - - for (__iter = _M_const_iterators; __iter; __iter = __iter->_M_next) - { - __iter->_M_version = _M_version; - __iter = __iter->_M_next; - } + for (_Safe_iterator_base* __iter = _M_iterators; __iter; + __iter = __iter->_M_next) + __iter->_M_version = _M_version; + + for (_Safe_iterator_base* __iter2 = _M_const_iterators; __iter2; + __iter2 = __iter2->_M_next) + __iter2->_M_version = _M_version; } void