diff options
author | Sven Hesse | 2009-11-30 01:58:15 +0000 |
---|---|---|
committer | Sven Hesse | 2009-11-30 01:58:15 +0000 |
commit | 8ede0caf72b82dd7cf211428fdb5985ca72c0a28 (patch) | |
tree | bdcc9266020ae743e2e25b26d0579af1fb58d3fb /graphics/video | |
parent | 0894fa39b29abd92d4ff4854c586b4b3942ab1a0 (diff) | |
download | scummvm-rg350-8ede0caf72b82dd7cf211428fdb5985ca72c0a28.tar.gz scummvm-rg350-8ede0caf72b82dd7cf211428fdb5985ca72c0a28.tar.bz2 scummvm-rg350-8ede0caf72b82dd7cf211428fdb5985ca72c0a28.zip |
Properly clear the chunk headers again on closing
svn-id: r46209
Diffstat (limited to 'graphics/video')
-rw-r--r-- | graphics/video/avi_decoder.cpp | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/graphics/video/avi_decoder.cpp b/graphics/video/avi_decoder.cpp index 5eb4d3988f..463a4eaccc 100644 --- a/graphics/video/avi_decoder.cpp +++ b/graphics/video/avi_decoder.cpp @@ -273,17 +273,25 @@ void AviDecoder::closeFile() { delete[] _videoFrameBuffer; _videoFrameBuffer = 0; - + // Deinitialize sound _mixer->stopHandle(*_audHandle); - + _audStream = 0; + _decodedHeader = false; - + delete _videoCodec; _videoCodec = 0; delete[] _ixInfo.indices; _ixInfo.indices = 0; + + memset(_palette, 0, sizeof(_palette)); + memset(&_wvInfo, 0, sizeof(PCMWAVEFORMAT)); + memset(&_bmInfo, 0, sizeof(BITMAPINFOHEADER)); + memset(&_vidsHeader, 0, sizeof(AVIStreamHeader)); + memset(&_audsHeader, 0, sizeof(AVIStreamHeader)); + memset(&_ixInfo, 0, sizeof(AVIOLDINDEX)); } Surface *AviDecoder::getNextFrame() { |