aboutsummaryrefslogtreecommitdiff
path: root/graphics/dxa_player.cpp
diff options
context:
space:
mode:
authorTravis Howell2006-12-14 05:32:16 +0000
committerTravis Howell2006-12-14 05:32:16 +0000
commit488873353b0acea39d500e4732985603d03b812b (patch)
treeb4d89b862829811b9226fdfaa0be3bdd34d9e7fe /graphics/dxa_player.cpp
parent45886ec8ed7ef2244523b05e10a852d9851d772d (diff)
downloadscummvm-rg350-488873353b0acea39d500e4732985603d03b812b.tar.gz
scummvm-rg350-488873353b0acea39d500e4732985603d03b812b.tar.bz2
scummvm-rg350-488873353b0acea39d500e4732985603d03b812b.zip
Only allocate _scaleBuffer when required.
svn-id: r24847
Diffstat (limited to 'graphics/dxa_player.cpp')
-rw-r--r--graphics/dxa_player.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/graphics/dxa_player.cpp b/graphics/dxa_player.cpp
index 157b5ef24e..87ba60bb40 100644
--- a/graphics/dxa_player.cpp
+++ b/graphics/dxa_player.cpp
@@ -123,9 +123,14 @@ bool DXAPlayer::loadFile(const char *filename) {
_frameSize = _width * _height;
_frameBuffer1 = (uint8 *)malloc(_frameSize);
_frameBuffer2 = (uint8 *)malloc(_frameSize);
- _scaledBuffer = (uint8 *)malloc(_frameSize);
- if (!_frameBuffer1 || !_frameBuffer2 || !_scaledBuffer)
- error("DXAPlayer: Error allocating buffers (size %d)", _frameSize);
+ if (!_frameBuffer1 || !_frameBuffer2)
+ error("DXAPlayer: Error frame buffers (size %d)", _frameSize);
+
+ if (_scaleMode != S_NONE) {
+ _scaledBuffer = (uint8 *)malloc(_frameSize);
+ if (!_scaledBuffer)
+ error("Error allocating scale buffer (size %d)", _frameSize);
+ }
_frameNum = 0;
_frameSkipped = 0;