From 621847b2e2dd5907b8222933fb6eb6748aaf4777 Mon Sep 17 00:00:00 2001 From: Filippos Karapetis Date: Mon, 15 Sep 2008 09:17:18 +0000 Subject: Proper check for eos(), after the latest changes to OSystem svn-id: r34554 --- engines/saga/sprite.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'engines') diff --git a/engines/saga/sprite.cpp b/engines/saga/sprite.cpp index ee2e2b922f..a1f78e1b9f 100644 --- a/engines/saga/sprite.cpp +++ b/engines/saga/sprite.cpp @@ -412,6 +412,8 @@ void Sprite::decodeRLEBuffer(const byte *inputBuffer, size_t inLength, size_t ou while (!readS.eos() && (outPointer < outPointerEnd)) { bg_runcount = readS.readByte(); + if (readS.eos()) + break; fg_runcount = readS.readByte(); for (c = 0; c < bg_runcount && !readS.eos(); c++) { @@ -423,8 +425,9 @@ void Sprite::decodeRLEBuffer(const byte *inputBuffer, size_t inLength, size_t ou } for (c = 0; c < fg_runcount && !readS.eos(); c++) { - // FIXME: eos changed; error handling? *outPointer = readS.readByte(); + if (readS.eos()) + break; if (outPointer < outPointerEnd) outPointer++; else -- cgit v1.2.3