aboutsummaryrefslogtreecommitdiff
path: root/engines/parallaction/disk.cpp
diff options
context:
space:
mode:
authorNicola Mettifogo2007-06-23 21:53:13 +0000
committerNicola Mettifogo2007-06-23 21:53:13 +0000
commitcaa69a55fc3b449b02c4b1ecd03d52f9257d7c75 (patch)
treef866913741dea330c12379b0b2181e166525c4a3 /engines/parallaction/disk.cpp
parent2fb22f2eea03a2e45daef5adcf35237c8e7cf923 (diff)
downloadscummvm-rg350-caa69a55fc3b449b02c4b1ecd03d52f9257d7c75.tar.gz
scummvm-rg350-caa69a55fc3b449b02c4b1ecd03d52f9257d7c75.tar.bz2
scummvm-rg350-caa69a55fc3b449b02c4b1ecd03d52f9257d7c75.zip
Made changeCharacter restore the previous open Archive after completing its duties: this fixes known crash when mini-Dino activates robot, and possibly many unknown others.
svn-id: r27684
Diffstat (limited to 'engines/parallaction/disk.cpp')
-rw-r--r--engines/parallaction/disk.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/engines/parallaction/disk.cpp b/engines/parallaction/disk.cpp
index 7b11fbbbed..03d33dae37 100644
--- a/engines/parallaction/disk.cpp
+++ b/engines/parallaction/disk.cpp
@@ -90,8 +90,10 @@ void Disk::errorFileNotFound(const char *s) {
}
-void Disk::selectArchive(const char *name) {
- _resArchive.open(name);
+Common::String Disk::selectArchive(const Common::String& name) {
+ Common::String oldName = _resArchive.name();
+ _resArchive.open(name.c_str());
+ return oldName;
}
void Disk::setLanguage(uint16 language) {