Commit 7320b491 by Earl Chew Committed by Paolo Carlini

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
parent 5395b47b
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);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment