diff options
| -rw-r--r-- | engines/fullpipe/modal.cpp | 6 | 
1 files changed, 5 insertions, 1 deletions
| diff --git a/engines/fullpipe/modal.cpp b/engines/fullpipe/modal.cpp index 8af6176566..41c1ba368b 100644 --- a/engines/fullpipe/modal.cpp +++ b/engines/fullpipe/modal.cpp @@ -378,7 +378,11 @@ void ModalVideoPlayer::play(const char *filename) {  		if (aviDecoder->needsUpdate()) {  			const Graphics::Surface *frame = aviDecoder->decodeNextFrame();  			if (frame) { -				g_fp->_system->copyRectToScreen(frame->getPixels(), frame->pitch, x, y, frame->w, frame->h); +				Graphics::Surface *frameCopy = frame->convertTo(g_system->getScreenFormat()); +				g_fp->_system->copyRectToScreen(frameCopy->getPixels(), frameCopy->pitch, +					x, y, frameCopy->w, frameCopy->h); +				frameCopy->free(); +				delete frameCopy;  				if (aviDecoder->hasDirtyPalette())  					g_fp->_system->getPaletteManager()->setPalette(aviDecoder->getPalette(), 0, 256); | 
