diff --git a/avconv.c b/avconv.c
index 12ee3dc9f3a3aa7f621df3b2fc238768771717d3..4a5830f3261006c0259e581e08aa6ee4121b6a8a 100644
--- a/avconv.c
+++ b/avconv.c
@@ -457,7 +457,6 @@ static int exit_program(int ret)
         fclose(vstats_file);
     av_free(vstats_filename);
 
-    av_free(streamid_map);
     av_free(meta_data_maps);
 
     av_freep(&input_streams);
@@ -3695,6 +3694,8 @@ static void opt_output_file(const char *filename)
     metadata_chapters_autocopy = 1;
     av_freep(&stream_maps);
     nb_stream_maps = 0;
+    av_freep(&streamid_map);
+    nb_streamid_map = 0;
 
     av_dict_free(&codec_names);