author | "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> |
Tue Jan 27 19:53:44 2009 +0000 (2009-01-27) | |
changeset 1158 | 4e0970ec62a0 |
permissions | -rw-r--r-- |
yann@402 | 1 |
[See also http://gcc.gnu.org/ml/libstdc++/2001-11/msg00133.html ] |
yann@402 | 2 |
|
yann@402 | 3 |
Date: Fri, 16 Nov 2001 16:06:22 -0500 |
yann@402 | 4 |
From: Phil Edwards <pedwards at disaster dot jaj dot com> |
yann@402 | 5 |
To: gcc-patches at gcc dot gnu dot org |
yann@402 | 6 |
Subject: [libstdc++ trunk & 3.0] Fix deque memory leak |
yann@402 | 7 |
Message-ID: <20011116160622.A23094@disaster.jaj.com> |
yann@402 | 8 |
|
yann@402 | 9 |
|
yann@402 | 10 |
As discussed on the libstdc++ mailing list. Tested on i686/linux. |
yann@402 | 11 |
|
yann@402 | 12 |
|
yann@402 | 13 |
|
yann@402 | 14 |
2001-11-16 Paolo Carlini <pcarlini@unitus.it> |
yann@402 | 15 |
|
yann@402 | 16 |
* include/bits/stl_deque.h (deque::erase()): Fix memory leak. |
yann@402 | 17 |
|
yann@402 | 18 |
|
yann@402 | 19 |
[rediffed against 2.95.3 -- dank] |
yann@402 | 20 |
|
yann@402 | 21 |
--- gcc-2.95.3/libstdc++/stl/stl_deque.h.old 2001-01-01 09:48:22.000000000 -0800 |
yann@402 | 22 |
+++ gcc-2.95.3/libstdc++/stl/stl_deque.h 2006-02-18 15:24:17.000000000 -0800 |
yann@402 | 23 |
@@ -1052,7 +1052,7 @@ |
yann@402 | 24 |
copy_backward(_M_start, __first, __last); |
yann@402 | 25 |
iterator __new_start = _M_start + __n; |
yann@402 | 26 |
destroy(_M_start, __new_start); |
yann@402 | 27 |
- _M_destroy_nodes(__new_start._M_node, _M_start._M_node); |
yann@402 | 28 |
+ _M_destroy_nodes(_M_start._M_node, __new_start._M_node); /* fixed per http://gcc.gnu.org/ml/libstdc++/2001-11/msg00139.html */ |
yann@402 | 29 |
_M_start = __new_start; |
yann@402 | 30 |
} |
yann@402 | 31 |
else { |