]> rtime.felk.cvut.cz Git - frescor/ffmpeg.git/commitdiff
stack overflow
authormichael <michael@9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
Sat, 14 Aug 2004 14:51:10 +0000 (14:51 +0000)
committermichael <michael@9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
Sat, 14 Aug 2004 14:51:10 +0000 (14:51 +0000)
git-svn-id: file:///var/local/repositories/ffmpeg/trunk@3389 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b

ffmpeg.c

index 49df08333165d8b30c1eaa73dbcb8f8f26bdc55c..2ca90e1a86e08f2dca9f3402278da848591425c6 100644 (file)
--- 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 */