[Rhythmbox-devel] ipod shuffle



Hi,

I have an ipod shuffle (1 GB model) and found, like others in bug
#386662, that rhythmbox would add the tracks to the device but they
wouldn't be playable upon unplugging.  From what I can tell, it appears
that the shuffle needs both iTunesDB and iTunesSD files writing; as far
as I can tell, rhythmbox only writes iTunesDB.  The attached patch is
one way of fixing this but I have no idea if it's suitable - perhaps
someone else with more knowledge of rhythbox internals could comment?

Thanks,

Jonty.
--- plugins/ipod/rb-ipod-source-orig.c	2007-03-21 17:50:25.000000000 -0700
+++ plugins/ipod/rb-ipod-source.c	2007-03-21 17:56:31.000000000 -0700
@@ -902,7 +902,7 @@
 	}
 
 	if (sel != NULL) {
-		itdb_write (priv->ipod_db, NULL);
+		itdb_schedule_save (priv->ipod_db);
 	}
 
   	g_object_unref (db);
@@ -920,7 +920,14 @@
         * have a timeout firing every 5 seconds and saving the db if it's
         * dirty
         */
-       itdb_write (db, NULL);
+        const Itdb_IpodInfo *info = itdb_device_get_ipod_info(db->device);
+        
+        itdb_write(db, NULL);
+
+	if (info->ipod_generation == ITDB_IPOD_GENERATION_UNKNOWN ||
+	    info->ipod_model == ITDB_IPOD_MODEL_SHUFFLE) {
+                itdb_shuffle_write(db, NULL);
+        }
 }
 
 #ifdef ENABLE_IPOD_WRITING


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