<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Memleak]]></title><description><![CDATA[<p>Hi leute.</p>
<p>Habt ihr eine Idee warum nach ausführen von folgendem code memory leaks entstehen?</p>
<pre><code class="language-cpp">{
    // CMemFile memfile
    // int datasize

    BYTE detachedBuffer[1024];
    memcpy(&amp;detachedBuffer[0],&amp;datasize,sizeof(datasize));
    memcpy(&amp;detachedBuffer[4],memfile.Detach(),datasize);
}
</code></pre>
<p>Vielen dank im voraus!</p>
<p>cheers,<br />
Mike</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/177790/memleak</link><generator>RSS for Node</generator><lastBuildDate>Tue, 21 Apr 2026 12:05:47 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/177790.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 04 Apr 2007 08:33:55 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Memleak on Wed, 04 Apr 2007 08:33:55 GMT]]></title><description><![CDATA[<p>Hi leute.</p>
<p>Habt ihr eine Idee warum nach ausführen von folgendem code memory leaks entstehen?</p>
<pre><code class="language-cpp">{
    // CMemFile memfile
    // int datasize

    BYTE detachedBuffer[1024];
    memcpy(&amp;detachedBuffer[0],&amp;datasize,sizeof(datasize));
    memcpy(&amp;detachedBuffer[4],memfile.Detach(),datasize);
}
</code></pre>
<p>Vielen dank im voraus!</p>
<p>cheers,<br />
Mike</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1259024</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1259024</guid><dc:creator><![CDATA[T1c4L]]></dc:creator><pubDate>Wed, 04 Apr 2007 08:33:55 GMT</pubDate></item><item><title><![CDATA[Reply to Memleak on Wed, 04 Apr 2007 08:59:10 GMT]]></title><description><![CDATA[<p>Vermutlich weil Detach() den vom Memfile verwalteten Speicherblock in deine Verantwortung übergeben hat - das heißt, du bist auch dafür verantwortlich den Speicher freizugeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1259046</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1259046</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 04 Apr 2007 08:59:10 GMT</pubDate></item><item><title><![CDATA[Reply to Memleak on Wed, 04 Apr 2007 09:21:37 GMT]]></title><description><![CDATA[<blockquote>
<p>Vermutlich weil Detach() den vom Memfile verwalteten Speicherblock in deine Verantwortung übergeben hat - das heißt, du bist auch dafür verantwortlich den Speicher freizugeben.</p>
</blockquote>
<p>der speicher wird doch dem BYTE objekt übergeben und sollte doch beim &quot;}&quot; wieder freigegeben werden oder?</p>
<p>das ::Detach() führt auch ein ::Close() des memfile objekts aus.<br />
Urspürnglich erhielt ich auch keine memleaks, erst seitdem ich diese zeile hinzugefügt habe.</p>
<pre><code class="language-cpp">memcpy(&amp;detachedBuffer[0],&amp;datasize,sizeof(datasize));
</code></pre>
<p>cheers,<br />
mike</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1259069</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1259069</guid><dc:creator><![CDATA[T1c4L]]></dc:creator><pubDate>Wed, 04 Apr 2007 09:21:37 GMT</pubDate></item><item><title><![CDATA[Reply to Memleak on Wed, 04 Apr 2007 09:41:08 GMT]]></title><description><![CDATA[<p>yeah so funzt jetzt</p>
<pre><code class="language-cpp">{

    BYTE detachedBuffer[1024];
    BYTE* pB = memfile.Detach();
    memcpy(&amp;detachedBuffer[0],&amp;datasize,sizeof(datasize));
    memcpy(&amp;detachedBuffer[4],pB,datasize);
    free(pB);
}
</code></pre>
<p>danke das mit dem detach/buffer war die lösung!</p>
<p>cheers,<br />
mike</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1259089</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1259089</guid><dc:creator><![CDATA[T1c4L]]></dc:creator><pubDate>Wed, 04 Apr 2007 09:41:08 GMT</pubDate></item></channel></rss>