Version: 2.3-GIT (using Devel)
OS: MS Windows
Steps to Reproduce:
Export playlist to a file.
Amarok stops responding and the bug reported appears
To save my playlist to a file of my choice, in my location of choice.
OS: WindowsNT (i686) release Windows 7
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.
Author: Mark Kretschmann <firstname.lastname@example.org>
Date: Mon Sep 27 12:47:57 2010 +0200
Author: James Duncan <email@example.com>
Date: Thu Sep 9 00:39:45 2010 -0700
Changed colon to hyphen in format string for filename of playlists.
diff --git a/src/core-impl/collections/mediadevicecollection/playlist/MediaDeviceUserPlaylistProvider.cpp b/src/core-impl/collections/mediadevicecollection/playlist/MediaDeviceUserPlaylistProvider.cpp
index e31579f..12d3b46 100644
@@ -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" ) );
diff --git a/src/playlistmanager/file/PlaylistFileProvider.cpp b/src/playlistmanager/file/PlaylistFileProvider.cpp
index 01e2325..9200ec3 100644
@@ -206,7 +206,7 @@ PlaylistFileProvider::trackActions( Playlists::PlaylistPtr playlist, int trackIn
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" );