diff options
author | Paolo Carlini <paolo.carlini@oracle.com> | 2008-11-10 13:47:12 +0000 |
---|---|---|
committer | Paolo Carlini <paolo@gcc.gnu.org> | 2008-11-10 13:47:12 +0000 |
commit | c8a5f8f292d2df6181d4e2aafe04ef85b0fe2cc8 (patch) | |
tree | dbba73176cd96e6497f23cfff7b9adbf198f43ae | |
parent | 5072c6bd2e2e365b1cc92e921cbf75d34fb26c0f (diff) | |
download | gcc-c8a5f8f292d2df6181d4e2aafe04ef85b0fe2cc8.zip gcc-c8a5f8f292d2df6181d4e2aafe04ef85b0fe2cc8.tar.gz gcc-c8a5f8f292d2df6181d4e2aafe04ef85b0fe2cc8.tar.bz2 |
re PR libstdc++/38067 (monetary_members.cc: 4 * call to wrong C++ delete)
2008-11-10 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/38067
* config/locale/gnu/monetary_members.cc (moneypunct<>::
_M_initialize_moneypunct(__c_locale, const char*)): Use correct vector
delete for __wcs_ps and __wcs_ns.
From-SVN: r141740
-rw-r--r-- | libstdc++-v3/ChangeLog | 7 | ||||
-rw-r--r-- | libstdc++-v3/config/locale/gnu/monetary_members.cc | 11 |
2 files changed, 13 insertions, 5 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 6c99698..a169022 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,10 @@ +2008-11-10 Paolo Carlini <paolo.carlini@oracle.com> + + PR libstdc++/38067 + * config/locale/gnu/monetary_members.cc (moneypunct<>:: + _M_initialize_moneypunct(__c_locale, const char*)): Use correct vector + delete for __wcs_ps and __wcs_ns. + 2008-11-07 Bob Walters <bob.s.walters@gmail.com> * include/ext/pointer.h: New, add experimental support for non-standard diff --git a/libstdc++-v3/config/locale/gnu/monetary_members.cc b/libstdc++-v3/config/locale/gnu/monetary_members.cc index 28683b5..ea2b4fc 100644 --- a/libstdc++-v3/config/locale/gnu/monetary_members.cc +++ b/libstdc++-v3/config/locale/gnu/monetary_members.cc @@ -1,6 +1,7 @@ // std::moneypunct implementation details, GNU version -*- C++ -*- -// Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 +// Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the @@ -455,8 +456,8 @@ _GLIBCXX_BEGIN_NAMESPACE(std) { delete _M_data; _M_data = 0; - delete __wcs_ps; - delete __wcs_ns; + delete [] __wcs_ps; + delete [] __wcs_ns; #if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2) __uselocale(__old); #else @@ -601,8 +602,8 @@ _GLIBCXX_BEGIN_NAMESPACE(std) { delete _M_data; _M_data = 0; - delete __wcs_ps; - delete __wcs_ns; + delete [] __wcs_ps; + delete [] __wcs_ns; #if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2) __uselocale(__old); #else |