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
This commit is contained in:
Paolo Carlini 2008-11-10 13:47:12 +00:00 committed by Paolo Carlini
parent 5072c6bd2e
commit c8a5f8f292
2 changed files with 13 additions and 5 deletions

View File

@ -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

View File

@ -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