<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"><channel><title>Recent changes to 376: memory leaks</title><link>http://sourceforge.net/p/flac/bugs/376/</link><description>Recent changes to 376: memory leaks</description><language>en</language><lastBuildDate>Mon, 07 Mar 2011 22:44:46 -0000</lastBuildDate><item><title>memory leaks</title><link>http://sourceforge.net/p/flac/bugs/376/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;when encoding OggFLAC using libFLAC, calling FLAC__stream_encoder_finish() causes memory leaks.&lt;br /&gt;
if i don't call this function, no memory leaks occur.&lt;/p&gt;
&lt;p&gt;number of those memory leaks depend on whether any metadata are created (don't even have to be added using FLAC__stream_encoder_set_metadata() to cause memory leaks!!!) and whether any samples are encoded (whether FLAC__stream_encoder_process() is called).&lt;/p&gt;
&lt;p&gt;i'm using flac-1.2.1&lt;/p&gt;
&lt;p&gt;Is this a known issue? I can provide test case, if needed.&lt;/p&gt;
&lt;p&gt;example memory leaks:&lt;br /&gt;
DEBUG: output from _CrtDumpMemoryLeaks() for LibOggEncoder.dll:&lt;br /&gt;
Detected memory leaks!&lt;br /&gt;
Dumping objects -&amp;gt;&lt;br /&gt;
{183} normal block at 0x01F54318, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;br /&gt;
{182} normal block at 0x01F541E8, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 04 00 00 00 04 00 00 00 04 00 00 00 04 00 00 00&lt;br /&gt;
{181} normal block at 0x01F540B8, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;br /&gt;
{180} normal block at 0x01F53F88, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 06 00 00 00 06 00 00 00 05 00 00 00 05 00 00 00&lt;br /&gt;
{175} normal block at 0x01F73048, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;br /&gt;
{174} normal block at 0x01F72F18, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 04 00 00 00 04 00 00 00 04 00 00 00 04 00 00 00&lt;br /&gt;
{173} normal block at 0x01F569A8, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;br /&gt;
{172} normal block at 0x01F56878, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 04 00 00 00 04 00 00 00 04 00 00 00 04 00 00 00&lt;br /&gt;
{171} normal block at 0x01F56748, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;br /&gt;
{170} normal block at 0x01F56618, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 06 00 00 00 06 00 00 00 05 00 00 00 05 00 00 00&lt;br /&gt;
{169} normal block at 0x01F564E8, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;br /&gt;
{168} normal block at 0x01F563B8, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 06 00 00 00 06 00 00 00 05 00 00 00 05 00 00 00&lt;br /&gt;
{167} normal block at 0x01F56288, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;br /&gt;
{166} normal block at 0x01F56158, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 06 00 00 00 06 00 00 00 05 00 00 00 05 00 00 00&lt;br /&gt;
{165} normal block at 0x01F56028, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;br /&gt;
{164} normal block at 0x01DCFE50, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 06 00 00 00 06 00 00 00 06 00 00 00 05 00 00 00&lt;br /&gt;
{163} normal block at 0x01DCFD20, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;br /&gt;
{162} normal block at 0x01DCFBF0, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 06 00 00 00 06 00 00 00 05 00 00 00 05 00 00 00&lt;br /&gt;
{161} normal block at 0x01DCFAC0, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;br /&gt;
{160} normal block at 0x01DCF990, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 06 00 00 00 06 00 00 00 05 00 00 00 05 00 00 00&lt;br /&gt;
{159} normal block at 0x01DCF860, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;br /&gt;
{158} normal block at 0x01F4BDE8, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 04 00 00 00 03 00 00 00 03 00 00 00 03 00 00 00&lt;br /&gt;
{157} normal block at 0x01F4BCB8, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;br /&gt;
{156} normal block at 0x01F4BB88, 256 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 04 00 00 00 04 00 00 00 04 00 00 00 04 00 00 00&lt;br /&gt;
{154} normal block at 0x01F37258, 32768 bytes long.&lt;br /&gt;
Data: &amp;lt;_               &amp;gt; 5F 09 00 00 07 0B 00 00 D7 07 00 00 B3 F8 FF FF&lt;br /&gt;
{146} normal block at 0x01DCF7F0, 64 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD&lt;br /&gt;
{145} normal block at 0x01DCF760, 96 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;br /&gt;
{144} normal block at 0x01F472E8, 6160 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;br /&gt;
{143} normal block at 0x01DCF538, 504 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 09 00 00 00 02 00 00 00 01 00 00 00 10 00 00 00&lt;br /&gt;
{142} normal block at 0x01DCF500, 8 bytes long.&lt;br /&gt;
Data: &amp;lt;8    r  &amp;gt; 38 F5 DC 01 E8 72 F4 01&lt;br /&gt;
{117} normal block at 0x01DCA438, 56 bytes long.&lt;br /&gt;
Data: &amp;lt;    P           &amp;gt; 0E 00 00 00 50 A2 DC 01 14 00 00 00 C8 A2 DC 01&lt;br /&gt;
{116} normal block at 0x01DCA3E8, 30 bytes long.&lt;br /&gt;
Data: &amp;lt;GENRE=Drum &amp;amp; Bas&amp;gt; 47 45 4E 52 45 3D 44 72 75 6D 20 26 20 42 61 73&lt;br /&gt;
{113} normal block at 0x01DCA310, 16 bytes long.&lt;br /&gt;
Data: &amp;lt;TRACKNUMBER=1/4 &amp;gt; 54 52 41 43 4B 4E 55 4D 42 45 52 3D 31 2F 34 00&lt;br /&gt;
{110} normal block at 0x01DCA290, 10 bytes long.&lt;br /&gt;
Data: &amp;lt;DATE=1999 &amp;gt; 44 41 54 45 3D 31 39 39 39 00&lt;br /&gt;
{107} normal block at 0x01DCA350, 15 bytes long.&lt;br /&gt;
Data: &amp;lt;ALBUM=Distroia &amp;gt; 41 4C 42 55 4D 3D 44 69 73 74 72 6F 69 61 00&lt;br /&gt;
{104} normal block at 0x01DCA2C8, 21 bytes long.&lt;br /&gt;
Data: &amp;lt;ARTIST=Mouse on &amp;gt; 41 52 54 49 53 54 3D 4D 6F 75 73 65 20 6F 6E 20&lt;br /&gt;
{101} normal block at 0x01DCA250, 15 bytes long.&lt;br /&gt;
Data: &amp;lt;TITLE=Distroia &amp;gt; 54 49 54 4C 45 3D 44 69 73 74 72 6F 69 61 00&lt;br /&gt;
{98} normal block at 0x01DCA200, 33 bytes long.&lt;br /&gt;
Data: &amp;lt;reference libFLA&amp;gt; 72 65 66 65 72 65 6E 63 65 20 6C 69 62 46 4C 41&lt;br /&gt;
{97} normal block at 0x01DCA120, 176 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 04 00 00 00 01 00 00 00 FA BE 00 00 00 00 00 00&lt;br /&gt;
{96} normal block at 0x01DCA0F0, 4 bytes long.&lt;br /&gt;
Data: &amp;lt;    &amp;gt; 20 A1 DC 01&lt;br /&gt;
{118} normal block at 0x01EE0068, 48722 bytes long.&lt;br /&gt;
Data: &amp;lt;METADATA_BLOCK_P&amp;gt; 4D 45 54 41 44 41 54 41 5F 42 4C 4F 43 4B 5F 50&lt;br /&gt;
{92} normal block at 0x01DC3B50, 60 bytes long.&lt;br /&gt;
Data: &amp;lt;            imag&amp;gt; 03 00 00 00 00 00 00 00 CD CD CD CD 69 6D 61 67&lt;br /&gt;
{85} normal block at 0x01DC9F78, 32 bytes long.&lt;br /&gt;
Data: &amp;lt;Drum &amp;amp; Bass, Ele&amp;gt; 44 72 75 6D 20 26 20 42 61 73 73 2C 20 45 6C 65&lt;br /&gt;
{83} normal block at 0x01DC9FE8, 216 bytes long.&lt;br /&gt;
Data: &amp;lt;            Dist&amp;gt; 0F 00 00 00 00 00 00 00 CD CD CD CD 44 69 73 74&lt;br /&gt;
{74} normal block at 0x01DC3B10, 20 bytes long.&lt;br /&gt;
Data: &amp;lt;     5          &amp;gt; 00 00 00 00 97 35 00 00 00 00 00 00 00 00 00 00&lt;br /&gt;
{73} normal block at 0x01DC70B0, 11848 bytes long.&lt;br /&gt;
Data: &amp;lt;    X    /      &amp;gt; 00 10 00 00 58 EF EE 01 98 2F EF 01 00 00 00 00&lt;br /&gt;
{72} normal block at 0x01DC6D78, 776 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 05 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00&lt;br /&gt;
{71} normal block at 0x01DC3AD8, 8 bytes long.&lt;br /&gt;
Data: &amp;lt;xm   p  &amp;gt; 78 6D DC 01 B0 70 DC 01&lt;br /&gt;
{70} normal block at 0x01DC2C58, 3664 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;br /&gt;
{69} normal block at 0x01DC2920, 776 bytes long.&lt;br /&gt;
Data: &amp;lt;                &amp;gt; 06 00 00 00 02 00 00 00 00 00 00 00 CD CD CD CD&lt;br /&gt;
Object dump complete.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Anonymous</dc:creator><pubDate>Mon, 07 Mar 2011 22:44:46 -0000</pubDate><guid>http://sourceforge.net7fd033a223a39e5a992ef6f521bc557aaad939a1</guid></item></channel></rss>