| Commit message (Collapse) | Author | Files | Lines |
|
Prepare to make this a new plugin API, for example to use a SMB share
for the music_directory.
|
|
|
|
Detach the Song class completely from the public API, only to be used
by SimpleDatabase and the update thread.
|
|
Make the DetachedSong(Song) conversion constructor private. Everybody
should use map_song_detach() which will take over more
responsibilities soon.
|
|
|
|
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.
|
|
|
|
|
|
If no music_directory is configured, return nullptr instead of an
empty string. This fixes a crash when db_file is configured without
music_directory.
|
|
|
|
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.
|
|
|
|
Avoid the conversion to an allocated char*, let the caller decide.
|
|
Replaces GLib's GError.
|
|
Migrate all callers to use Path directly, instead of doing the
conversion in each caller.
|
|
|
|
required
|
|
|
|
|
|
|
|
|
|
Duplicate the music_dir variable: one encoded in UTF-8, and another
one using the configured filesystem character set. This fixes an
ancient MPD bug.
|
|
Remove GLib dependency from some headers.
|
|
|
|
Shortcut for map_directory_fs(db_get_root()).
|
|
|
|
|
|
If a song with an absolute path points inside the music directory,
print only the relative part. This happens when partial songs from a
playlist file were loaded.
|
|
|
|
This fixes an inconsistency in the stored playlist subsystem: when
obtaining the list of playlists (listplaylist, listplaylistinfo), the
file names in the playlist directory are converted to UTF-8 (according
to filesystem_charset), but when saving or loading playlists, the
filesystem_charset setting was ignored.
|
|
Added another glue function in main().
|
|
This updates the copyright header to all be the same, which is
pretty much an update of where to mail request for a copy of the GPL
and the years of the MPD project. This also puts all committers under
'The Music Player Project' umbrella. These entries should go
individually in the AUTHORS file, for consistancy.
|
|
Some code will be a little bit simpler if the dot is part of the
string literal.
|
|
Without a music_directory, MPD is an excellent streaming client.
|
|
|
|
Don't use fixed stack buffers.
|
|
Don't use fixed stack buffers.
|
|
Don't pass a static buffer to map_spl_utf8_to_fs().
|
|
When save_absolute_paths_in_playlists was enabled in mpd.conf, MPD
broke all playlists when manipulated using the "playlistdelete"
command. The reason was that map_directory_child_fs() was used, which
doesn't accept slashes in the file name. Use the new map_uri_fs()
function instead.
|
|
Added the function map_spl_utf8_to_fs() which replaces
utf8_to_fs_playlist_path().
|
|
"LOG_H" is a macro which is also used by ffmpeg/log.h. This is
ffmpeg's fault, because short macros should be reserved for
applications, but since it's always a good idea to choose prefixed
macro names, even for applications, we are going to do that in MPD.
|
|
Moved the musicDir variable and its initialization code from path.c to
mapper.c.
|
|
The mapper library maps directory and song objects to file system
paths. With this central library, the code mixture in path.c should
be cleaned up, and we will be able to add neat features like aliasing.
|