You obviously have some sort of build problem. Each parse for some reason
seems to be re-initializing global/static data, instead of seeing that its
already done. You should only call Terminate() when you are ready to close
down, and it shouldn't be required to avoid that memory accumulation.

Are you mixing runtimes by any chance? With VC++ the debug heap catches this
and gives an error. If the BC one doesn't catch it, i.e. if the call to
delete a peice of memory that is not valid in that heap manager is just
ignored, you'd get this kind of reaction probably. If you mix runtimes, and
allocate in one and try to delete in another and it doesn't catch this, then
the allocated memory would just stay around.

--------------------------
Dean Roddey
The CIDLib C++ Frameworks
Charmed Quark Software
[EMAIL PROTECTED]
http://www.charmedquark.com

"I'm not sure how I feel about ambivalence"


----- Original Message -----
From: "Simon Reye" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Monday, April 02, 2001 11:13 PM
Subject: Memory Leak follow up


> Xerces Gurus,
>
> Okay, perhaps there is no leaking problem.  I tried calling Terminate()
> after I finished a single parse() and the leaks went away.  The only
problem
> I am left with now is that if I try to call Intialize() again I get an
> access violation when the DLL attempts to execute the line:
>
> (807) XMLMutexLock lockInit(&gScannerMutex());
>
> in the void XMLScanner::commonInit() function.
>
> Am I doing something drastically wrong or can someone help me here?
>
> Simon
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to