[Scummvm-cvs-logs] SF.net SVN: scummvm: [25889] scummvm/trunk/engines/sky
eriktorbjorn at users.sourceforge.net
eriktorbjorn at users.sourceforge.net
Tue Feb 27 00:08:52 CET 2007
Revision: 25889
http://scummvm.svn.sourceforge.net/scummvm/?rev=25889&view=rev
Author: eriktorbjorn
Date: 2007-02-26 15:08:52 -0800 (Mon, 26 Feb 2007)
Log Message:
-----------
Close sky.dnr directly after reading it into memory. No need to keep it open
until the Disk object is deleted.
Modified Paths:
--------------
scummvm/trunk/engines/sky/disk.cpp
scummvm/trunk/engines/sky/disk.h
Modified: scummvm/trunk/engines/sky/disk.cpp
===================================================================
--- scummvm/trunk/engines/sky/disk.cpp 2007-02-26 22:56:02 UTC (rev 25888)
+++ scummvm/trunk/engines/sky/disk.cpp 2007-02-26 23:08:52 UTC (rev 25889)
@@ -37,17 +37,17 @@
Disk::Disk() {
_dataDiskHandle = new Common::File();
- _dnrHandle = new Common::File();
+ Common::File *dnrHandle = new Common::File();
- _dnrHandle->open(dinnerFilename);
- if (!_dnrHandle->isOpen())
+ dnrHandle->open(dinnerFilename);
+ if (!dnrHandle->isOpen())
error("Could not open %s", dinnerFilename);
- if (!(_dinnerTableEntries = _dnrHandle->readUint32LE()))
+ if (!(_dinnerTableEntries = dnrHandle->readUint32LE()))
error("Error reading from sky.dnr"); //even though it was opened correctly?!
_dinnerTableArea = (uint8 *)malloc(_dinnerTableEntries * 8);
- uint32 entriesRead = _dnrHandle->read(_dinnerTableArea, 8 * _dinnerTableEntries) / 8;
+ uint32 entriesRead = dnrHandle->read(_dinnerTableArea, 8 * _dinnerTableEntries) / 8;
if (entriesRead != _dinnerTableEntries)
error("entriesRead != dinnerTableEntries. [%d/%d]", entriesRead, _dinnerTableEntries);
@@ -60,16 +60,16 @@
memset(_buildList, 0, 60 * 2);
memset(_loadedFilesList, 0, 60 * 4);
+
+ dnrHandle->close();
+ delete dnrHandle;
}
Disk::~Disk(void) {
- if (_dnrHandle->isOpen())
- _dnrHandle->close();
if (_dataDiskHandle->isOpen())
_dataDiskHandle->close();
fnFlushBuffers();
free(_dinnerTableArea);
- delete _dnrHandle;
delete _dataDiskHandle;
}
Modified: scummvm/trunk/engines/sky/disk.h
===================================================================
--- scummvm/trunk/engines/sky/disk.h 2007-02-26 22:56:02 UTC (rev 25888)
+++ scummvm/trunk/engines/sky/disk.h 2007-02-26 23:08:52 UTC (rev 25889)
@@ -64,7 +64,6 @@
uint32 _dinnerTableEntries;
uint8 *_dinnerTableArea;
Common::File *_dataDiskHandle;
- Common::File *_dnrHandle;
RncDecoder _rncDecoder;
uint16 _buildList[MAX_FILES_IN_LIST];
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list