1 |
From 51544c3ff63f4e638145dff25b3416ff0ce83072 Mon Sep 17 00:00:00 2001 |
2 |
From: elupus <elupus@xbmc.org> |
3 |
Date: Sun, 1 Apr 2012 21:44:40 +0200 |
4 |
Subject: [PATCH 137/145] fixed crash if audio decoder for some reason doesn't |
5 |
return a frame (cherry picked from commit |
6 |
cfb1bd2269346047c32b4e6259089a6fe6960439) |
7 |
|
8 |
--- |
9 |
xbmc/cores/dvdplayer/DVDCodecs/Audio/DVDAudioCodecFFmpeg.cpp | 4 ++++ |
10 |
1 file changed, 4 insertions(+) |
11 |
|
12 |
diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Audio/DVDAudioCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Audio/DVDAudioCodecFFmpeg.cpp |
13 |
index ad8a95c..46fd47f 100644 |
14 |
--- a/xbmc/cores/dvdplayer/DVDCodecs/Audio/DVDAudioCodecFFmpeg.cpp |
15 |
+++ b/xbmc/cores/dvdplayer/DVDCodecs/Audio/DVDAudioCodecFFmpeg.cpp |
16 |
@@ -149,7 +149,11 @@ int CDVDAudioCodecFFmpeg::Decode(BYTE* pData, int iSize) |
17 |
, &got_frame |
18 |
, &avpkt); |
19 |
if (iBytesUsed < 0 || !got_frame) |
20 |
+ { |
21 |
+ m_iBufferSize1 = 0; |
22 |
+ m_iBufferSize2 = 0; |
23 |
return iBytesUsed; |
24 |
+ } |
25 |
m_iBufferSize1 = m_dllAvUtil.av_samples_get_buffer_size(NULL, m_pCodecContext->channels, m_pFrame1->nb_samples, m_pCodecContext->sample_fmt, 1); |
26 |
|
27 |
/* some codecs will attempt to consume more data than what we gave */ |
28 |
-- |
29 |
1.7.10 |
30 |
|