stream_decoder.c: Fix a memory leak
Leak reported by Secunia Research.
Bug: 124775381
Change-Id: I314e4c3d46a8ef09ce3864da4cecdee58ee96ad7
(cherry picked from commit 74bdd1955c8dadcc5556ad931e26127e21fd3d61)
diff --git a/libFLAC/stream_decoder.c b/libFLAC/stream_decoder.c
index 071398a..7db34cf 100644
--- a/libFLAC/stream_decoder.c
+++ b/libFLAC/stream_decoder.c
@@ -1761,6 +1761,9 @@
}
memset (obj->comments[i].entry, 0, obj->comments[i].length) ;
if (!FLAC__bitreader_read_byte_block_aligned_no_crc(decoder->private_->input, obj->comments[i].entry, obj->comments[i].length)) {
+ /* Current i-th entry is bad, so we delete it. */
+ free (obj->comments[i].entry) ;
+ obj->comments[i].entry = NULL ;
obj->num_comments = i;
goto skip;
}