From: Todd Z. <tm...@po...> - 2006-12-22 16:36:34
|
io, Saturnalia! I created a playlist file last night and wanted to ensure that only tracks with a local entry were used. So I selected Local and created the list without error. But on inspection of the playlist I saw that every filename was referencing the tracks on my ipod. A closer look reveals that the problem is that file_export.c's ExportPlaylistFileSourceW does not match the ordering of FileSource defined in file.h. Back in June, SOURCE_PREFER_IPOD was inserted as the second entry in FileSource but ExportPlaylistFileSourceW wasn't updated. This means that choosing Local actually ends up preferring tracks on the ipod instead of the local disc. I played a little and the simplest fix was to move SOURCE_PREFER_IPOD to the end of FileSource. I'm not sure if that has any negative consequences though. I was going to add a Prefer iPod toggle to the create playlist file dialog, but I just couldn't imagine a use scenario where that would really be desired. Thoughts? Here's the simple diff: Index: src/file.h =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvsroot/gtkpod/gtkpod/src/file.h,v retrieving revision 1.55 diff -u -p -r1.55 file.h --- src/file.h 1 Sep 2006 13:18:42 -0000 1.55 +++ src/file.h 22 Dec 2006 16:24:32 -0000 @@ -61,9 +61,9 @@ typedef enum typedef enum { SOURCE_PREFER_LOCAL =3D 0, - SOURCE_PREFER_IPOD, SOURCE_LOCAL, - SOURCE_IPOD + SOURCE_IPOD, + SOURCE_PREFER_IPOD } FileSource; =20 --=20 Todd OpenPGP -> KeyID: 0xBEAF0CE3 | URL: www.pobox.com/~tmz/pgp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D If a government were put in charge of the Sahara Desert, within five years they'd have a shortage of sand. -- Dr. Milton Friedman |
From: Jorg S. <Jor...@gm...> - 2007-02-10 12:14:34
|
Well spotted! It took me a while to understand what was going on. I'll submit your patch along with a note to FileSource... Cheers, JCS. Todd Zullinger wrote: > io, Saturnalia! > > I created a playlist file last night and wanted to ensure that only > tracks with a local entry were used. So I selected Local and created > the list without error. But on inspection of the playlist I saw that > every filename was referencing the tracks on my ipod. > > A closer look reveals that the problem is that file_export.c's > ExportPlaylistFileSourceW does not match the ordering of FileSource > defined in file.h. Back in June, SOURCE_PREFER_IPOD was inserted as > the second entry in FileSource but ExportPlaylistFileSourceW wasn't > updated. > > This means that choosing Local actually ends up preferring tracks on > the ipod instead of the local disc. I played a little and the > simplest fix was to move SOURCE_PREFER_IPOD to the end of FileSource. > I'm not sure if that has any negative consequences though. I was > going to add a Prefer iPod toggle to the create playlist file dialog, > but I just couldn't imagine a use scenario where that would really be > desired. > > Thoughts? > > Here's the simple diff: > > Index: src/file.h > =================================================================== > RCS file: /cvsroot/gtkpod/gtkpod/src/file.h,v > retrieving revision 1.55 > diff -u -p -r1.55 file.h > --- src/file.h 1 Sep 2006 13:18:42 -0000 1.55 > +++ src/file.h 22 Dec 2006 16:24:32 -0000 > @@ -61,9 +61,9 @@ typedef enum > typedef enum > { > SOURCE_PREFER_LOCAL = 0, > - SOURCE_PREFER_IPOD, > SOURCE_LOCAL, > - SOURCE_IPOD > + SOURCE_IPOD, > + SOURCE_PREFER_IPOD > } FileSource; |