# Upstream: Yes
--- a/src/libFLAC/stream_decoder.c
+++ b/src/libFLAC/stream_decoder.c
@@ -1753,6 +1753,9 @@ FLAC__bool read_metadata_vorbiscomment_(FLAC__StreamDecoder *decoder, FLAC__Stre
                                        }
                                        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;
                                        }
