From issues-return-421-apmail-stdcxx-issues-archive=stdcxx.apache.org@stdcxx.apache.org Fri Feb 22 17:02:05 2008 Return-Path: Delivered-To: apmail-stdcxx-issues-archive@locus.apache.org Received: (qmail 83313 invoked from network); 22 Feb 2008 17:02:05 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 22 Feb 2008 17:02:05 -0000 Received: (qmail 15915 invoked by uid 500); 22 Feb 2008 17:02:00 -0000 Delivered-To: apmail-stdcxx-issues-archive@stdcxx.apache.org Received: (qmail 15892 invoked by uid 500); 22 Feb 2008 17:02:00 -0000 Mailing-List: contact issues-help@stdcxx.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@stdcxx.apache.org Delivered-To: mailing list issues@stdcxx.apache.org Received: (qmail 15883 invoked by uid 99); 22 Feb 2008 17:02:00 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 22 Feb 2008 09:02:00 -0800 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 22 Feb 2008 17:01:20 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 8211F234C010 for ; Fri, 22 Feb 2008 09:01:21 -0800 (PST) Message-ID: <276434807.1203699681527.JavaMail.jira@brutus> Date: Fri, 22 Feb 2008 09:01:21 -0800 (PST) From: "Martin Sebor (JIRA)" To: issues@stdcxx.apache.org Subject: [jira] Updated: (STDCXX-578) purify reports mismatched new/delete in facet implementation. MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/STDCXX-578?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Martin Sebor updated STDCXX-578: -------------------------------- Description: {noformat} **** Purify instrumented ./stocks (pid 19642) **** FMM: Freeing mismatched memory: * This is occurring while in thread 19642: operator delete(*) [rtlib.o] __rw::__rw_facet::~__rw_facet[not-in-charge]() [facet.cpp:139] std::time_put > >::~time_put[not-in-charge]() [_time_put.h:105] std::time_put_byname > >::~time_put_byname[in-charge deleting]() [ti_time_put.cpp:105] __rw::__rw_facet::_C_manage(__rw::__rw_facet*, __rw::__rw_facet::_C_facet_type, char const*, __rw::__rw_facet* (*)(unsigned, char const*)) [facet.cpp:427] __rw::__rw_locale::~__rw_locale[in-charge]() [locale_body.cpp:692] * Attempting to free block at 0x80f3fe0 in the heap. * Address 0x80f3fe0 is at the beginning of a malloc'd block of 2452 bytes. * This block was allocated from thread -1207973632: malloc [rtlib.o] operator new(unsigned) [libstd15d.so] operator new [](unsigned) [libstd15d.so] __rw::__rw_get_timepunct(__rw::__rw_facet const*, int, unsigned) [time_put.cpp:454] __rw::__rw_get_time_put_data(__rw::__rw_time_put_data&, __rw::__rw_facet const*, tm const*, char, char, bool) [time_put.cpp:2115] __rw::__rw_put_time(__rw::__rw_facet const*, char*, unsigned, std::ios_base&, char, tm const*, char, char, int, int) [time_put.cpp:2666] * This block of memory was obtained using an allocation routine which is not compatible with the routine by which it is being freed. {noformat} Memory is allocated with array new, but deallocated with operator delete. was: **** Purify instrumented ./stocks (pid 19642) **** FMM: Freeing mismatched memory: * This is occurring while in thread 19642: operator delete(*) [rtlib.o] __rw::__rw_facet::~__rw_facet[not-in-charge]() [facet.cpp:139] std::time_put > >::~time_put[not-in-charge]() [_time_put.h:105] std::time_put_byname > >::~time_put_byname[in-charge deleting]() [ti_time_put.cpp:105] __rw::__rw_facet::_C_manage(__rw::__rw_facet*, __rw::__rw_facet::_C_facet_type, char const*, __rw::__rw_facet* (*)(unsigned, char const*)) [facet.cpp:427] __rw::__rw_locale::~__rw_locale[in-charge]() [locale_body.cpp:692] * Attempting to free block at 0x80f3fe0 in the heap. * Address 0x80f3fe0 is at the beginning of a malloc'd block of 2452 bytes. * This block was allocated from thread -1207973632: malloc [rtlib.o] operator new(unsigned) [libstd15d.so] operator new [](unsigned) [libstd15d.so] __rw::__rw_get_timepunct(__rw::__rw_facet const*, int, unsigned) [time_put.cpp:454] __rw::__rw_get_time_put_data(__rw::__rw_time_put_data&, __rw::__rw_facet const*, tm const*, char, char, bool) [time_put.cpp:2115] __rw::__rw_put_time(__rw::__rw_facet const*, char*, unsigned, std::ios_base&, char, tm const*, char, char, int, int) [time_put.cpp:2666] * This block of memory was obtained using an allocation routine which is not compatible with the routine by which it is being freed. Memory is allocated with array new, but deallocated with operator delete. Disabled formatting. > purify reports mismatched new/delete in facet implementation. > ------------------------------------------------------------- > > Key: STDCXX-578 > URL: https://issues.apache.org/jira/browse/STDCXX-578 > Project: C++ Standard Library > Issue Type: Bug > Components: 22. Localization > Affects Versions: 4.2.0 > Reporter: Travis Vitek > Assignee: Travis Vitek > Fix For: 4.2.1 > > Attachments: stdcxx-578.patch > > > {noformat} > **** Purify instrumented ./stocks (pid 19642) **** > FMM: Freeing mismatched memory: > * This is occurring while in thread 19642: > operator delete(*) [rtlib.o] > __rw::__rw_facet::~__rw_facet[not-in-charge]() [facet.cpp:139] > std::time_put > >::~time_put[not-in-charge]() [_time_put.h:105] > std::time_put_byname > >::~time_put_byname[in-charge deleting]() [ti_time_put.cpp:105] > __rw::__rw_facet::_C_manage(__rw::__rw_facet*, __rw::__rw_facet::_C_facet_type, char const*, __rw::__rw_facet* (*)(unsigned, char const*)) [facet.cpp:427] > __rw::__rw_locale::~__rw_locale[in-charge]() [locale_body.cpp:692] > * Attempting to free block at 0x80f3fe0 in the heap. > * Address 0x80f3fe0 is at the beginning of a malloc'd block of 2452 bytes. > * This block was allocated from thread -1207973632: > malloc [rtlib.o] > operator new(unsigned) [libstd15d.so] > operator new [](unsigned) [libstd15d.so] > __rw::__rw_get_timepunct(__rw::__rw_facet const*, int, unsigned) [time_put.cpp:454] > __rw::__rw_get_time_put_data(__rw::__rw_time_put_data&, __rw::__rw_facet const*, tm const*, char, char, bool) [time_put.cpp:2115] > __rw::__rw_put_time(__rw::__rw_facet const*, char*, unsigned, std::ios_base&, char, tm const*, char, char, int, int) [time_put.cpp:2666] > * This block of memory was obtained using an allocation routine which is > not compatible with the routine by which it is being freed. > {noformat} > Memory is allocated with array new, but deallocated with operator delete. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.