aboutsummaryrefslogtreecommitdiff
path: root/engines/gob/videoplayer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/gob/videoplayer.cpp')
-rw-r--r--engines/gob/videoplayer.cpp18
1 files changed, 10 insertions, 8 deletions
diff --git a/engines/gob/videoplayer.cpp b/engines/gob/videoplayer.cpp
index 5bd7d08005..1c5f1c1a72 100644
--- a/engines/gob/videoplayer.cpp
+++ b/engines/gob/videoplayer.cpp
@@ -160,30 +160,32 @@ int VideoPlayer::openVideo(bool primary, const Common::String &file, Properties
properties.sprite = -1;
video->surface.reset();
video->decoder->setSurfaceMemory();
- video->decoder->setXY(0, 0);
+ properties.x = properties.y = 0;
} else {
video->surface = _vm->_draw->_spritesArray[properties.sprite];
video->decoder->setSurfaceMemory(video->surface->getData(),
video->surface->getWidth(), video->surface->getHeight(), video->surface->getBPP());
if (!ownSurf || (ownSurf && screenSize)) {
- if ((properties.x >= 0) || (properties.y >= 0))
- video->decoder->setXY((properties.x < 0) ? 0xFFFF : properties.x,
- (properties.y < 0) ? 0xFFFF : properties.y);
- else
- video->decoder->setXY();
+ if ((properties.x >= 0) || (properties.y >= 0)) {
+ properties.x = (properties.x < 0) ? 0xFFFF : properties.x;
+ properties.y = (properties.y < 0) ? 0xFFFF : properties.y;
+ } else
+ properties.x = properties.y = -1;
} else
- video->decoder->setXY(0, 0);
+ properties.x = properties.y = 0;
}
} else {
properties.sprite = -1;
video->surface.reset();
video->decoder->setSurfaceMemory();
- video->decoder->setXY(0, 0);
+ properties.x = properties.y = 0;
}
}
+ video->decoder->setXY(properties.x, properties.y);
+
if (primary)
_needBlit = (properties.flags & kFlagUseBackSurfaceContent) && (properties.sprite == Draw::kFrontSurface);