I think that he knew that already wink

@Germanunkol: There are a few memory tracker, like Valgrind or Instruments. The down side: Non of these works on Windows. The first one is for UNIX and the the second one is for Mac OS. Another great thing would be D-Trace, but this needs kernel support (you could file an enhancement request at microsoft :P).

However, all the tools track only real leaks, but you still have A7/A8 as wrapper which releases everything allocated via xxx_create and sys_malloc at the end (at least it should).

But what you can do is the following: Create a macro with the name ent_create which takes all too parameters. This than calls a function that logs the creation (name of the file, action etc. so you can track the Entity created. Or! Say that you want the __FILE__ and __LINE__ macros. Than you can track the file and line that creates something.)
After you created the log entry, you can pass everything to the real xxx_create function. If you are done with testing, just remove the macros and everything is fine again laugh

Edit: Of course you should also overwrite the xxx_remove functions to track which objects stay alive even if they aren't used anymore.

Last edited by JustSid; 10/01/10 17:15.

Shitlord by trade and passion. Graphics programmer at Laminar Research.
I write blog posts at feresignum.com