[Scummvm-cvs-logs] SF.net SVN: scummvm:[49863] scummvm/trunk/engines/sci
fingolfin at users.sourceforge.net
fingolfin at users.sourceforge.net
Tue Jun 15 18:50:10 CEST 2010
Revision: 49863
http://scummvm.svn.sourceforge.net/scummvm/?rev=49863&view=rev
Author: fingolfin
Date: 2010-06-15 16:50:10 +0000 (Tue, 15 Jun 2010)
Log Message:
-----------
SCI: Pass resman to scanSource() methods
Modified Paths:
--------------
scummvm/trunk/engines/sci/resource.cpp
scummvm/trunk/engines/sci/resource_intern.h
Modified: scummvm/trunk/engines/sci/resource.cpp
===================================================================
--- scummvm/trunk/engines/sci/resource.cpp 2010-06-15 16:36:09 UTC (rev 49862)
+++ scummvm/trunk/engines/sci/resource.cpp 2010-06-15 16:50:10 UTC (rev 49863)
@@ -437,15 +437,14 @@
fileStream->seek(res->_fileOffset, SEEK_SET);
int error = res->decompress(fileStream);
-
- if (_resourceFile)
- delete fileStream;
-
if (error) {
warning("Error %d occurred while reading %s from resource file: %s",
error, res->_id.toString().c_str(), sci_error_types[error]);
res->unalloc();
}
+
+ if (_resourceFile)
+ delete fileStream;
}
Resource *ResourceManager::testResource(ResourceId id) {
@@ -623,13 +622,12 @@
if (!source->_scanned) {
source->_scanned = true;
- source->scanSource();
+ source->scanSource(this);
}
}
}
-void DirectoryResourceSource::scanSource() {
- ResourceManager *resMan = g_sci->getResMan();
+void DirectoryResourceSource::scanSource(ResourceManager *resMan) {
resMan->readResourcePatches();
// We can't use getSciVersion() at this point, thus using _volVersion
@@ -639,21 +637,18 @@
resMan->readWaveAudioPatches();
}
-void ExtMapResourceSource::scanSource() {
- ResourceManager *resMan = g_sci->getResMan();
+void ExtMapResourceSource::scanSource(ResourceManager *resMan) {
if (resMan->_mapVersion < kResVersionSci1Late)
resMan->readResourceMapSCI0(this);
else
resMan->readResourceMapSCI1(this);
}
-void ExtAudioMapResourceSource::scanSource() {
- ResourceManager *resMan = g_sci->getResMan();
+void ExtAudioMapResourceSource::scanSource(ResourceManager *resMan) {
resMan->readAudioMapSCI1(this);
}
-void IntMapResourceSource::scanSource() {
- ResourceManager *resMan = g_sci->getResMan();
+void IntMapResourceSource::scanSource(ResourceManager *resMan) {
resMan->readAudioMapSCI11(this);
}
@@ -1441,8 +1436,7 @@
return 0;
}
-void MacResourceForkResourceSource::scanSource() {
- ResourceManager *resMan = g_sci->getResMan();
+void MacResourceForkResourceSource::scanSource(ResourceManager *resMan) {
if (!_macResMan->open(getLocationName().c_str()))
error("%s is not a valid Mac resource fork", getLocationName().c_str());
Modified: scummvm/trunk/engines/sci/resource_intern.h
===================================================================
--- scummvm/trunk/engines/sci/resource_intern.h 2010-06-15 16:36:09 UTC (rev 49862)
+++ scummvm/trunk/engines/sci/resource_intern.h 2010-06-15 16:50:10 UTC (rev 49863)
@@ -78,7 +78,7 @@
/**
* Scan this source for TODO.
*/
- virtual void scanSource() {}
+ virtual void scanSource(ResourceManager *resMan) {}
/**
* Load a resource.
@@ -95,7 +95,7 @@
public:
DirectoryResourceSource(const Common::String &name) : ResourceSource(kSourceDirectory, name) {}
- virtual void scanSource();
+ virtual void scanSource(ResourceManager *resMan);
};
class PatchResourceSource : public ResourceSource {
@@ -131,7 +131,7 @@
: ResourceSource(kSourceExtMap, name, volNum, resFile) {
}
- virtual void scanSource();
+ virtual void scanSource(ResourceManager *resMan);
};
class IntMapResourceSource : public ResourceSource {
@@ -140,7 +140,7 @@
: ResourceSource(kSourceIntMap, name, volNum) {
}
- virtual void scanSource();
+ virtual void scanSource(ResourceManager *resMan);
};
class AudioVolumeResourceSource : public VolumeResourceSource {
@@ -162,7 +162,7 @@
: ResourceSource(kSourceExtAudioMap, name, volNum) {
}
- virtual void scanSource();
+ virtual void scanSource(ResourceManager *resMan);
};
class WaveResourceSource : public ResourceSource {
@@ -183,7 +183,7 @@
MacResourceForkResourceSource(const Common::String &name, int volNum);
~MacResourceForkResourceSource();
- virtual void scanSource();
+ virtual void scanSource(ResourceManager *resMan);
virtual void loadResource(Resource *res);
};
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