Merge pull request #1757 from akortunov/musicfix

Handle exception when try to load non-music file
0.6.3
Bret Curtis 7 years ago committed by GitHub
commit 664edc5a39
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -32,6 +32,7 @@
Bug #4327: Missing animations during spell/weapon stance switching Bug #4327: Missing animations during spell/weapon stance switching
Bug #4368: Settings window ok button doesn't have key focus by default Bug #4368: Settings window ok button doesn't have key focus by default
Bug #4393: NPCs walk back to where they were after using ResetActors Bug #4393: NPCs walk back to where they were after using ResetActors
Bug #4416: Handle exception if we try to play non-music file
Bug #4419: MRK NiStringExtraData is handled incorrectly Bug #4419: MRK NiStringExtraData is handled incorrectly
Bug #4426: RotateWorld behavior is incorrect Bug #4426: RotateWorld behavior is incorrect
Bug #4429: [Windows] Error on build INSTALL.vcxproj project (debug) with cmake 3.7.2 Bug #4429: [Windows] Error on build INSTALL.vcxproj project (debug) with cmake 3.7.2

@ -251,21 +251,24 @@ void FFmpeg_Decoder::open(const std::string &fname)
if(mOutputChannelLayout == 0) if(mOutputChannelLayout == 0)
mOutputChannelLayout = av_get_default_channel_layout((*mStream)->codec->channels); mOutputChannelLayout = av_get_default_channel_layout((*mStream)->codec->channels);
} }
catch(...) { catch(...)
{
if(mStream) if(mStream)
avcodec_close((*mStream)->codec); avcodec_close((*mStream)->codec);
mStream = NULL; mStream = NULL;
if (mFormatCtx->pb->buffer != NULL) if (mFormatCtx != NULL)
{ {
av_free(mFormatCtx->pb->buffer); if (mFormatCtx->pb->buffer != NULL)
mFormatCtx->pb->buffer = NULL; {
} av_free(mFormatCtx->pb->buffer);
av_free(mFormatCtx->pb); mFormatCtx->pb->buffer = NULL;
mFormatCtx->pb = NULL; }
av_free(mFormatCtx->pb);
mFormatCtx->pb = NULL;
avformat_close_input(&mFormatCtx); avformat_close_input(&mFormatCtx);
throw; }
} }
} }

Loading…
Cancel
Save