diff options
| author | Christopher Page | 2008-08-13 20:27:39 +0000 | 
|---|---|---|
| committer | Christopher Page | 2008-08-13 20:27:39 +0000 | 
| commit | 2d31207a8169491647d8fa3baab7eadbfdfa1da9 (patch) | |
| tree | 5b59af197cdb4caf0510343f173dbc5a54dfeaf1 | |
| parent | c9e0422722eadeabdd0fd0dfe8591f90a3f00e89 (diff) | |
| download | scummvm-rg350-2d31207a8169491647d8fa3baab7eadbfdfa1da9.tar.gz scummvm-rg350-2d31207a8169491647d8fa3baab7eadbfdfa1da9.tar.bz2 scummvm-rg350-2d31207a8169491647d8fa3baab7eadbfdfa1da9.zip  | |
Fixed some memory leaks
svn-id: r33846
| -rw-r--r-- | engines/kyra/kyra_lok.cpp | 4 | ||||
| -rw-r--r-- | engines/kyra/staticres.cpp | 1 | ||||
| -rw-r--r-- | engines/sky/control.cpp | 12 | ||||
| -rw-r--r-- | engines/sky/intro.cpp | 3 | ||||
| -rw-r--r-- | engines/sky/sky.cpp | 3 | ||||
| -rw-r--r-- | gui/launcher.cpp | 1 | 
6 files changed, 17 insertions, 7 deletions
diff --git a/engines/kyra/kyra_lok.cpp b/engines/kyra/kyra_lok.cpp index afd164958c..2ce8af4a81 100644 --- a/engines/kyra/kyra_lok.cpp +++ b/engines/kyra/kyra_lok.cpp @@ -118,8 +118,12 @@ KyraEngine_LoK::~KyraEngine_LoK() {  	delete[] _characterList; +	delete[] _roomTable; +  	delete[] _movFacingTable; +	delete[] _defaultShapeTable; +  	delete[] _gui->_scrollUpButton.data0ShapePtr;  	delete[] _gui->_scrollUpButton.data1ShapePtr;  	delete[] _gui->_scrollUpButton.data2ShapePtr; diff --git a/engines/kyra/staticres.cpp b/engines/kyra/staticres.cpp index bb63c24c36..5c0e05f23d 100644 --- a/engines/kyra/staticres.cpp +++ b/engines/kyra/staticres.cpp @@ -920,6 +920,7 @@ void StaticResource::freePaletteTable(void *&ptr, int &size) {  	uint8 **data = (uint8**)ptr;  	while (size--)  		delete[] data[size]; +	delete[] data;  	ptr = 0;  	size = 0;  } diff --git a/engines/sky/control.cpp b/engines/sky/control.cpp index 3edc087f57..8699c893e4 100644 --- a/engines/sky/control.cpp +++ b/engines/sky/control.cpp @@ -238,13 +238,17 @@ void Control::removePanel(void) {  	free(_sprites.slide2);			free(_sprites.slode);  	free(_sprites.slode2);			free(_sprites.musicBodge);  	delete _controlPanel;			delete _exitButton; -	delete _slide;					delete _slide2; -	delete _slode;					delete _restorePanButton; +	delete _slide;				delete _slide2; +	delete _slode;				delete _restorePanButton; +	delete _savePanel;			delete _saveButton; +	delete _downFastButton;			delete _downSlowButton; +	delete _upFastButton;			delete _upSlowButton; +	delete _quitButton;			delete _autoSaveButton;  	delete _savePanButton;			delete _dosPanButton;  	delete _restartPanButton;		delete _fxPanButton;  	delete _musicPanButton;			delete _bodge; -	delete _yesNo;					delete _text; -	delete _statusBar;				delete _restoreButton; +	delete _yesNo;				delete _text; +	delete _statusBar;			delete _restoreButton;  	if (_textSprite) {  		free(_textSprite); diff --git a/engines/sky/intro.cpp b/engines/sky/intro.cpp index d7a94f6c2f..86e26309c9 100644 --- a/engines/sky/intro.cpp +++ b/engines/sky/intro.cpp @@ -640,9 +640,6 @@ Intro::Intro(Disk *disk, Screen *screen, MusicBase *music, Sound *sound, Text *t  }  Intro::~Intro(void) { - -	_mixer->stopAll(); -	_skyScreen->stopSequence();  	if (_textBuf)  		free(_textBuf);  	if (_saveBuf) diff --git a/engines/sky/sky.cpp b/engines/sky/sky.cpp index 44347cf9a7..bcdc9f5130 100644 --- a/engines/sky/sky.cpp +++ b/engines/sky/sky.cpp @@ -277,6 +277,8 @@ SkyEngine::~SkyEngine() {  	delete _skyDisk;  	delete _skyControl;  	delete _skyCompact; +	if (_skyIntro) +		delete _skyIntro;  	for (int i = 0; i < 300; i++)  		if (_itemList[i]) @@ -473,6 +475,7 @@ int SkyEngine::init() {  	_systemVars.systemFlags |= SF_PLAY_VOCS;  	_systemVars.gameSpeed = 50; +	_skyIntro = 0;  	_skyCompact = new SkyCompact();  	_skyText = new Text(_skyDisk, _skyCompact);  	_skyMouse = new Mouse(_system, _skyDisk, _skyCompact); diff --git a/gui/launcher.cpp b/gui/launcher.cpp index 29e1365d70..37804e1c81 100644 --- a/gui/launcher.cpp +++ b/gui/launcher.cpp @@ -669,6 +669,7 @@ void LauncherDialog::selectGame(const String &name) {  LauncherDialog::~LauncherDialog() {  	delete _browser; +	delete _loadDialog;  }  void LauncherDialog::open() {  | 
