Avuton Olrich
0aee49bdf8
all: Update copyright header.
...
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.
2009-03-13 11:51:55 -07:00
Max Kellermann
ae87abae59
use GLIB_CHECK_VERSION()
...
Use GLIB_CHECK_VERSION() instead of manually checking
GLIB_MAJOR_VERSION, ...
2009-03-01 00:37:22 +01:00
Max Kellermann
c38dd9e8d8
mapper: ignore duplicate slashes in playlists
...
When there are duplicate slashes in the song paths, eliminate them;
example:
/var/lib/mpd/music//foo.mp3
becomes:
/var/lib/mpd/music/foo.mp3
The slash is only detected at the border between the music_directory
and the local part.
2009-01-30 13:51:18 +01:00
Max Kellermann
e3d4fa6946
mapper: remove trailing slashes from music_directory
...
When the user configures a music_directory with a trailing slash, it
may break playlist loading, because MPD expects a double slash. Chop
off the trailing slash.
2009-01-30 13:50:24 +01:00
Max Kellermann
2c45224be7
mapper: added dot to PLAYLIST_FILE_SUFFIX
...
Some code will be a little bit simpler if the dot is part of the
string literal.
2009-01-25 13:43:57 +01:00
Max Kellermann
70c6cc33f0
conf: removed parseConfigFilePath()
...
Use config_get_path() instead in mapper.c.
2009-01-18 18:59:10 +01:00
Max Kellermann
1f0dfb4407
mapper: make the music_directory optional
...
Without a music_directory, MPD is an excellent streaming client.
2009-01-18 16:56:07 +01:00
Max Kellermann
9933144de7
mapper: make the playlist directory optional
2009-01-18 16:15:45 +01:00
Max Kellermann
4d472c265e
conf: no CamelCase, part I
...
Renamed functions, types, variables.
2009-01-17 20:23:27 +01:00
Max Kellermann
2151e2ea53
mapper: check if g_get_user_special_dir() is supported by GLib
...
g_get_user_special_dir() was introduced with GLib 2.14. Don't use it
in older versions.
2009-01-15 09:16:20 +01:00
Max Kellermann
1c2f24dfc6
mapper: use directory_is_root() instead of isRootDirectory()
2009-01-08 21:29:30 +01:00
Max Kellermann
5ed5aa99ac
path: allocate buffer in fs_charset conversion functions
...
Don't use fixed static buffers. GLib allocates a new string for us
anyway, let's just return this one instead of copying it.
2009-01-08 21:20:46 +01:00
Stepan Pologov
7a9a1e3e31
mapper: re-add character set conversion in map_uri_fs()
2009-01-08 17:29:08 +01:00
Max Kellermann
97ae4a499a
mapper: don't allocate music_dir twice
2009-01-07 23:53:28 +01:00
Max Kellermann
923d2c966f
mapper: allocate the result of map_fs_to_utf8()
2009-01-04 18:59:47 +01:00
Max Kellermann
daf7c3db5a
mapper: allocate the result of map_directory_child_fs(), map_song_fs()
...
Don't use fixed stack buffers.
2009-01-02 10:48:55 +01:00
Max Kellermann
72255d580e
mapper: allocate the result of map_uri_fs(), map_directory_fs()
...
Don't use fixed stack buffers.
2009-01-02 10:48:11 +01:00
Max Kellermann
80fa9183e4
mapper: allocate playlist path from heap
...
Don't pass a static buffer to map_spl_utf8_to_fs().
2009-01-01 19:17:44 +01:00
Max Kellermann
886ed1b225
mapper: fall back to XDG music directory
...
If no music_directory is configured, fall back to the XDG music
directory, determined by
g_get_user_special_dir(G_USER_DIRECTORY_MUSIC).
2009-01-01 19:07:38 +01:00
Max Kellermann
95b3430f52
removed os_compat.h
...
Only include headers which are really needed. os_compat.h aimed to
make MPD easily portable, but was never actually made portable.
2008-12-29 17:28:32 +01:00
Max Kellermann
1bd3cde062
playlist: fix stored playlist modifications with absolute paths
...
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.
2008-12-24 22:04:24 +01:00
Konstantin Sobolev
23b097593e
mapper: use the utf8_to_fs_charset() result
...
In map_directory_child_fs(), the result of utf8_to_fs_charset() was
never used, because it passed the unmodified "name" parameter to
pfx_dir().
2008-11-20 18:10:18 +01:00
Max Kellermann
f291876772
mapper: check for "." and ".."
...
Make map_directory_child_fs() refuse the names "." and "..". This is
currently the interface where an attacker may inject a manipulated
path (through the "update" command).
2008-10-31 16:48:58 +01:00
Max Kellermann
d8e877e335
path: moved playlist_dir to mapper.c
...
Added the function map_spl_utf8_to_fs() which replaces
utf8_to_fs_playlist_path().
2008-10-31 16:47:14 +01:00
Max Kellermann
ef54271619
mapper: use g_warning() for logging
...
g_error() is fatal by default. Use g_warning() for non-fatal
initialization errors.
2008-10-31 16:46:46 +01:00
Max Kellermann
57f5e8731d
mapper: don't return database path with leading slash
...
Due to an off-by-one bug in map_fs_to_utf8(), the function returned
database paths with a leading slash.
2008-10-19 00:05:39 +02:00
Max Kellermann
8c0060fae4
playlist: added support for adding songs not in the music database
...
Clients which have authenticated via unix socket may add local files
to the MPD playlist, provided that they own the file.
2008-10-15 22:35:13 +02:00
Max Kellermann
7366191f0d
mapper: moved musicDir initialization from path.c
...
Moved the musicDir variable and its initialization code from path.c to
mapper.c.
2008-10-15 19:36:33 +02:00
Max Kellermann
5b71d5f6f7
mapper: new song-to-filesystem mapper library
...
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.
2008-10-14 11:10:49 +02:00