Version: 2.3-GIT (using Devel) OS: MS Windows Reproducible: Always Steps to Reproduce: Export playlist to a file. Actual Results: Amarok stops responding and the bug reported appears Expected Results: To save my playlist to a file of my choice, in my location of choice. OS: WindowsNT (i686) release Windows 7 Compiler: cl.exe
Hi, could you please post the backtrace from the crash? Many developers don't have a windows box where they could test this
Setting status correctly
Closing then :)
Created attachment 51451 [details] The above mentioned patch.
Oops... Did that backwards... Anyways, the bug looks to be caused by a colon in the default file name for new playlists; since NTFS and FAT don't like colon's, this would cause a failure/crash on write. I don't have a windows build, but the attached patch should do the trick (changed the colon to a hyphen).
Modified patch that additionally fixes one more possible problem (in mediadevicecollection).
Created attachment 51453 [details] The modified patch
James, thank you for your patch, but what I don't get is: Dan already fixed that 9 days ago in his installer...
Even if it was fixed in the Windows installer, the bug still appears to be present in a GIT build on a Unix system. If the user's home directory is on an NTFS or FAT partition, then exporting a playlist will fail because the filename contains a colon; this colon still exists in the filename in the most current GIT, and that's what my patch fixes.
Well, then it is not fixed, reopening. Dan, patches need to be applied to the git version, else this will not be consistent.
Confirmed by James.
commit e17ac0484fa8b5c7cfec7c3f79e4a339b451b8ae Author: Mark Kretschmann <kretschmann@kde.org> Date: Mon Sep 27 12:47:57 2010 +0200 commit 141c5b25aaecbd7204878c102285dc47c5455d6a Author: James Duncan <james.t.duncan@gmail.com> Date: Thu Sep 9 00:39:45 2010 -0700 Changed colon to hyphen in format string for filename of playlists. BUG:249376 diff --git a/src/core-impl/collections/mediadevicecollection/playlist/MediaDeviceUserPlaylistProvider.cpp b/src/core-impl/collections/mediadevicecollection/playlist/MediaDeviceUserPlaylistProvider.cpp index e31579f..12d3b46 100644 --- a/src/core-impl/collections/mediadevicecollection/playlist/MediaDeviceUserPlaylistProvider.cpp +++ b/src/core-impl/collections/mediadevicecollection/playlist/MediaDeviceUserPlaylistProvider.cpp @@ -150,7 +150,7 @@ MediaDeviceUserPlaylistProvider::save( const Meta::TrackList &tracks ) filteredTracks << track; return save( filteredTracks, - QDateTime::currentDateTime().toString( "ddd MMMM d yy hh:mm" ) ); + QDateTime::currentDateTime().toString( "ddd MMMM d yy hh-mm" ) ); } Playlists::PlaylistPtr diff --git a/src/playlistmanager/file/PlaylistFileProvider.cpp b/src/playlistmanager/file/PlaylistFileProvider.cpp index 01e2325..9200ec3 100644 --- a/src/playlistmanager/file/PlaylistFileProvider.cpp +++ b/src/playlistmanager/file/PlaylistFileProvider.cpp @@ -206,7 +206,7 @@ PlaylistFileProvider::trackActions( Playlists::PlaylistPtr playlist, int trackIn Playlists::PlaylistPtr PlaylistFileProvider::save( const Meta::TrackList &tracks ) { - return save( tracks, QDateTime::currentDateTime().toString( "ddd MMMM d yy hh:mm") + ".xspf" ); + return save( tracks, QDateTime::currentDateTime().toString( "ddd MMMM d yy hh-mm") + ".xspf" ); } Playlists::PlaylistPtr