aboutsummaryrefslogtreecommitdiffstats
path: root/src/playlist/PlaylistSong.cxx (unfollow)
Commit message (Collapse)AuthorFilesLines
2014-01-23playlist/*: move to playlist/plugins/Max Kellermann1-0/+0
2014-01-21PlaylistSong: modify the given song object in-placeMax Kellermann1-57/+39
Reduce bloat.
2014-01-21PlaylistSong: remove redundant "secure" checkMax Kellermann1-3/+3
This has been verified already in the caller.
2014-01-20PlaylistSong: recurse after applying base_uriMax Kellermann1-3/+3
Allows applying map_to_relative_path() with base_uri.
2014-01-20PlaylistSong: remove the IsInDatabase() checkMax Kellermann1-4/+0
No caller passes a database song to this function, but if he does, this check doesn't make sense.
2014-01-20PlaylistSong: don't map relative URI to absolute pathMax Kellermann1-18/+2
This didn't make sense.
2014-01-20PlaylistSong: pass reference variables internallyMax Kellermann1-18/+17
2014-01-19LightSong: new class to be used by DatabasePlugin callbacksMax Kellermann1-1/+0
Detach the Song class completely from the public API, only to be used by SimpleDatabase and the update thread.
2014-01-17DatabaseSong: new library merging duplicate codeMax Kellermann1-12/+3
2014-01-15DetachedSong: add method Update()Max Kellermann1-5/+4
Don't create an intermediate Song instance when all we want is a DetachedSong.
2014-01-13copyright year 2014Max Kellermann1-1/+1
2014-01-09DetachedSong: fork of struct SongMax Kellermann1-38/+43
From now on, struct Song will be used by the database only, and DetachedSong will be used by everybody else. DetachedSong is easier to use, but Song has lower overhead.
2013-12-15util/Tokenizer, ...: include cleanupMax Kellermann1-2/+0
2013-12-05PlaylistSong.cxx: don't use g_build_filenameDenis Krjuchkov1-4/+6
2013-12-05fs/Traits: split PathTraits type into PathTraitsFS and PathTraitsUTF8Denis Krjuchkov1-3/+3
2013-10-22Playlist*, Queue: use GetDatabase() overload without ErrorMax Kellermann1-1/+1
Don't use IgnoreError() when there's an overload that does not try to give us one.
2013-10-21GetBaseUTF8Max Kellermann1-3/+3
2013-10-19*: use references instead of pointersMax Kellermann1-1/+1
2013-10-17fs/Path: rename to AllocatedPathMax Kellermann1-2/+2
The new class Path only holds a string pointer without being responsible for allocation/deallocation. The FileSystem.hxx library accepts Path arguments instead of AllocatedPath, to avoid forcing callers to allocate another string object.
2013-10-17fs/Path: move definitions to struct PathTraitsMax Kellermann1-2/+3
2013-10-14fs/Path: add method IsAbsolute()Max Kellermann1-2/+2
2013-10-02Playlist*: use nullptr instead of NULLMax Kellermann1-23/+23
2013-09-05Tag, ...: move to libtag.aMax Kellermann1-1/+1
2013-09-04util/Error: new error passing libraryMax Kellermann1-2/+3
Replaces GLib's GError.
2013-07-30tag: convert to C++Max Kellermann1-4/+4
2013-07-28song: convert header to C++Max Kellermann1-27/+24
2013-04-08uri: convert to C++Max Kellermann1-1/+1
2013-01-28Path: convert fs_charset_to_utf8() to static method Path::ToUTF8()Denis Krjuchkov1-9/+6
2013-01-22Path: move to fs subdirectoryDenis Krjuchkov1-1/+1
2013-01-18Path: new class "Path" wraps filesystem path stringsMax Kellermann1-2/+2
2013-01-17path: convert to C++Max Kellermann1-1/+1
2013-01-08song: don't use GLibMax Kellermann1-0/+2
2013-01-07decoder_api.h, ...: add "extern C"Max Kellermann1-1/+1
2013-01-03ls.h: rename to ls.hxxMax Kellermann1-1/+1
2013-01-03database.h: eliminate db_*_song()Max Kellermann1-3/+8
Use the C++ API.
2013-01-02mapper: convert to C++Max Kellermann1-1/+1
2013-01-02playlist_{any,song,queue}: convert to C++Max Kellermann1-2/+5
2012-10-05playlist_song: fix potential charset bug in apply_song_metadata()Max Kellermann1-2/+9
The song's URI must be UTF-8, not filesystem character set.
2012-08-16DatabasePlugin: add method ReturnSong()Max Kellermann1-5/+6
Allow the plugin to allocate the GetSong() return value.
2012-08-16playlist_song: pass const song to _check_load_song()Max Kellermann1-1/+1
2012-08-16playlist_song: fix user-after-free bugMax Kellermann1-1/+3
2012-08-14playlist_song: use map_to_relative_path()Max Kellermann1-4/+4
2012-08-14playlist_song: improve const-correctnessMax Kellermann1-5/+4
2012-08-14playlist_song: move code to playlist_check_load_song()Max Kellermann1-23/+23
2012-02-13mapper: add mapper_get_music_directory()Max Kellermann1-3/+1
Shortcut for map_directory_fs(db_get_root()).
2011-10-06playlist_song: allow references to songs outside the musicdirMax Kellermann1-0/+6
When we have an absolute path that's not inside the music directory, allow loading it anyway, if we're in "secure" mode (i.e. the client is connected via UNIX socket).
2011-10-06playlist_song: fix absolute path support in playlistsJesús Bravo Álvarez1-3/+2
Right now, a playlist with absolute pathnames can only add songs that are in the same the directory of the playlist or under it. If uri is an absolute pathname and base_uri is set, playlist_check_translate_song() will check that base_uri is a prefix of uri, excluding every other song in the music directory outside base_uri. I think in this case base_uri should be completely ignored (and made NULL) and uri should just be checked against music root directory.
2011-05-09playlist_song: fix playlist files in base music directoryMax Kellermann1-0/+7
g_path_get_dirname() returns "." when there is no directory name in the given path. This patch adds a workaround for that.
2011-05-09playlist_song: fix NULL pointer dereferenceMax Kellermann1-1/+1
2011-01-29copyright year 2011Max Kellermann1-1/+1