Jump to content

  • Log In with Google      Sign In   
  • Create Account

Shorty421

Member Since 15 Mar 2012
Offline Last Active Mar 22 2012 05:10 AM

Topics I've Started

[SDL.Net] Crazy memory leak

15 March 2012 - 12:39 AM

Hey guys, I have a program with a crazy memory leak (leaking ~20mb/s).
I've found the problem, but I can't seem to find a working alternative.

Basically, I have some code which runs on every third tick:

void Draw()
{
  scenebmp.render(bmp, false); //render the current scene to a bitmap image
  sceneSurface = new Surface(bmp); //create a new surface from updated bitmap image
  window.BlitToScreen(sceneSurface); //send the new surface to the 'window' class to be blitted to the screen
}

'sceneSurface = new Surface(bmp);' is the line which is causing the leak. I have tried putting
sceneSurface.Dispose();
at the end of the code block, but it doesn't seem to have any effect.

What would be the best way to fix this?
Is there a way to update the Surface from a bitmap without creating a new Surface?

Thanks for any assistance.

EDIT: http://pastebin.com/3We9UdVz is the file which contains the problem
EDIT2: Solved by taking a different approach to rendering.

PARTNERS