Ouh, no answers so far...
Should I just give up?
Thanks.


radada wrote:
> 
> Hi Alberto and as always, thanks for your answer.
> 
> God I'm lame :D:D I didn't see that I dod not released the XMLCh in the
> GetFlux method.
> 
> However, even with this, I still get a memroy leak. I joined the log so
> that you can see bay yourself the results of the ps command --> 
> http://www.nabble.com/file/p23478308/log.zip log.zip 
> The strangest thing is that, when I delete and release all the objects at
> the end of the program`(i.e. release of the factory), the memory still
> grows : 
> 
> Conso MEMOIRE AVANT RELEASE FACTORY
>    PID    TTY STAT  TIME PGIN  SIZE   RSS   LIM  TSIZ   TRS %CPU %MEM
> COMMAND
>  28476  pts/2 A     0:18  419  3884  4576 32768   125   692  2.5  0.0
> batchJTO
> XMLFactory::releaseFactory()
> Destructeur de XMLFactory
> bJTOTest::afficherMemoire()
> Conso MEMOIRE APRES RELEASE FACTORY
>    PID    TTY STAT  TIME PGIN  SIZE   RSS   LIM  TSIZ   TRS %CPU %MEM
> COMMAND
>  28476  pts/2 A     0:18  432  3932  4624 32768   125   692  2.5  0.0
> batchJTO
> 
> 
> I really don't know what's happening...
> 
> The memory leak could seem small, but when I use this code inside the
> whole package, I really get a strong memory leak.
> 
> I hope you'll find a little bit more time to check this code. If you can't
> or don't see something obvious, I'll throw in the towel  :-((
> 
> 
> Alberto Massari wrote:
>> 
>> A few points that I noticed by reading the code:
>> 1) in ElementXML::rechercherValeurAttribut you call 
>> XMLString::release(&l_poValue), but l_poValue comes from a call to 
>> m_poDOMElement->getAttribute, and should not be released
>> 2) DocumentXML::getFlux doesn't release the l_poString string allocated 
>> by writeToString
>> 3) DocumentXML::getFlux stores the result of the serialization in a 
>> char* m_pcBuffer that is not deleted in the destructor for DocumentXML; 
>> it destroys a previous buffer if called twice on the same object, but it 
>> will not clean the last serialization output
>> 
>> Alberto
>> 
>> radada ha scritto:
>>> There you go :  http://www.nabble.com/file/p23421942/batch.tar.gz
>>> batch.tar.gz , and as always : thanks a lot :-D
>>>
>>>
>>> Alberto Massari wrote:
>>>   
>>>> Could you post your code in a more standard format, like tar.gz?
>>>> Thanks,
>>>> Alberto
>>>>
>>>> radada ha scritto:
>>>>     
>>>>> Hi there (again :-()
>>>>>
>>>>> It may be a little bit long, so I'd like to apologize first.
>>>>>
>>>>> I'm trying (for my work) to add a functional layer to the xerces
>>>>> library
>>>>> so
>>>>> that other developers can use it by calling some more functional
>>>>> methods.
>>>>> The point is also to raise some particular type of exception so that
>>>>> it
>>>>> can
>>>>> be easily reused.
>>>>>
>>>>> When I directly implement some code to create a small XML file (see
>>>>> previous
>>>>> posts), it works perfectly. All my objects are released, and I'm
>>>>> happy.
>>>>> (the
>>>>> code is here  http://www.nabble.com/file/p23402427/bjtotestGood.cxx
>>>>> bjtotestGood.cxx )
>>>>>
>>>>> But I try to encapsulate that into a more functional way, I get a
>>>>> memory
>>>>> leak.
>>>>>
>>>>> First I though of doing some nice Oriented Object Programming and
>>>>> subclass
>>>>> some of the xerces objects (DOMElement and DOMDocument especially),
>>>>> but I
>>>>> found out that these classes are pure virtual classes and I can't
>>>>> subclass
>>>>> them without redefining all the pure virtual methods.
>>>>> I tried to subclass the implementation objects (i.e. DOMElementImpl
>>>>> and
>>>>> DOMDocumentImpl) but I'm stuck with all the Factories and Singeltons
>>>>> (DOMIplementation and DOMIplementationRegirsty mainly).
>>>>>
>>>>> So I decide to create some functional objects from scratch (XMLElement
>>>>> and
>>>>> XMLDocument) that would not inherit from DOMElement and DOMDocument,
>>>>> but
>>>>> have theses objects as members of my classes. But when I do that, and
>>>>> I
>>>>> re-implement the small program to generate some small XML files, I get
>>>>> a
>>>>> memory leak... I just don't understand, since I do exactly the same
>>>>> thing
>>>>> that I was doing first. I joined the source code here so that, if you
>>>>> feel
>>>>> willing to help, you can get the code : 
>>>>> http://www.nabble.com/file/p23402427/batchTest.rar batchTest.rar 
>>>>>
>>>>> I cleaned the code (we use several libraries) so that it could compile
>>>>> and
>>>>> run on any (i hope) UNIX server. I run it on an AIX 5.1
>>>>>
>>>>> Thanks a lot if you got here, and thanks a lot in advance for your
>>>>> help.
>>>>>
>>>>>   
>>>>>       
>>>> ---------------------------------------------------------------------
>>>> 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]
>> 
>> 
>> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Memory-leak-over-and-over...-tp23402427p23499718.html
Sent from the Xerces - C - Dev mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to