Browse Source

avcodec/snow: clear freed pointers

Avoid leaving stale pointers in memory

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
tags/n2.5
Michael Niedermayer 10 years ago
parent
commit
7ababb85f9
2 changed files with 4 additions and 2 deletions
  1. +3
    -1
      libavcodec/snow.c
  2. +1
    -1
      libavcodec/snowenc.c

+ 3
- 1
libavcodec/snow.c View File

@@ -637,8 +637,10 @@ void ff_snow_release_buffer(AVCodecContext *avctx)
if(s->last_picture[s->max_ref_frames-1]->data[0]){
av_frame_unref(s->last_picture[s->max_ref_frames-1]);
for(i=0; i<9; i++)
if(s->halfpel_plane[s->max_ref_frames-1][1+i/3][i%3])
if(s->halfpel_plane[s->max_ref_frames-1][1+i/3][i%3]) {
av_free(s->halfpel_plane[s->max_ref_frames-1][1+i/3][i%3] - EDGE_WIDTH*(1+s->current_picture->linesize[i%3]));
s->halfpel_plane[s->max_ref_frames-1][1+i/3][i%3] = NULL;
}
}
}



+ 1
- 1
libavcodec/snowenc.c View File

@@ -1862,7 +1862,7 @@ static av_cold int encode_end(AVCodecContext *avctx)
ff_snow_common_end(s);
ff_rate_control_uninit(&s->m);
av_frame_free(&s->input_picture);
av_free(avctx->stats_out);
av_freep(&avctx->stats_out);

return 0;
}


Loading…
Cancel
Save