rhythmbox r5763 - in trunk: . plugins/ipod



Author: teuf
Date: Fri Jun 20 18:11:45 2008
New Revision: 5763
URL: http://svn.gnome.org/viewvc/rhythmbox?rev=5763&view=rev

Log:
Apply Colin Leroy's patch from bug #451265


Modified:
   trunk/ChangeLog
   trunk/plugins/ipod/rb-ipod-source.c
   trunk/plugins/ipod/rb-ipod-static-playlist-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	Fri Jun 20 18:11:45 2008
@@ -409,6 +409,7 @@
 		g_free (filename);
 	}
 
+	g_object_ref (G_OBJECT(playlist_source));
 	playlist->userdata = playlist_source;
 	playlist->userdata_destroy = g_object_unref;
 	playlist->userdata_duplicate = g_object_ref;
@@ -1655,8 +1656,8 @@
 		}
 	}
 
-        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);
 }

Modified: trunk/plugins/ipod/rb-ipod-static-playlist-source.c
==============================================================================
--- trunk/plugins/ipod/rb-ipod-static-playlist-source.c	(original)
+++ trunk/plugins/ipod/rb-ipod-static-playlist-source.c	Fri Jun 20 18:11:45 2008
@@ -46,6 +46,7 @@
 			                  GParamSpec *pspec);
 
 static gboolean impl_show_popup (RBSource *source);
+static void impl_delete_thyself (RBSource *source);
 
 
 static void source_name_changed_cb (RBIpodStaticPlaylistSource *source,
@@ -85,6 +86,7 @@
 	object_class->set_property = rb_ipod_static_playlist_source_set_property;
 
 	source_class->impl_show_popup = impl_show_popup;
+	source_class->impl_delete_thyself = impl_delete_thyself;
 
 	g_object_class_install_property (object_class,
 					 PROP_IPOD_SOURCE,
@@ -136,19 +138,24 @@
 static void
 rb_ipod_static_playlist_source_dispose (GObject *object)
 {
-	RBIpodStaticPlaylistSourcePrivate *priv = IPOD_STATIC_PLAYLIST_SOURCE_GET_PRIVATE (object);
+	G_OBJECT_CLASS (rb_ipod_static_playlist_source_parent_class)->dispose (object);
+}
+
+static void
+impl_delete_thyself (RBSource *source)
+{
+	RBIpodStaticPlaylistSourcePrivate *priv = IPOD_STATIC_PLAYLIST_SOURCE_GET_PRIVATE (source);
 
 	if (priv->ipod_source) {
 		g_object_unref (priv->ipod_source);
 		priv->ipod_source = NULL;
 	}
-
 	if (priv->ipod_db) {
 		g_object_unref (priv->ipod_db);
 		priv->ipod_db = NULL;
 	}
-
-	G_OBJECT_CLASS (rb_ipod_static_playlist_source_parent_class)->dispose (object);
+	
+	RB_SOURCE_CLASS (rb_ipod_static_playlist_source_parent_class)->impl_delete_thyself (source);
 }
 
 RBIpodStaticPlaylistSource *



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]