move freeing code before exiting because of signal
authorBaptiste Coudurier <baptiste.coudurier@gmail.com>
Mon, 13 Apr 2009 03:47:12 +0000 (03:47 +0000)
committerBaptiste Coudurier <baptiste.coudurier@gmail.com>
Mon, 13 Apr 2009 03:47:12 +0000 (03:47 +0000)
Originally committed as revision 18485 to svn://svn.ffmpeg.org/ffmpeg/trunk

ffmpeg.c

index e908561..feb1b2d 100644 (file)
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -427,6 +427,11 @@ static int av_exit(int ret)
     powerpc_display_perf_report();
 #endif /* CONFIG_POWERPC_PERF */
 
+    for (i=0;i<CODEC_TYPE_NB;i++)
+        av_free(avcodec_opts[i]);
+    av_free(avformat_opts);
+    av_free(sws_opts);
+
     if (received_sigterm) {
         fprintf(stderr,
             "Received signal %d: terminating.\n",
@@ -434,11 +439,6 @@ static int av_exit(int ret)
         exit (255);
     }
 
-    for (i=0;i<CODEC_TYPE_NB;i++)
-        av_free(avcodec_opts[i]);
-    av_free(avformat_opts);
-    av_free(sws_opts);
-
     exit(ret); /* not all OS-es handle main() return value */
     return ret;
 }