Skip to content
Snippets Groups Projects
Commit e756a9e0 authored by Joshua Colp's avatar Joshua Colp Committed by Gerrit Code Review
Browse files

Merge "format_ogg_vorbis: Clear ogg/vorbis data structures on close"

parents b0c72da6 4fb9f5d6
Branches
Tags
No related merge requests found
...@@ -158,6 +158,7 @@ static int ogg_vorbis_rewrite(struct ast_filestream *s, ...@@ -158,6 +158,7 @@ static int ogg_vorbis_rewrite(struct ast_filestream *s,
if (vorbis_encode_init_vbr(&tmp->vi, 1, DEFAULT_SAMPLE_RATE, 0.4)) { if (vorbis_encode_init_vbr(&tmp->vi, 1, DEFAULT_SAMPLE_RATE, 0.4)) {
ast_log(LOG_ERROR, "Unable to initialize Vorbis encoder!\n"); ast_log(LOG_ERROR, "Unable to initialize Vorbis encoder!\n");
vorbis_info_clear(&tmp->vi);
return -1; return -1;
} }
...@@ -273,6 +274,13 @@ static void ogg_vorbis_close(struct ast_filestream *fs) ...@@ -273,6 +274,13 @@ static void ogg_vorbis_close(struct ast_filestream *fs)
* and write out the rest of the data */ * and write out the rest of the data */
vorbis_analysis_wrote(&s->vd, 0); vorbis_analysis_wrote(&s->vd, 0);
write_stream(s, fs->f); write_stream(s, fs->f);
/* Cleanup */
ogg_stream_clear(&s->os);
vorbis_block_clear(&s->vb);
vorbis_dsp_clear(&s->vd);
vorbis_comment_clear(&s->vc);
vorbis_info_clear(&s->vi);
} else { } else {
/* clear OggVorbis_File handle */ /* clear OggVorbis_File handle */
ov_clear(&s->ov_f); ov_clear(&s->ov_f);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment