Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > C++ > Memory leaking

Reply
Thread Tools

Memory leaking

 
 
Sigmathaar
Guest
Posts: n/a
 
      12-20-2005
Hi, I'm having some trouble while debuging some code. My compiler says
the code is OK but whenever I try to execute the program nothing
happens. Using my debuger I got the next message :

Detected memory leaks!
Dumping objects ->
{56} normal block at 0x02EA5DF8, 6 bytes long.
Data: <U> 50 75 65 62 6C 61
{55} normal block at 0x02EA5DB0, 7 bytes long.
Data: <O> 4E 61 79 61 72 69 74
{54} normal block at 0x02EA5D60, 16 bytes long.
Data: <I> 45 73 74 61 64 6F 20 64 65 20 4D E9 78 69 63 6F
{53} normal block at 0x02EA5D10, 16 bytes long.
Data: <E> 44 69 73 74 72 69 74 6F 20 46 65 64 65 72 61 6C
{52} normal block at 0x02EA5CC0, 19 bytes long.
Data: <A> 42 61 6A 61 20 43 61 6C 69 66 6F 72 6E 69 61 20
{51} normal block at 0x02EA5C80, 1 bytes long.
Data: <Vowels> 46
Object dump complete.

This is the code I'm using, it's some kind of XML paser which has beed
adapted from an MSDN example of the DOM library :

*********************************************** CODE
***********************************************

#include "stdafx.h"
#include <stdio.h>
#include <string.h>
#include <stdarg.h>
#include <windows.h>
#include <direct.h>
#import <msxml3.dll> raw_interfaces_only

char * BSTRtoChar(BSTR bstr)
{
// CP_ACP for a Windows ANSI conversion
unsigned long length = WideCharToMultiByte (
CP_ACP, 0, bstr, SysStringLen(bstr), NULL, 0, NULL, NULL);

char * convStr= new char[length];

length = WideCharToMultiByte ( CP_ACP, 0, bstr, SysStringLen(bstr),
reinterpret_cast <char *>(convStr), length, NULL, NULL);

convStr[length] = '\0';
return convStr;
}

