mirror of
https://gcc.gnu.org/git/gcc.git
synced 2024-12-12 21:33:54 +08:00
stl_tree.h (_Rb_tree<>::_M_insert): Don't leak memory if _M_key_compare throws.
2005-02-26 Earl Chew <earl_chew@agilent.com> Christopher Jefferson <chris@bubblescope.net> * include/bits/stl_tree.h (_Rb_tree<>::_M_insert): Don't leak memory if _M_key_compare throws. Co-Authored-By: Chris Jefferson <chris@bubblescope.net> From-SVN: r95597
This commit is contained in:
parent
5395b47b3c
commit
7320b491ec
@ -1,3 +1,9 @@
|
||||
2005-02-26 Earl Chew <earl_chew@agilent.com>
|
||||
Christopher Jefferson <chris@bubblescope.net>
|
||||
|
||||
* include/bits/stl_tree.h (_Rb_tree<>::_M_insert): Don't leak
|
||||
memory if _M_key_compare throws.
|
||||
|
||||
2005-02-25 Paolo Carlini <pcarlini@suse.de>
|
||||
|
||||
* include/tr1/type_traits: Add the trivial is_union and is_class;
|
||||
|
@ -786,12 +786,11 @@ namespace std
|
||||
_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
|
||||
_M_insert(_Base_ptr __x, _Base_ptr __p, const _Val& __v)
|
||||
{
|
||||
_Link_type __z = _M_create_node(__v);
|
||||
bool __insert_left;
|
||||
bool __insert_left = (__x != 0 || __p == _M_end()
|
||||
|| _M_impl._M_key_compare(_KeyOfValue()(__v),
|
||||
_S_key(__p)));
|
||||
|
||||
__insert_left = (__x != 0 || __p == _M_end()
|
||||
|| _M_impl._M_key_compare(_KeyOfValue()(__v),
|
||||
_S_key(__p)));
|
||||
_Link_type __z = _M_create_node(__v);
|
||||
|
||||
_Rb_tree_insert_and_rebalance(__insert_left, __z, __p,
|
||||
this->_M_impl._M_header);
|
||||
|
Loading…
Reference in New Issue
Block a user