diff -urN slimserver.old/Plugins/iTunes.pm slimserver/Plugins/iTunes.pm --- slimserver.old/Plugins/iTunes.pm 2005-11-14 19:12:08.000000000 -0500 +++ slimserver/Plugins/iTunes.pm 2005-11-17 21:46:06.000000000 -0500 @@ -1226,8 +1226,7 @@ 'Groups' => { 'Default' => { - 'PrefOrder' => ['itunesscaninterval','ignoredisableditunestracks', - 'itunes_library_autolocate','itunes_library_xml_path','itunes_library_music_path'] + 'PrefOrder' => ['itunesscaninterval','ignoredisableditunestracks'] }, 'iTunesPlaylistFormat' => { diff -urN slimserver.old/Slim/DataStores/DBI/DataModel.pm slimserver/Slim/DataStores/DBI/DataModel.pm --- slimserver.old/Slim/DataStores/DBI/DataModel.pm 2005-11-14 19:12:32.000000000 -0500 +++ slimserver/Slim/DataStores/DBI/DataModel.pm 2005-11-17 21:56:34.000000000 -0500 @@ -30,9 +30,6 @@ { my $class = __PACKAGE__; - # The Live Object Index causes far more trouble than it's worth. - Class::DBI->use_object_index(0); - # Create a low-memory & cpu usage call for DB cleanup $class->set_sql('retrieveAllOnlyIds' => 'SELECT id FROM __TABLE__'); } diff -urN slimserver.old/Slim/Player/Source.pm slimserver/Slim/Player/Source.pm --- slimserver.old/Slim/Player/Source.pm 2005-11-14 19:12:33.000000000 -0500 +++ slimserver/Slim/Player/Source.pm 2005-11-17 21:47:41.000000000 -0500 @@ -1528,7 +1528,9 @@ return undef; } - if (!$size || !$duration) { + # This is an upstream problem with how they implemented the logic: + # if (!$size || !$duration) { + if (((defined($size)) && (!$size)) || ((defined($duration)) && (!$duration))) { $::d_source && msg("openSong: not bothering opening file with zero size or duration\n"); errorOpening($client); diff -urN slimserver.old/Slim/Utils/Unicode.pm slimserver/Slim/Utils/Unicode.pm --- slimserver.old/Slim/Utils/Unicode.pm 2005-11-14 19:12:31.000000000 -0500 +++ slimserver/Slim/Utils/Unicode.pm 2005-11-17 21:47:57.000000000 -0500 @@ -23,6 +23,7 @@ if ($] > 5.007) { require Encode; + require Encode::Guess; require File::BOM; } diff -urN slimserver.old/Slim/Web/Setup.pm slimserver/Slim/Web/Setup.pm --- slimserver.old/Slim/Web/Setup.pm 2005-11-14 19:12:34.000000000 -0500 +++ slimserver/Slim/Web/Setup.pm 2005-11-17 21:49:15.000000000 -0500 @@ -1248,7 +1248,7 @@ }, 'Default' => { - 'PrefOrder' => ['audiodir', 'playlistdir', undef], + 'PrefOrder' => [undef], }, 'Rescan' => { @@ -1440,7 +1440,7 @@ ,'Groups' => { 'Default' => { 'PrefOrder' => ['skin','itemsPerPage','refreshRate','coverArt','coverThumb', - 'artfolder','thumbSize','includeNoArt'] + 'thumbSize','includeNoArt'] } } ,'Prefs' => { diff -urN slimserver.old/slimserver.pl slimserver/slimserver.pl --- slimserver.old/slimserver.pl 2005-11-14 19:12:38.000000000 -0500 +++ slimserver/slimserver.pl 2005-11-17 21:49:50.000000000 -0500 @@ -973,10 +973,6 @@ # name after we fork. So don't do it on Mac. The System Preferences # start/stop still works. - if (Slim::Utils::OSDetect::OS() ne 'mac') { - $0 = "slimserver"; - } - if (!setsid) { die "Can't start a new session: $!"; } if (!open STDERR, '>&STDOUT') { die "Can't dup stdout: $!"; } }