summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2004-08-14 14:51:10 +0000
committerMichael Niedermayer <michaelni@gmx.at>2004-08-14 14:51:10 +0000
commitdf84ac2e7dbf1d4dcb58706c2038668ac892530e (patch)
tree87f3584ae092747d6aee5dbc5759416db343cd27
parentb6c50eb17c2ca55b6a3efa17188707ef6828ab6e (diff)
stack overflow
Originally committed as revision 3389 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r--ffmpeg.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/ffmpeg.c b/ffmpeg.c
index 49df083331..2ca90e1a86 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -1078,7 +1078,6 @@ static int output_packet(AVInputStream *ist, int ist_index,
uint8_t *data_buf;
int data_size, got_picture;
AVFrame picture;
- short samples[pkt && pkt->size > AVCODEC_MAX_AUDIO_FRAME_SIZE/2 ? pkt->size : AVCODEC_MAX_AUDIO_FRAME_SIZE/2];
void *buffer_to_free;
if (pkt && pkt->dts != AV_NOPTS_VALUE) { //FIXME seems redundant, as libavformat does this too
@@ -1103,9 +1102,10 @@ static int output_packet(AVInputStream *ist, int ist_index,
data_size = 0;
if (ist->decoding_needed) {
switch(ist->st->codec.codec_type) {
- case CODEC_TYPE_AUDIO:
+ case CODEC_TYPE_AUDIO:{
/* XXX: could avoid copy if PCM 16 bits with same
endianness as CPU */
+ short samples[pkt && pkt->size > AVCODEC_MAX_AUDIO_FRAME_SIZE/2 ? pkt->size : AVCODEC_MAX_AUDIO_FRAME_SIZE/2];
ret = avcodec_decode_audio(&ist->st->codec, samples, &data_size,
ptr, len);
if (ret < 0)
@@ -1121,7 +1121,7 @@ static int output_packet(AVInputStream *ist, int ist_index,
data_buf = (uint8_t *)samples;
ist->next_pts += ((int64_t)AV_TIME_BASE/2 * data_size) /
(ist->st->codec.sample_rate * ist->st->codec.channels);
- break;
+ break;}
case CODEC_TYPE_VIDEO:
data_size = (ist->st->codec.width * ist->st->codec.height * 3) / 2;
/* XXX: allocate picture correctly */