Bug#473412: rhythmbox: mime type of podcasts is wrongly guessed, then podcast is ignored by totem-pl-parser
Jeremy Lal
kapouer at melix.org
Sun Mar 30 14:30:26 UTC 2008
Package: rhythmbox
Version: 0.11.5-1
Severity: normal
since 0.11 i can't download some podcasts anymore.
i found it was podcasts with that kind of url :
http://somethi.ng/podcast.php3
I checked and the server correctly sets the mime type in http headers, (application/rss+xml)
but rhythmbox uses totem-pl-parser, which guesses the mime type from file extension.
Forcing totem-pl-parser (with option force) to check content before deciding if wrong data or not
corrects the problem. I think it's right to do that because rhythmbox asks user if she wants to force
adding a podcast with an extension different than rss, xml... just before the line modified by my patch.
See Attached patch.
-- System Information:
Debian Release: lenny/sid
APT prefers unstable
APT policy: (500, 'unstable'), (500, 'stable')
Architecture: i386 (i686)
Kernel: Linux 2.6.24-1-686 (SMP w/2 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages rhythmbox depends on:
ii dbus 1.1.20-1 simple interprocess messaging syst
ii gconf2 2.22.0-1 GNOME configuration database syste
ii gnome-icon-theme 2.22.0-1 GNOME Desktop icon theme
ii gstreamer0.10-alsa [gs 0.10.18-3 GStreamer plugin for ALSA
ii gstreamer0.10-esd [gst 0.10.7-3 GStreamer plugin for ESD
ii gstreamer0.10-gnomevfs 0.10.18-3 GStreamer plugin for GnomeVFS
ii gstreamer0.10-plugins- 0.10.18-3 GStreamer plugins from the "base"
ii gstreamer0.10-plugins- 0.10.7-3 GStreamer plugins from the "good"
ii gstreamer0.10-pulseaud 0.9.7-2 GStreamer plugin for PulseAudio
ii gstreamer0.10-x 0.10.18-3 GStreamer plugins for X11 and Pang
ii libart-2.0-2 2.3.20-1 Library of functions for 2D graphi
ii libatk1.0-0 1.22.0-1 The ATK accessibility toolkit
ii libavahi-client3 0.6.22-2 Avahi client library
ii libavahi-common3 0.6.22-2 Avahi common library
ii libavahi-glib1 0.6.22-2 Avahi glib integration library
ii libbonobo2-0 2.22.0-1 Bonobo CORBA interfaces library
ii libbonoboui2-0 2.22.0-1 The Bonobo UI library
ii libc6 2.7-10 GNU C Library: Shared libraries
ii libcairo2 1.4.14-1 The Cairo 2D vector graphics libra
ii libdbus-1-3 1.1.20-1 simple interprocess messaging syst
ii libdbus-glib-1-2 0.74-1 simple interprocess messaging syst
ii libexpat1 1.95.8-4 XML parsing C library - runtime li
ii libffi5 3.0.4-2 Foreign Function Interface library
ii libfontconfig1 2.5.0-2 generic font configuration library
ii libfreetype6 2.3.5-1+b1 FreeType 2 font engine, shared lib
ii libgconf2-4 2.22.0-1 GNOME configuration database syste
ii libglade2-0 1:2.6.2-1 library to load .glade files at ru
ii libglib2.0-0 2.16.1-2 The GLib library of C routines
ii libgnome-keyring0 2.22.0-2 GNOME keyring services library
ii libgnome-media0 2.22.0-1 runtime libraries for the GNOME me
ii libgnome2-0 2.20.1.1-1 The GNOME 2 library - runtime file
ii libgnomecanvas2-0 2.20.1.1-1 A powerful object-oriented display
ii libgnomeui-0 2.20.1.1-1 The GNOME 2 libraries (User Interf
ii libgnomevfs2-0 1:2.22.0-2 GNOME Virtual File System (runtime
ii libgpod3 0.6.0-3 a library to read and write songs
ii libgstreamer-plugins-b 0.10.18-3 GStreamer libraries from the "base
ii libgstreamer0.10-0 0.10.18-4 Core GStreamer libraries and eleme
ii libgtk2.0-0 2.12.9-2 The GTK+ graphical user interface
ii libhal1 0.5.11~rc2-1 Hardware Abstraction Layer - share
ii libice6 2:1.0.4-1 X11 Inter-Client Exchange library
ii liblircclient0 0.8.2-2 infra-red remote control support -
ii libmtp7 0.2.6.1-2 Media Transfer Protocol (MTP) libr
ii libmusicbrainz4c2a 2.1.5-2 Second generation incarnation of t
ii libnautilus-burn4 2.20.0-1 Nautilus Burn Library - runtime ve
ii libnotify1 [libnotify1 0.4.4-3 sends desktop notifications to a n
ii libnspr4-0d 4.7.0-2 NetScape Portable Runtime Library
ii liborbit2 1:2.14.12-0.1 libraries for ORBit2 - a CORBA ORB
ii libpango1.0-0 1.20.0-1 Layout and rendering of internatio
ii libpng12-0 1.2.15~beta5-3 PNG library - runtime
ii libpopt0 1.10-3 lib for parsing cmdline parameters
ii libsexy2 0.1.11-2 collection of additional GTK+ widg
ii libsm6 2:1.0.3-1+b1 X11 Session Management library
ii libsoup2.4-1 2.4.0-1 an HTTP library implementation in
ii libtotem-plparser10 2.22.1-1 Totem Playlist Parser library - ru
ii libusb-0.1-4 2:0.1.12-9 userspace USB programming library
ii libx11-6 2:1.0.3-7 X11 client-side library
ii libxcursor1 1:1.1.9-1 X cursor management library
ii libxext6 2:1.0.4-1 X11 miscellaneous extension librar
ii libxfixes3 1:4.0.3-2 X11 miscellaneous 'fixes' extensio
ii libxi6 2:1.1.3-1 X11 Input extension library
ii libxinerama1 2:1.0.3-1 X11 Xinerama extension library
ii libxml2 2.6.31.dfsg-2 GNOME XML library
ii libxrandr2 2:1.2.2-1 X11 RandR extension library
ii libxrender1 1:0.9.4-1 X Rendering Extension client libra
ii python 2.4.4-6 An interactive high-level object-o
ii python-gnome2 2.20.1-2 Python bindings for the GNOME desk
ii python-gtk2 2.12.1-1 Python bindings for the GTK+ widge
ii python-support 0.7.7 automated rebuilding support for P
ii python2.4 2.4.5-1 An interactive high-level object-o
ii zlib1g 1:1.2.3.3.dfsg-11 compression library - runtime
Versions of packages rhythmbox recommends:
ii avahi-daemon 0.6.22-2 Avahi mDNS/DNS-SD daemon
ii gnome-app-install 0.5.2.5-1 GNOME Application Installer
ii gnome-control-center 1:2.22.0-2 utilities to configure the GNOME d
pn gnome-volume-manager <none> (no description available)
ii gstreamer0.10-plugins-ugly 0.10.7-3 GStreamer plugins from the "ugly"
ii hal 0.5.11~rc2-1 Hardware Abstraction Layer
ii libgnomevfs2-extra 1:2.22.0-2 GNOME Virtual File System (extra m
ii notification-daemon 0.3.7-1+b1 a daemon that displays passive pop
ii scrollkeeper 0.3.14-16 A free electronic cataloging syste
ii sound-juicer 2.22.0-1 GNOME 2 CD Ripper
ii yelp 2.22.0-1 Help browser for GNOME 2
-- no debconf information
-------------- next part --------------
*** rb-podcast-parse.c 2008-03-30 16:21:53.000000000 +0200
--- rb-podcast-parse.c.new 2008-03-30 16:21:27.000000000 +0200
*************** rb_podcast_parse_load_feed (RBPodcastCha
*** 193,199 ****
}
plparser = totem_pl_parser_new ();
! g_object_set (plparser, "recurse", FALSE, NULL);
g_signal_connect (G_OBJECT (plparser), "entry-parsed", G_CALLBACK (entry_parsed), data);
g_signal_connect (G_OBJECT (plparser), "playlist-started", G_CALLBACK (playlist_started), data);
g_signal_connect (G_OBJECT (plparser), "playlist-ended", G_CALLBACK (playlist_ended), data);
--- 193,199 ----
}
plparser = totem_pl_parser_new ();
! g_object_set (plparser, "recurse", FALSE, "force", TRUE, NULL);
g_signal_connect (G_OBJECT (plparser), "entry-parsed", G_CALLBACK (entry_parsed), data);
g_signal_connect (G_OBJECT (plparser), "playlist-started", G_CALLBACK (playlist_started), data);
g_signal_connect (G_OBJECT (plparser), "playlist-ended", G_CALLBACK (playlist_ended), data);
More information about the pkg-gnome-maintainers
mailing list