// Macro that calls a COM method returning HRESULT value:
#define HRCALL(a, errmsg) \
do { \
hr = (a); \
if (FAILED(hr)) { \
dprintf( "%s:%d HRCALL Failed: %s\n 0x%.8x = %s\n", \
__FILE__, __LINE__, errmsg, hr, #a ); \
goto clean; \
} \
} while (0)

// Helper function that put output in stdout and debug window
// in Visual Studio:
void dprintf( char * format, ...)
{
static char buf[1024];
va_list args;
va_start( args, format );
vsprintf( buf, format, args );
va_end( args);
OutputDebugStringA( buf);
printf("%s", buf);
}

// Helper function to create a DOM instance:
IXMLDOMDocument * DomFromCOM()
{
HRESULT hr;
IXMLDOMDocument *pxmldoc = NULL;

HRCALL( CoCreateInstance(__uuidof(MSXML2:OMDocument30),
NULL,
CLSCTX_INPROC_SERVER,
__uuidof(IXMLDOMDocument),
(void**)&pxmldoc),
"Create a new DOMDocument");

HRCALL( pxmldoc->put_async(VARIANT_FALSE),
"should never fail");
HRCALL( pxmldoc->put_validateOnParse(VARIANT_FALSE),
"should never fail");
HRCALL( pxmldoc->put_resolveExternals(VARIANT_FALSE),
"should never fail");

return pxmldoc;
clean:
if (pxmldoc)
{
pxmldoc->Release();
}
return NULL;
}

VARIANT VariantString(BSTR str)
{
VARIANT var;
VariantInit(&var);
V_BSTR(&var) = SysAllocString(str);
V_VT(&var) = VT_BSTR;
return var;
}

void ReportParseError(IXMLDOMDocument *pDom, char *desc) {
IXMLDOMParseError *pXMLErr=NULL;
BSTR bstrReason = NULL;
HRESULT hr;
HRCALL(pDom->get_parseError(&pXMLErr),
"dom->get_parseError: ");
HRCALL(pXMLErr->get_reason(&bstrReason),
"parseError->get_reason: ");

dprintf("%s %S\n",desc, bstrReason);
clean:
if (pXMLErr) pXMLErr->Release();
if (bstrReason) SysFreeString(bstrReason);
}

int _tmain(int argc, _TCHAR* argv[])
{
IXMLDOMDocument *pXMLDom=NULL;
IXMLDOMNodeList *pNodes=NULL;
IXMLDOMNode *pNode=NULL;
BSTR bstr = NULL;
VARIANT_BOOL status;
VARIANT var;
HRESULT hr;
long length;
CHAR szRoot[18];

CoInitialize(NULL);

pXMLDom = DomFromCOM();
if (!pXMLDom) goto clean;

VariantInit(&var);
var = VariantString(L"00000.xml");
HRCALL(pXMLDom->load(var, &status), "dom->load(): ");
if (status!=VARIANT_TRUE) {
ReportParseError(pXMLDom,
"Failed to load DOM from stocks.xml");
goto clean;
}

// Query a single node.
if (bstr) SysFreeString(bstr);
bstr = SysAllocString(L"//thesaurusList/thesaurusEntry/@lang");
HRCALL(pXMLDom->selectSingleNode(bstr,
&pNode),"dom->selectSingleNode: ");
if (!pNode) {
ReportParseError(pXMLDom, "Calling selectSingleNode ");
}
else {
HRCALL(pNode->get_text(&bstr)," get_text ");
sprintf(szRoot, "%s\\%s\\%s", "C:", "cdWebFolder", BSTRtoChar(bstr));
}


// Query a node-set.
if (bstr) SysFreeString(bstr);
bstr = SysAllocString(L"//thesaurusEntry/topTerm");
HRCALL(pXMLDom->selectNodes(bstr, &pNodes), "selectNodes ");
if (!pNodes) {
ReportParseError(pXMLDom, "Error while calling selectNodes ");
}
else {
HRCALL(pNodes->get_length(&length), "get_length: ");
for (long i=0; i<length; i++) {
if (pNode) pNode->Release();
HRCALL(pNodes->get_item(i, &pNode), "get_item: ");
if (bstr) SysFreeString(bstr);
HRCALL(pNode->get_text(&bstr), "get_text: ");
CHAR szPath[50];
sprintf(szPath, "%s\\%s\\", szRoot, BSTRtoChar(bstr));
_mkdir(szPath);
}
}

clean:
if (bstr) SysFreeString(bstr);
if (&var) VariantClear(&var);
if (pXMLDom) pXMLDom->Release();
if (pNodes) pNodes->Release();
if (pNode) pNode->Release();

CoUninitialize();
return 0;
}

****************************************** END OF CODE
******************************************

Can somebody explain why there is a memory leaking in this code?

Thanks.

 
Reply With Quote
 
 
 
 
Jim Langston
Guest
Posts: n/a
 
      12-20-2005

"Sigmathaar" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed) oups.com...
> Hi, I'm having some trouble while debuging some code. My compiler says
> the code is OK but whenever I try to execute the program nothing
> happens. Using my debuger I got the next message :
>
> Detected memory leaks!
> Dumping objects ->
> {56} normal block at 0x02EA5DF8, 6 bytes long.
> Data: <U> 50 75 65 62 6C 61
> {55} normal block at 0x02EA5DB0, 7 bytes long.
> Data: <O> 4E 61 79 61 72 69 74
> {54} normal block at 0x02EA5D60, 16 bytes long.
> Data: <I> 45 73 74 61 64 6F 20 64 65 20 4D E9 78 69 63 6F
> {53} normal block at 0x02EA5D10, 16 bytes long.
> Data: <E> 44 69 73 74 72 69 74 6F 20 46 65 64 65 72 61 6C
> {52} normal block at 0x02EA5CC0, 19 bytes long.
> Data: <A> 42 61 6A 61 20 43 61 6C 69 66 6F 72 6E 69 61 20
> {51} normal block at 0x02EA5C80, 1 bytes long.
> Data: <Vowels> 46
> Object dump complete.
>
> This is the code I'm using, it's some kind of XML paser which has beed
> adapted from an MSDN example of the DOM library :


I would suggest you post this question in microsoft.public.vc.language.
There is heavy Windows code in this and without knowing what the windows
specific functions do it'll be hard to find the problem.


 
Reply With Quote
 
 
 
 
yuvalif@gmail.com
Guest
Posts: n/a
 
      12-20-2005
BSTRtoChar allocate memory but you call it without assigning its
allocated pointer into anything, that a memory leak.

 
Reply With Quote
 
