fix some very minor memory leaks

This commit is contained in:
jacob1 2015-06-30 19:06:18 -04:00
parent 580b6101c4
commit 732e5b8730
5 changed files with 9 additions and 2 deletions

View File

@ -334,6 +334,7 @@ int SDLOpen()
#elif defined(LIN) #elif defined(LIN)
SDL_Surface *icon = SDL_CreateRGBSurfaceFrom((void*)app_icon, 48, 48, 24, 144, 0x00FF0000, 0x0000FF00, 0x000000FF, 0); SDL_Surface *icon = SDL_CreateRGBSurfaceFrom((void*)app_icon, 48, 48, 24, 144, 0x00FF0000, 0x0000FF00, 0x000000FF, 0);
SDL_WM_SetIcon(icon, (Uint8*)app_icon_bitmap); SDL_WM_SetIcon(icon, (Uint8*)app_icon_bitmap);
SDL_FreeSurface(icon);
#endif #endif
SDL_WM_SetCaption("The Powder Toy", "Powder Toy"); SDL_WM_SetCaption("The Powder Toy", "Powder Toy");

View File

@ -6,6 +6,7 @@ class DebugInfo
{ {
public: public:
DebugInfo(unsigned int id):ID(id) { } DebugInfo(unsigned int id):ID(id) { }
virtual ~DebugInfo() { }
unsigned int ID; unsigned int ID;
virtual void Draw() {} virtual void Draw() {}
}; };

View File

@ -195,6 +195,10 @@ GameController::~GameController()
{ {
delete options; delete options;
} }
for(std::vector<DebugInfo*>::iterator iter = debugInfo.begin(), end = debugInfo.end(); iter != end; iter++)
{
delete *iter;
}
//deleted here because it refuses to be deleted when deleted from gameModel even with the same code //deleted here because it refuses to be deleted when deleted from gameModel even with the same code
std::deque<Snapshot*> history = gameModel->GetHistory(); std::deque<Snapshot*> history = gameModel->GetHistory();
for(std::deque<Snapshot*>::iterator iter = history.begin(), end = history.end(); iter != end; ++iter) for(std::deque<Snapshot*>::iterator iter = history.begin(), end = history.end(); iter != end; ++iter)

View File

@ -37,8 +37,8 @@ protected:
public: public:
virtual ~QuickOption() virtual ~QuickOption()
{ {
//for(std::vector<QuickOptionListener*>::iterator iter = listeners.begin(), end = listeners.end(); iter != end; ++iter) for(std::vector<QuickOptionListener*>::iterator iter = listeners.begin(), end = listeners.end(); iter != end; ++iter)
// delete *iter; delete *iter;
} }
std::vector<QuickOptionListener*> GetListeners() std::vector<QuickOptionListener*> GetListeners()

View File

@ -60,6 +60,7 @@ void Gravity::gravity_init()
void Gravity::gravity_cleanup() void Gravity::gravity_cleanup()
{ {
stop_grav_async();
#ifdef GRAVFFT #ifdef GRAVFFT
grav_fft_cleanup(); grav_fft_cleanup();
#endif #endif