diff options
author | Benjamin Barenblat <benjamin@barenblat.name> | 2011-07-26 19:37:05 -0400 |
---|---|---|
committer | Benjamin Barenblat <benjamin@barenblat.name> | 2011-07-26 19:44:04 -0400 |
commit | d600ff1f154a9dff61badd86127d0c7ab5dd9a8a (patch) | |
tree | 43fea5697b65fa6ea4d8a2b0e9771f532c6284c1 | |
parent | 90d2930aacda57538f1e9e05acc18e8e80481de3 (diff) |
flac_tag: fix segfault when setting picture description to ""
Flac_Tag_Write_File_Tag now checks to make sure the picture
description string is non-null before attempting to set it. (Passing
a null pointer to FLAC__metadata_object_picture_set_description
violates that function's contract; see
http://flac.sourceforge.net/api/group__flac__metadata__object.html#ga43).
This brings Flac_Tag_Write_File_Tag's behavior in line with that of
the analogous functions for Ogg and ID3 tags.
-rw-r--r-- | src/flac_tag.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/flac_tag.c b/src/flac_tag.c index 19c4c48..2c04abc 100644 --- a/src/flac_tag.c +++ b/src/flac_tag.c @@ -1085,7 +1085,10 @@ gboolean Flac_Tag_Write_File_Tag (ET_File *ETFile) FLAC__metadata_object_picture_set_mime_type(picture_block, (gchar *)Picture_Mime_Type_String(format), TRUE); // Description - FLAC__metadata_object_picture_set_description(picture_block, (FLAC__byte *)pic->description, TRUE); + if (pic->description) + { + FLAC__metadata_object_picture_set_description(picture_block, (FLAC__byte *)pic->description, TRUE); + } // Resolution picture_block->data.picture.width = pic->width; |