diff options
| author | Paul Gilbert | 2010-09-07 08:47:51 +0000 | 
|---|---|---|
| committer | Eugene Sandulenko | 2010-10-12 23:38:55 +0000 | 
| commit | 5d7922d052c93b5536e90c00dd69df61d898a190 (patch) | |
| tree | fa701f1438b04084ddd4d09e219bae2cd0e10a9b /engines | |
| parent | 3fc518cd0c5fa39b17028fda89f5d2645657012d (diff) | |
| download | scummvm-rg350-5d7922d052c93b5536e90c00dd69df61d898a190.tar.gz scummvm-rg350-5d7922d052c93b5536e90c00dd69df61d898a190.tar.bz2 scummvm-rg350-5d7922d052c93b5536e90c00dd69df61d898a190.zip | |
SWORD25: Fix memory leak
svn-id: r53326
Diffstat (limited to 'engines')
| -rw-r--r-- | engines/sword25/package/scummvmpackagemanager.cpp | 8 | 
1 files changed, 7 insertions, 1 deletions
| diff --git a/engines/sword25/package/scummvmpackagemanager.cpp b/engines/sword25/package/scummvmpackagemanager.cpp index 1a98bee91c..ec3622a3f5 100644 --- a/engines/sword25/package/scummvmpackagemanager.cpp +++ b/engines/sword25/package/scummvmpackagemanager.cpp @@ -147,7 +147,13 @@ byte *ScummVMPackageManager::GetFile(const Common::String &fileName, uint *fileS  	// Read the file  	byte *buffer = new byte[in->size()]; -	if (!in->read(buffer, in->size())) return 0; +	int bytesRead = in->read(buffer, in->size()); +	delete in; + +	if (!bytesRead) { +		delete buffer; +		return NULL; +	}  	return buffer;  } | 
