Cesar Romero wrote:
Luiz Americo,
Anyway, calling manually _Release avoid the leak and i will stay with it for now (I hope did not break anything).

It can work for that case, but I think that is not a good ideia.

If you are using a TInterfacedObject descendant, it will call the _Release when out of context, so in that especific case seems to never go out of context, and then you _realease call works, but in other place it can go out of context before, and the you will have others AV.


I just realized that the current design is relatively safe. If the interface goes out of context before the call to _Release, the referenced object will be set to nil. This will prevent a second call to _Release. Is not the ideal but i'll stay with it for now.

Thanks for Cesar and Joao for all that info.

Luiz
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to