Sigmathaar
Guest
Posts: n/a
 
      12-20-2005
yuva said :

> BSTRtoChar allocate memory but you call it without assigning its
> allocated pointer into anything, that a memory leak.


I've tried to do something like this :

char * conversion;
conversion = BSTRtoChar(bstr);
sprintf(szPath, "%s\\%s\\", szRoot, conversion);

If doing so the message in the debuger is still the same :

Detected memory leaks! ....

I don't know if that's what you were saying but if not can you please
be more clear?

 
Reply With Quote
 
deane_gavin@hotmail.com
Guest
Posts: n/a
 
      12-20-2005

Sigmathaar wrote:
> yuva said :
>
> > BSTRtoChar allocate memory but you call it without assigning its
> > allocated pointer into anything, that a memory leak.

>
> I've tried to do something like this :
>
> char * conversion;
> conversion = BSTRtoChar(bstr);
> sprintf(szPath, "%s\\%s\\", szRoot, conversion);
>
> If doing so the message in the debuger is still the same :
>
> Detected memory leaks! ....
>
> I don't know if that's what you were saying but if not can you please
> be more clear?


I hope not, since (as has been pointed out) BSTRtoChar is a Windows API
function so has nothing to do with the C++ language.

If you ask in a Windows programming newsgroup I am sure you will find
people who can help you. Moreover, any answers you get will be
peer-reviewed by other Windows API experts who will be able to point
out any corrections necessary in inaccurate answers. You won't get that
level of confidence here.

Gavin Deane

 
Reply With Quote
 
=?ISO-8859-1?Q?Stefan_N=E4we?=
Guest
Posts: n/a
 
      12-20-2005
