aboutsummaryrefslogtreecommitdiff
path: root/scumm/script_v8.cpp
diff options
context:
space:
mode:
authorMax Horn2004-06-25 22:12:57 +0000
committerMax Horn2004-06-25 22:12:57 +0000
commit7a8d469c666f162570f633ec465798e1e5720eef (patch)
tree1b124b178c1526de284989e7dc4b5b0c0b68d63d /scumm/script_v8.cpp
parente5f90509a606819dec58b7642c9845373ae364d5 (diff)
downloadscummvm-rg350-7a8d469c666f162570f633ec465798e1e5720eef.tar.gz
scummvm-rg350-7a8d469c666f162570f633ec465798e1e5720eef.tar.bz2
scummvm-rg350-7a8d469c666f162570f633ec465798e1e5720eef.zip
Use auto_ptr to avoid leaks
svn-id: r14057
Diffstat (limited to 'scumm/script_v8.cpp')
-rw-r--r--scumm/script_v8.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/scumm/script_v8.cpp b/scumm/script_v8.cpp
index 7fa51a71cf..94c26b920f 100644
--- a/scumm/script_v8.cpp
+++ b/scumm/script_v8.cpp
@@ -34,6 +34,7 @@
#include "scumm/smush/smush_player.h"
#include "sound/mixer.h"
+#include <memory>
namespace Scumm {
@@ -1322,7 +1323,7 @@ void ScummEngine_v8::o8_kernelSetFunctions() {
warning("o8_kernelSetFunctions: clearTextQueue()");
break;
case 25: { // saveGameReadName
- SaveFileManager *mgr = _system->get_savefile_manager();
+ const std::auto_ptr<SaveFileManager> mgr(_system->get_savefile_manager());
char *address = (char*)getStringAddress(args[2]);
char name[30];
@@ -1330,13 +1331,14 @@ void ScummEngine_v8::o8_kernelSetFunctions() {
warning("o8_kernelSetFunctions: saveGameReadName failed finding slot string %d", args[2]);
break;
}
- getSavegameName(args[1] - 1, name, mgr);
+ getSavegameName(args[1] - 1, name, mgr.get());
if (strlen(name) > 0 && strlen(name) < 30)
strcpy(address, name);
break;
}
case 26: { // saveGame?
- //SaveFileManager *mgr = _system->get_savefile_manager();
+ //const std::auto_ptr<SaveFileManager> mgr(_system->get_savefile_manager());
+
//char *address = (char*)getStringAddress(args[2]);
char address[30];
warning("o8_kernelSetFunctions: saveGame?(%d, %s)", args[1], address);