title: Difference between Interfaces in Delphi 7 and Delphi 2007
body: <p>We are having trouble with a memory leak that happens only when the application is running (there is no FastMM report when we close the application).</p>
  
  <p>We isolate the problem to a method that reads values from a database and instantiate objects from the result. (we are using DBXPress to database connection)</p>
  
  <p>The class that do the database stuff implements an interface.
  Using a test application that does nothing else but run a thread reading values from the database (always the same values), the application in Delphi 7 do not leak. But in Delphi 2007 the memory used jumps really fast. It is the same code, same test application.</p>
  
  <p>When you check the application with AQTime you can see the number of TStringList, TList, etc (all the objects the database class uses) growing and shrink - but checking the memory with ProExplorer and with Windows task manager, the Delphi 2007 version grows really fast.</p>
  
  <p>Our only guess is that there is something different in the way Delphi 7 and Delphi 2007 deals with interface releasing. Does it make sense? Anyone had experienced something similar?</p>