fix segfault with BLUR8.AVI
authorMichael Niedermayer <michaelni@gmx.at>
Fri, 3 Mar 2006 20:36:08 +0000 (20:36 +0000)
committerMichael Niedermayer <michaelni@gmx.at>
Fri, 3 Mar 2006 20:36:08 +0000 (20:36 +0000)
Originally committed as revision 5104 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/utils.c

index 235c067..801bb48 100644 (file)
@@ -844,9 +844,6 @@ int avcodec_open(AVCodecContext *avctx, AVCodec *codec)
     if(avctx->codec)
         goto end;
 
-    avctx->codec = codec;
-    avctx->codec_id = codec->id;
-    avctx->frame_number = 0;
     if (codec->priv_data_size > 0) {
         avctx->priv_data = av_mallocz(codec->priv_data_size);
         if (!avctx->priv_data)
@@ -865,9 +862,13 @@ int avcodec_open(AVCodecContext *avctx, AVCodec *codec)
         goto end;
     }
 
+    avctx->codec = codec;
+    avctx->codec_id = codec->id;
+    avctx->frame_number = 0;
     ret = avctx->codec->init(avctx);
     if (ret < 0) {
         av_freep(&avctx->priv_data);
+        avctx->codec= NULL;
         goto end;
     }
     ret=0;