rhythmbox r5705 - in trunk: . plugins/ipod
- From: teuf svn gnome org
- To: svn-commits-list gnome org
- Subject: rhythmbox r5705 - in trunk: . plugins/ipod
- Date: Tue, 20 May 2008 21:11:16 +0000 (UTC)
Author: teuf
Date: Tue May 20 21:11:16 2008
New Revision: 5705
URL: http://svn.gnome.org/viewvc/rhythmbox?rev=5705&view=rev
Log:
* plugins/ipod/rb-ipod-source.c: don't connect to notify::name too
soon during RbIpodSource instanciation since
RbIpodSource::priv::ipod_db must be set before the notify::name
callback can be safely used, this fixes bug #524985. In
impl_delete_thyself, don't try to use priv->ipod_db if it's NULL
(which can happen with empty ipods)
Modified:
trunk/ChangeLog
trunk/plugins/ipod/rb-ipod-source.c
Modified: trunk/plugins/ipod/rb-ipod-source.c
==============================================================================
--- trunk/plugins/ipod/rb-ipod-source.c (original)
+++ trunk/plugins/ipod/rb-ipod-source.c Tue May 20 21:11:16 2008
@@ -194,8 +194,6 @@
static void
rb_ipod_source_init (RBiPodSource *source)
{
- g_signal_connect (G_OBJECT (source), "notify::name",
- (GCallback)rb_ipod_source_name_changed_cb, NULL);
}
static GObject *
@@ -936,6 +934,9 @@
"name", name,
NULL);
}
+ g_signal_connect (G_OBJECT (source), "notify::name",
+ (GCallback)rb_ipod_source_name_changed_cb,
+ NULL);
priv->load_idle_id = g_idle_add ((GSourceFunc)load_ipod_db_idle_cb, source);
}
g_object_unref (volume);
@@ -1625,6 +1626,11 @@
RBiPodSourcePrivate *priv = IPOD_SOURCE_GET_PRIVATE (source);
GList *p;
+ if (priv->ipod_db == NULL) {
+ RB_SOURCE_CLASS (rb_ipod_source_parent_class)->impl_delete_thyself (source);
+ return;
+ }
+
for (p = rb_ipod_db_get_playlists (priv->ipod_db);
p != NULL;
p = p->next) {
@@ -1647,10 +1653,8 @@
}
}
- if (priv->ipod_db != NULL) {
- g_object_unref (G_OBJECT (priv->ipod_db));
- priv->ipod_db = NULL;
- }
+ g_object_unref (G_OBJECT (priv->ipod_db));
+ priv->ipod_db = NULL;
RB_SOURCE_CLASS (rb_ipod_source_parent_class)->impl_delete_thyself (source);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]