diff options
author | Paul Gilbert | 2019-11-09 19:42:06 -0800 |
---|---|---|
committer | Paul Gilbert | 2019-11-11 18:20:30 -0800 |
commit | ab5939ba443b31cbecb727825346a331a84856a7 (patch) | |
tree | affcf18b3ef00984796e762c20e7db705d2f7f94 /engines/glk/archetype/archetype.cpp | |
parent | 19cc1221f3433a6178e7e0286c4b96e8359d4390 (diff) | |
download | scummvm-rg350-ab5939ba443b31cbecb727825346a331a84856a7.tar.gz scummvm-rg350-ab5939ba443b31cbecb727825346a331a84856a7.tar.bz2 scummvm-rg350-ab5939ba443b31cbecb727825346a331a84856a7.zip |
GLK: ARCHETYPE: Fix quitting the game
Diffstat (limited to 'engines/glk/archetype/archetype.cpp')
-rw-r--r-- | engines/glk/archetype/archetype.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/engines/glk/archetype/archetype.cpp b/engines/glk/archetype/archetype.cpp index 3792938b8b..395edd6753 100644 --- a/engines/glk/archetype/archetype.cpp +++ b/engines/glk/archetype/archetype.cpp @@ -125,7 +125,7 @@ void Archetype::interpret() { void Archetype::write(const String fmt, ...) { va_list ap; va_start(ap, fmt); - Common::String s = Common::String::format(fmt.c_str(), ap); + Common::String s = Common::String::vformat(fmt.c_str(), ap); va_end(ap); glk_put_buffer(s.c_str(), s.size()); @@ -134,7 +134,7 @@ void Archetype::write(const String fmt, ...) { void Archetype::writeln(const String fmt, ...) { va_list ap; va_start(ap, fmt); - Common::String s = Common::String::format(fmt.c_str(), ap); + Common::String s = Common::String::vformat(fmt.c_str(), ap); va_end(ap); s += '\n'; @@ -826,7 +826,8 @@ void Archetype::exec_stmt(StatementPtr the_stmt, ResultType &result, ContextType while (iterate_list(the_stmt->_data._write.print_list, np)) { cleanup(result); eval_expr((ExprTree)np->data, result, context, RVALUE); - write_result(result); + String line = get_result_string(result); + g_vm->write("%s", line.c_str()); } if (the_stmt->_kind == ST_WRITE) { @@ -834,7 +835,8 @@ void Archetype::exec_stmt(StatementPtr the_stmt, ResultType &result, ContextType } else if (the_stmt->_kind == ST_STOP) { g_vm->writeln(); g_vm->writeln(); - error("%f", VERSION_NUM); + g_vm->writeln("%f", VERSION_NUM); + g_vm->quitGame(); } break; |