diff options
| author | Filippos Karapetis | 2009-06-01 15:34:33 +0000 | 
|---|---|---|
| committer | Filippos Karapetis | 2009-06-01 15:34:33 +0000 | 
| commit | c85134bd5eb446116e3574fee51a59ff066eddf6 (patch) | |
| tree | 964ec7f0a62a9cc45c4066fd3e6eacb43abb92c4 /engines/sci/engine | |
| parent | 99c687463030254c5489cd3d47d876970ab7c080 (diff) | |
| download | scummvm-rg350-c85134bd5eb446116e3574fee51a59ff066eddf6.tar.gz scummvm-rg350-c85134bd5eb446116e3574fee51a59ff066eddf6.tar.bz2 scummvm-rg350-c85134bd5eb446116e3574fee51a59ff066eddf6.zip  | |
Some fixes for saving/loading (still broken)
svn-id: r41102
Diffstat (limited to 'engines/sci/engine')
| -rw-r--r-- | engines/sci/engine/game.cpp | 2 | ||||
| -rw-r--r-- | engines/sci/engine/savegame.cpp | 3 | 
2 files changed, 4 insertions, 1 deletions
diff --git a/engines/sci/engine/game.cpp b/engines/sci/engine/game.cpp index 192aa66367..c9445e44d1 100644 --- a/engines/sci/engine/game.cpp +++ b/engines/sci/engine/game.cpp @@ -424,7 +424,9 @@ void script_free_engine(EngineState *s) {  	s->_kfuncTable.clear();  	delete s->_vocabulary; +	s->_vocabulary = 0;  	delete s->_kernel; +	s->_kernel = 0;  }  void script_free_breakpoints(EngineState *s) { diff --git a/engines/sci/engine/savegame.cpp b/engines/sci/engine/savegame.cpp index 704051d627..6be00653a5 100644 --- a/engines/sci/engine/savegame.cpp +++ b/engines/sci/engine/savegame.cpp @@ -780,6 +780,7 @@ EngineState *gamestate_restore(EngineState *s, Common::SeekableReadStream *fh) {  	retval->animation_delay = s->animation_delay;  	retval->animation_granularity = s->animation_granularity;  	retval->gfx_state = s->gfx_state; +	retval->old_screen = 0;  	retval->resmgr = s->resmgr; @@ -832,8 +833,8 @@ EngineState *gamestate_restore(EngineState *s, Common::SeekableReadStream *fh) {  	retval->parser_base = make_reg(s->sys_strings_segment, SYS_STRING_PARSER_BASE);  	// static VM/Kernel information: -	retval->_kernel = s->_kernel;  	assert(0 == retval->_kernel); +	retval->_kernel = s->_kernel;  //	s->_kernel = 0;	// FIXME: We should set s->_kernel to 0 here,  // else it could be freed when the old EngineState is freed. Luckily, this freeing currently  // never happens, so we don't need to.   | 
