You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@stdcxx.apache.org by "Travis Vitek (JIRA)" <ji...@apache.org> on 2007/10/12 01:48:50 UTC
[jira] Updated: (STDCXX-587) purify reports memory leak from
__rw_tmpbuf in 20.temp.buffer.mt
[ https://issues.apache.org/jira/browse/STDCXX-587?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Travis Vitek updated STDCXX-587:
--------------------------------
Attachment: stdcxx-587.patch
2007-10-11 Travis Vitek <vi...@roguewave.com>
STDCXX-587
* 20.temp.buffer.mt.cpp (test_return_buffer): Set buffer pointer
to 0 after deallocating.
(thr_func): Provide default values for buffers. Deallocate buffers
that remain allocated after thread loop.
> purify reports memory leak from __rw_tmpbuf in 20.temp.buffer.mt
> ----------------------------------------------------------------
>
> Key: STDCXX-587
> URL: https://issues.apache.org/jira/browse/STDCXX-587
> Project: C++ Standard Library
> Issue Type: Improvement
> Components: Tests
> Reporter: Travis Vitek
> Priority: Minor
> Fix For: 4.2.1
>
> Attachments: stdcxx-587.patch
>
>
> Each test thread iterates some number of times switching on a counter. If the last iteration runs one of the allocation functions, the temporary buffer will not be deallocated when the thread exits.
> Purify: Searching for all memory leaks...
> Memory leaked: 42 bytes (6.98%); potentially leaked: 0 bytes (0%)
> MLK: 24 bytes leaked at 0x81089d0
> * This memory was allocated from:
> malloc [rtlib.o]
> operator new(unsigned) [libstd15d.so]
> __rw::__rw_allocate(unsigned, int) [memory.cpp:53]
> __rw_tmpbuf [tmpbuf.cpp:115]
> std::pair<long long*, int > std::get_temporary_buffer<long long, int >(int, long long*) [_rawiter.h:138]
> std::pair<long long*, int > std::get_temporary_buffer<long long>(int) [_rawiter.h:153]
> MLK: 18 bytes leaked at 0x8108a38
> * This memory was allocated from:
> malloc [rtlib.o]
> operator new(unsigned) [libstd15d.so]
> __rw::__rw_allocate(unsigned, int) [memory.cpp:53]
> __rw_tmpbuf [tmpbuf.cpp:115]
> std::pair<short*, int > std::get_temporary_buffer<short, int >(int, short*) [_rawiter.h:138]
> std::pair<short*, int > std::get_temporary_buffer<short>(int) [_rawiter.h:153]
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.