diff --git a/ChangeLog b/ChangeLog index adc669e480..1222639b57 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2006-05-11 Michael Smith + + * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_init), + (gst_gnome_vfs_src_received_headers_callback): + * ext/gnomevfs/gstgnomevfssrc.h: + Don't set icy-caps unless we have a sane interval value. Move + interval to a local variable; we never use it outside this function. + 2006-05-11 Wim Taymans * sys/ximage/ximagesink.c: (gst_ximagesink_get_type): diff --git a/ext/gnomevfs/gstgnomevfssrc.c b/ext/gnomevfs/gstgnomevfssrc.c index 9886eb66aa..8f9e562c7d 100644 --- a/ext/gnomevfs/gstgnomevfssrc.c +++ b/ext/gnomevfs/gstgnomevfssrc.c @@ -263,7 +263,6 @@ gst_gnome_vfs_src_init (GstGnomeVFSSrc * gnomevfssrc) gnomevfssrc->curoffset = 0; gnomevfssrc->seekable = FALSE; - gnomevfssrc->icy_metaint = 0; gnomevfssrc->icy_caps = NULL; gnomevfssrc->iradio_mode = FALSE; gnomevfssrc->http_callbacks_pushed = FALSE; @@ -550,11 +549,11 @@ gst_gnome_vfs_src_received_headers_callback (gconstpointer in, /* Icecast stuff */ if (strncmp (data, "icy-metaint:", 12) == 0) { /* ugh */ if (sscanf (data + 12, "%d", &icy_metaint) == 1) { - src->icy_metaint = icy_metaint; - src->icy_caps = gst_caps_new_simple ("application/x-icy", - "metadata-interval", G_TYPE_INT, src->icy_metaint, NULL); - continue; + if (icy_metaint > 0) + src->icy_caps = gst_caps_new_simple ("application/x-icy", + "metadata-interval", G_TYPE_INT, icy_metaint, NULL); } + continue; } if (!strncmp (data, "icy-", 4)) diff --git a/ext/gnomevfs/gstgnomevfssrc.h b/ext/gnomevfs/gstgnomevfssrc.h index c226cf52b0..1afe395554 100644 --- a/ext/gnomevfs/gstgnomevfssrc.h +++ b/ext/gnomevfs/gstgnomevfssrc.h @@ -68,7 +68,6 @@ struct _GstGnomeVFSSrc gboolean iradio_mode; gboolean http_callbacks_pushed; - gint icy_metaint; GstCaps *icy_caps; gchar *iradio_name;