From aac58c80cc6f21c3ee7dc402520a219c3098d688 Mon Sep 17 00:00:00 2001 From: Sven Hesse Date: Tue, 14 Jul 2009 08:57:55 +0000 Subject: Removing ioFailed() usage and fixing a leak in case of error svn-id: r42469 --- graphics/video/coktelvideo/coktelvideo.cpp | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'graphics/video') diff --git a/graphics/video/coktelvideo/coktelvideo.cpp b/graphics/video/coktelvideo/coktelvideo.cpp index 995247acaa..39aa8c5d2d 100644 --- a/graphics/video/coktelvideo/coktelvideo.cpp +++ b/graphics/video/coktelvideo/coktelvideo.cpp @@ -1819,16 +1819,18 @@ Common::MemoryReadStream *Vmd::getExtraData(const char *fileName) { return 0; } - byte *data = (byte *) malloc(_extraData[i].realSize); - - _stream->seek(_extraData[i].offset); - if (_stream->ioFailed() || (((uint32) _stream->pos()) != _extraData[i].offset)) { - warning("Vmd::getExtraData(): Can't seek to offset %d to get extra data file \"%s\"", + if (!_stream->seek(_extraData[i].offset)) { + warning("Vmd::getExtraData(): Can't seek to offset %d to (file \"%s\")", _extraData[i].offset, fileName); return 0; } - _stream->read(data, _extraData[i].realSize); + byte *data = (byte *) malloc(_extraData[i].realSize); + if (_stream->read(data, _extraData[i].realSize) != _extraData[i].realSize) { + free(data); + warning("Vmd::getExtraData(): Couldn't read %d bytes (file \"%s\")", + _extraData[i].realSize, fileName); + } Common::MemoryReadStream *stream = new Common::MemoryReadStream(data, _extraData[i].realSize, true); -- cgit v1.2.3 From aa50dd61e9e698e4106ac0d0ad49cf05ec9b5e19 Mon Sep 17 00:00:00 2001 From: Torbjörn Andersson Date: Tue, 14 Jul 2009 16:45:18 +0000 Subject: Got rid of ioFailed(). I haven't actually tested it, but we don't use the MPEG decoder at the moment, and it was only used in the BACKEND_8BIT case anyway. svn-id: r42484 --- graphics/video/mpeg_player.cpp | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'graphics/video') diff --git a/graphics/video/mpeg_player.cpp b/graphics/video/mpeg_player.cpp index 1910babce4..5b7b3eb607 100644 --- a/graphics/video/mpeg_player.cpp +++ b/graphics/video/mpeg_player.cpp @@ -86,13 +86,10 @@ bool BaseAnimationState::init(const char *name) { } p = 0; - while (1) { + while (!f.eos()) { _palettes[p].end = f.readUint16LE(); _palettes[p].cnt = f.readUint16LE(); - if (f.ioFailed()) - break; - for (i = 0; i < _palettes[p].cnt; i++) { _palettes[p].pal[4 * i] = f.readByte(); _palettes[p].pal[4 * i + 1] = f.readByte(); -- cgit v1.2.3