From cda2c950d64c660a30d0e9d8ec9b5923a26545d3 Mon Sep 17 00:00:00 2001 From: Max Horn Date: Mon, 18 Oct 2010 18:56:40 +0000 Subject: SCUMM: Simplify SO_LOAD_STRING code svn-id: r53574 --- engines/scumm/script_v5.cpp | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) (limited to 'engines/scumm') diff --git a/engines/scumm/script_v5.cpp b/engines/scumm/script_v5.cpp index 6d4072706c..d3e1ba43ef 100644 --- a/engines/scumm/script_v5.cpp +++ b/engines/scumm/script_v5.cpp @@ -1840,18 +1840,12 @@ void ScummEngine_v5::o5_roomOps() { Common::InSaveFile *file = _saveFileMan->openForLoading(filename); if (file != NULL) { byte *ptr; - int len = 256, cnt = 0; - ptr = (byte *)malloc(len); - while (ptr) { - int r = file->read(ptr + cnt, len - cnt); - cnt += r; - if (cnt < len) - break; - len *= 2; - ptr = (byte *)realloc(ptr, len); - assert(ptr); - } - ptr[cnt] = '\0'; + const int len = file->size(); + ptr = (byte *)malloc(len + 1); + assert(ptr); + int r = file->read(ptr, len); + assert(r == len); + ptr[len] = '\0'; loadPtrToResource(rtString, a, ptr); free(ptr); delete file; -- cgit v1.2.3