ext/mad/gstid3tag.c: Add guard against invalid utf-8 conversions in mad. Just in...
authorBenjamin Otte <otte@gnome.org>
Wed, 7 Jan 2004 03:06:19 +0000 (03:06 +0000)
committerBenjamin Otte <otte@gnome.org>
Wed, 7 Jan 2004 03:06:19 +0000 (03:06 +0000)
Original commit message from CVS:
2004-01-07  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* ext/mad/gstid3tag.c: (gst_mad_id3_to_tag_list):
Add guard against invalid utf-8 conversions in mad. Just in case.

ChangeLog
ext/mad/gstid3tag.c

index 01c28e0..5fecd16 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2004-01-07  Benjamin Otte  <in7y118@public.uni-hamburg.de>
 
+       * ext/mad/gstid3tag.c: (gst_mad_id3_to_tag_list):
+         Add guard against invalid utf-8 conversions in mad. Just in case.
+
+2004-01-07  Benjamin Otte  <in7y118@public.uni-hamburg.de>
+
        * sys/oss/gstosssink.c: (gst_osssink_sink_fixate):
          Fix for bug shown by poisoning
 
index 7f40c93..d656df6 100644 (file)
@@ -468,6 +468,12 @@ gst_mad_id3_to_tag_list(const struct id3_tag *tag)
       utf8 = id3_ucs4_utf8duplicate(ucs4);
       if (utf8 == 0)
        continue;
+      
+      if (!g_utf8_validate (utf8, -1, NULL)) {
+       g_warning ("converted string is not valid utf-8");
+       free (utf8);
+       continue;
+      }
 
       /* be sure to add non-string tags here */
       switch (gst_tag_get_type (tag_name)) {