Sigmathaar wrote:
> Hi, I'm having some trouble while debuging some code. My compiler says
> the code is OK but whenever I try to execute the program nothing
> happens. Using my debuger I got the next message :
>
> Detected memory leaks!
> Dumping objects ->
> {56} normal block at 0x02EA5DF8, 6 bytes long.
> Data: <U> 50 75 65 62 6C 61
> {55} normal block at 0x02EA5DB0, 7 bytes long.
> Data: <O> 4E 61 79 61 72 69 74
> {54} normal block at 0x02EA5D60, 16 bytes long.
> Data: <I> 45 73 74 61 64 6F 20 64 65 20 4D E9 78 69 63 6F
> {53} normal block at 0x02EA5D10, 16 bytes long.
> Data: <E> 44 69 73 74 72 69 74 6F 20 46 65 64 65 72 61 6C
> {52} normal block at 0x02EA5CC0, 19 bytes long.
> Data: <A> 42 61 6A 61 20 43 61 6C 69 66 6F 72 6E 69 61 20
> {51} normal block at 0x02EA5C80, 1 bytes long.
> Data: <Vowels> 46
> Object dump complete.
>
> This is the code I'm using, it's some kind of XML paser which has beed
> adapted from an MSDN example of the DOM library :
>
> *********************************************** CODE
> ***********************************************
>
> #include "stdafx.h"
> #include <stdio.h>
> #include <string.h>
> #include <stdarg.h>
> #include <windows.h>
> #include <direct.h>
> #import <msxml3.dll> raw_interfaces_only
>
> char * BSTRtoChar(BSTR bstr)
> {
> // CP_ACP for a Windows ANSI conversion
> unsigned long length = WideCharToMultiByte (
> CP_ACP, 0, bstr, SysStringLen(bstr), NULL, 0, NULL, NULL);
>
> char * convStr= new char[length];
>
> length = WideCharToMultiByte ( CP_ACP, 0, bstr, SysStringLen(bstr),
> reinterpret_cast <char *>(convStr), length, NULL, NULL);
>
> convStr[length] = '\0';
> return convStr;
> }
>
> // Macro that calls a COM method returning HRESULT value:
> #define HRCALL(a, errmsg) \
> do { \
> hr = (a); \
> if (FAILED(hr)) { \
> dprintf( "%s:%d HRCALL Failed: %s\n 0x%.8x = %s\n", \
> __FILE__, __LINE__, errmsg, hr, #a ); \
> goto clean; \
> } \
> } while (0)
>
> // Helper function that put output in stdout and debug window
> // in Visual Studio:
> void dprintf( char * format, ...)
> {
> static char buf[1024];
> va_list args;
> va_start( args, format );
> vsprintf( buf, format, args );
> va_end( args);
> OutputDebugStringA( buf);
> printf("%s", buf);
> }
>
> // Helper function to create a DOM instance:
> IXMLDOMDocument * DomFromCOM()
> {
> HRESULT hr;
> IXMLDOMDocument *pxmldoc = NULL;
>
> HRCALL( CoCreateInstance(__uuidof(MSXML2:OMDocument30),
> NULL,
> CLSCTX_INPROC_SERVER,
> __uuidof(IXMLDOMDocument),
> (void**)&pxmldoc),
> "Create a new DOMDocument");
>
> HRCALL( pxmldoc->put_async(VARIANT_FALSE),
> "should never fail");
> HRCALL( pxmldoc->put_validateOnParse(VARIANT_FALSE),
> "should never fail");
> HRCALL( pxmldoc->put_resolveExternals(VARIANT_FALSE),
> "should never fail");
>
> return pxmldoc;
> clean:
> if (pxmldoc)
> {
> pxmldoc->Release();
> }
> return NULL;
> }
>
> VARIANT VariantString(BSTR str)
> {
> VARIANT var;
> VariantInit(&var);
> V_BSTR(&var) = SysAllocString(str);
> V_VT(&var) = VT_BSTR;
> return var;
> }
>
> void ReportParseError(IXMLDOMDocument *pDom, char *desc) {
> IXMLDOMParseError *pXMLErr=NULL;
> BSTR bstrReason = NULL;
> HRESULT hr;
> HRCALL(pDom->get_parseError(&pXMLErr),
> "dom->get_parseError: ");
> HRCALL(pXMLErr->get_reason(&bstrReason),
> "parseError->get_reason: ");
>
> dprintf("%s %S\n",desc, bstrReason);
> clean:
> if (pXMLErr) pXMLErr->Release();
> if (bstrReason) SysFreeString(bstrReason);
> }
>
> int _tmain(int argc, _TCHAR* argv[])
> {
> IXMLDOMDocument *pXMLDom=NULL;
> IXMLDOMNodeList *pNodes=NULL;
> IXMLDOMNode *pNode=NULL;
> BSTR bstr = NULL;
> VARIANT_BOOL status;
> VARIANT var;
> HRESULT hr;
> long length;
> CHAR szRoot[18];
>
> CoInitialize(NULL);
>
> pXMLDom = DomFromCOM();
> if (!pXMLDom) goto clean;
>
> VariantInit(&var);
> var = VariantString(L"00000.xml");
> HRCALL(pXMLDom->load(var, &status), "dom->load(): ");
> if (status!=VARIANT_TRUE) {
> ReportParseError(pXMLDom,
> "Failed to load DOM from stocks.xml");
> goto clean;
> }
>
> // Query a single node.
> if (bstr) SysFreeString(bstr);
> bstr = SysAllocString(L"//thesaurusList/thesaurusEntry/@lang");
> HRCALL(pXMLDom->selectSingleNode(bstr,
> &pNode),"dom->selectSingleNode: ");
> if (!pNode) {
> ReportParseError(pXMLDom, "Calling selectSingleNode ");
> }
> else {
> HRCALL(pNode->get_text(&bstr)," get_text ");
> sprintf(szRoot, "%s\\%s\\%s", "C:", "cdWebFolder", BSTRtoChar(bstr));
> }
>
>
> // Query a node-set.
> if (bstr) SysFreeString(bstr);
> bstr = SysAllocString(L"//thesaurusEntry/topTerm");
> HRCALL(pXMLDom->selectNodes(bstr, &pNodes), "selectNodes ");
> if (!pNodes) {
> ReportParseError(pXMLDom, "Error while calling selectNodes ");
> }
> else {
> HRCALL(pNodes->get_length(&length), "get_length: ");
> for (long i=0; i<length; i++) {
> if (pNode) pNode->Release();
> HRCALL(pNodes->get_item(i, &pNode), "get_item: ");
> if (bstr) SysFreeString(bstr);
> HRCALL(pNode->get_text(&bstr), "get_text: ");
> CHAR szPath[50];
> sprintf(szPath, "%s\\%s\\", szRoot, BSTRtoChar(bstr));

This call --------------------------------------------------^^^^^^^^^

allocates something with 'new' which doesn't get deleted.

Try:
HRCALL(pNode->get_text(&bstr), "get_text: ");
CHAR szPath[50];
char* p = BSTRtoChar(bstr);
sprintf(szPath, "%s\\%s\\", szRoot, p);
delete[] p;

> _mkdir(szPath);
> }
> }
>
> clean:
> if (bstr) SysFreeString(bstr);
> if (&var) VariantClear(&var);
> if (pXMLDom) pXMLDom->Release();
> if (pNodes) pNodes->Release();
> if (pNode) pNode->Release();
>
> CoUninitialize();
> return 0;
> }
>


HTH

Stefan
--
Stefan Naewe
naewe.s_AT_atlas_DOT_de
 
Reply With Quote
 
Axter
Guest
Posts: n/a
 
      12-20-2005
Sigmathaar wrote:
> Hi, I'm having some trouble while debuging some code. My compiler says
> the code is OK but whenever I try to execute the program nothing
> happens. Using my debuger I got the next message :
>
> Detected memory leaks!
> Dumping objects ->
> {56} normal block at 0x02EA5DF8, 6 bytes long.
> Data: <U> 50 75 65 62 6C 61
> {55} normal block at 0x02EA5DB0, 7 bytes long.
> Data: <O> 4E 61 79 61 72 69 74
> {54} normal block at 0x02EA5D60, 16 bytes long.
> Data: <I> 45 73 74 61 64 6F 20 64 65 20 4D E9 78 69 63 6F
> {53} normal block at 0x02EA5D10, 16 bytes long.
> Data: <E> 44 69 73 74 72 69 74 6F 20 46 65 64 65 72 61 6C
> {52} normal block at 0x02EA5CC0, 19 bytes long.
> Data: <A> 42 61 6A 61 20 43 61 6C 69 66 6F 72 6E 69 61 20
> {51} normal block at 0x02EA5C80, 1 bytes long.
> Data: <Vowels> 46
> Object dump complete.
>
> This is the code I'm using, it's some kind of XML paser which has beed
> adapted from an MSDN example of the DOM library :
>
> *********************************************** CODE
> ***********************************************
>
> #include "stdafx.h"
> #include <stdio.h>
> #include <string.h>
> #include <stdarg.h>
> #include <windows.h>
> #include <direct.h>
> #import <msxml3.dll> raw_interfaces_only
>
> char * BSTRtoChar(BSTR bstr)
> {
> // CP_ACP for a Windows ANSI conversion
> unsigned long length = WideCharToMultiByte (
> CP_ACP, 0, bstr, SysStringLen(bstr), NULL, 0, NULL, NULL);
>
> char * convStr= new char[length];
>
> length = WideCharToMultiByte ( CP_ACP, 0, bstr, SysStringLen(bstr),
> reinterpret_cast <char *>(convStr), length, NULL, NULL);
>
> convStr[length] = '\0';
> return convStr;
> }
>
> // Macro that calls a COM method returning HRESULT value:
> #define HRCALL(a, errmsg) \
> do { \
> hr = (a); \
> if (FAILED(hr)) { \
> dprintf( "%s:%d HRCALL Failed: %s\n 0x%.8x = %s\n", \
> __FILE__, __LINE__, errmsg, hr, #a ); \
> goto clean; \
> } \
> } while (0)
>
> // Helper function that put output in stdout and debug window
> // in Visual Studio:
> void dprintf( char * format, ...)
> {
> static char buf[1024];
> va_list args;
> va_start( args, format );
> vsprintf( buf, format, args );
> va_end( args);
> OutputDebugStringA( buf);
> printf("%s", buf);
> }
>
> // Helper function to create a DOM instance:
> IXMLDOMDocument * DomFromCOM()
> {
> HRESULT hr;
> IXMLDOMDocument *pxmldoc = NULL;
>
> HRCALL( CoCreateInstance(__uuidof(MSXML2:OMDocument30),
> NULL,
> CLSCTX_INPROC_SERVER,
> __uuidof(IXMLDOMDocument),
> (void**)&pxmldoc),
> "Create a new DOMDocument");
>
> HRCALL( pxmldoc->put_async(VARIANT_FALSE),
> "should never fail");
> HRCALL( pxmldoc->put_validateOnParse(VARIANT_FALSE),
> "should never fail");
> HRCALL( pxmldoc->put_resolveExternals(VARIANT_FALSE),
> "should never fail");
>
> return pxmldoc;
> clean:
> if (pxmldoc)
> {
> pxmldoc->Release();
> }
> return NULL;
> }
>
> VARIANT VariantString(BSTR str)
> {
> VARIANT var;
> VariantInit(&var);
> V_BSTR(&var) = SysAllocString(str);
> V_VT(&var) = VT_BSTR;
> return var;
> }
>
> void ReportParseError(IXMLDOMDocument *pDom, char *desc) {
> IXMLDOMParseError *pXMLErr=NULL;
> BSTR bstrReason = NULL;
> HRESULT hr;
> HRCALL(pDom->get_parseError(&pXMLErr),
> "dom->get_parseError: ");
> HRCALL(pXMLErr->get_reason(&bstrReason),
> "parseError->get_reason: ");
>
> dprintf("%s %S\n",desc, bstrReason);
> clean:
> if (pXMLErr) pXMLErr->Release();
> if (bstrReason) SysFreeString(bstrReason);
> }
>
> int _tmain(int argc, _TCHAR* argv[])
> {
> IXMLDOMDocument *pXMLDom=NULL;
> IXMLDOMNodeList *pNodes=NULL;
> IXMLDOMNode *pNode=NULL;
> BSTR bstr = NULL;
> VARIANT_BOOL status;
> VARIANT var;
> HRESULT hr;
> long length;
> CHAR szRoot[18];
>
> CoInitialize(NULL);
>
> pXMLDom = DomFromCOM();
> if (!pXMLDom) goto clean;
>
> VariantInit(&var);
> var = VariantString(L"00000.xml");
> HRCALL(pXMLDom->load(var, &status), "dom->load(): ");
> if (status!=VARIANT_TRUE) {
> ReportParseError(pXMLDom,
> "Failed to load DOM from stocks.xml");
> goto clean;
> }
>
> // Query a single node.
> if (bstr) SysFreeString(bstr);
> bstr = SysAllocString(L"//thesaurusList/thesaurusEntry/@lang");
> HRCALL(pXMLDom->selectSingleNode(bstr,
> &pNode),"dom->selectSingleNode: ");
> if (!pNode) {
> ReportParseError(pXMLDom, "Calling selectSingleNode ");
> }
> else {
> HRCALL(pNode->get_text(&bstr)," get_text ");
> sprintf(szRoot, "%s\\%s\\%s", "C:", "cdWebFolder", BSTRtoChar(bstr));
> }
>
>
> // Query a node-set.
> if (bstr) SysFreeString(bstr);
> bstr = SysAllocString(L"//thesaurusEntry/topTerm");
> HRCALL(pXMLDom->selectNodes(bstr, &pNodes), "selectNodes ");
> if (!pNodes) {
> ReportParseError(pXMLDom, "Error while calling selectNodes ");
> }
> else {
> HRCALL(pNodes->get_length(&length), "get_length: ");
> for (long i=0; i<length; i++) {
> if (pNode) pNode->Release();
> HRCALL(pNodes->get_item(i, &pNode), "get_item: ");
> if (bstr) SysFreeString(bstr);
> HRCALL(pNode->get_text(&bstr), "get_text: ");
> CHAR szPath[50];
> sprintf(szPath, "%s\\%s\\", szRoot, BSTRtoChar(bstr));
> _mkdir(szPath);
> }
> }
>
> clean:
> if (bstr) SysFreeString(bstr);
> if (&var) VariantClear(&var);
> if (pXMLDom) pXMLDom->Release();
> if (pNodes) pNodes->Release();
> if (pNode) pNode->Release();
>
> CoUninitialize();
> return 0;
> }
>
> ****************************************** END OF CODE
> ******************************************
>
> Can somebody explain why there is a memory leaking in this code?
>
> Thanks.


Consider using the code in the following link, which can give you
better details about your memory leak:
http://code.axter.com/leaktracker.h

http://code.axter.com/leaktracker.zip

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Memory leaking.. gNash C Programming 25 11-16-2007 10:38 PM
Q: stl, boost smart pointer to prevent memory leaking zl2k C++ 6 04-03-2006 12:39 PM
Leaking memory when writing to URL Simon Andrews Java 6 01-06-2006 02:53 PM
Could this C extension be leaking memory? Sam L. Python 0 09-24-2005 07:32 PM
huge recursive and memory leaking? jojo Java 5 09-08-2005 11:39 AM



Advertisments