Commit Graph

8564 Commits

Author SHA1 Message Date
Max Kellermann 2b21312b36 util/StringUtil: add StringEndsWith()
Replaces g_str_has_suffix().
2014-02-18 09:18:42 +01:00
Max Kellermann 3a818b6d45 SongFilter: disable g_utf8_casefold() without GLib
Temporary hack for the experimental no-GLib build.
2014-02-18 09:18:42 +01:00
Max Kellermann 1709ab6810 fs/TextFile: use custom allocation instead of GString 2014-02-17 23:04:10 +01:00
Max Kellermann ce925ba56f fs/Charset: disable if GLib is disabled 2014-02-17 22:48:26 +01:00
Max Kellermann 4ad14f6a2c TagId3: use xstrdup() instead of g_strdup() 2014-02-17 22:42:54 +01:00
Max Kellermann 579e48edbb util/StringUtil: add function Strip()
Replaces g_strstrip().
2014-02-17 22:37:43 +01:00
Max Kellermann 6a08f2281a TagString: disable UTF-8 validation if GLib is disabled 2014-02-17 22:33:10 +01:00
Max Kellermann 91729437a0 Main: initialize Database before Storage 2014-02-17 22:14:00 +01:00
Max Kellermann 3af7af0b8f Main: move code to InitDatabaseAndStorage() 2014-02-17 22:13:53 +01:00
Max Kellermann 1ddd00433e db/Configured: disallow both "db_file" and "database"
This is misconfiguration, and MPD should abort.
2014-02-17 22:13:53 +01:00
Max Kellermann de160bb2d1 Main: move code to db/Configured.cxx 2014-02-17 22:13:53 +01:00
Max Kellermann ff62b6742b Main: check if database exists before attempting to close it
Fixes nullptr dereference.
2014-02-17 22:13:53 +01:00
Max Kellermann 6da0af94df db/DatabaseSimple: remove obsolete header 2014-02-17 20:44:03 +01:00
Max Kellermann df9667a497 StorageCommands: add command "unmount" 2014-02-12 23:48:08 +01:00
Max Kellermann e3e2ad4ae5 CompositeStorage: fix tree walk in Directory::Unmount() 2014-02-12 23:48:08 +01:00
Max Kellermann ace4ba3171 StorageCommands: emit IDLE_MOUNT on successful "mount"
Add the new idle event to Idle.hxx/Idle.cxx.
2014-02-12 23:06:47 +01:00
Max Kellermann 0935ae330a StorageCommands: add command "listmounts" 2014-02-12 21:47:59 +01:00
Max Kellermann 9e02b13ab3 systemd: add socket activation files 2014-02-12 21:22:36 +01:00
Max Kellermann 5a486a940c systemd: assign real-time budget 2014-02-12 21:00:53 +01:00
Max Kellermann d05ae4b444 util/HugeAllocator: relicense to BSD-2 2014-02-10 13:32:50 +01:00
Max Kellermann 73b0610d89 PlaylistSong: copy the "real" URI
Playback with some decoder plugins was broken because the Queue's
DetachedSong instances did not have the "real" URI (the mapped path).
2014-02-10 11:00:49 +01:00
Max Kellermann 73aec9ce63 StorageCommands: expose the "mount" command 2014-02-09 11:07:08 +01:00
Max Kellermann a9fefcf600 Main: wrap the Storage instance in CompositeStorage 2014-02-09 11:07:08 +01:00
Max Kellermann 59ce67e2e5 CompositeStorage: new Storage implementation
This is the backend for the upcoming "mount" command.
2014-02-09 10:47:29 +01:00
Max Kellermann 2182209a8a db/update/Walk: disable FindAncestorLoop() if device/inode==0 2014-02-09 10:47:29 +01:00
Max Kellermann e29a8b3a9c db/update/Walk: document FindAncestorLoop() 2014-02-09 10:46:39 +01:00
Max Kellermann ace3f37af4 db/update/Walk: rename find_inode_ancestor() to FindAncestorLoop() 2014-02-09 10:46:39 +01:00
Max Kellermann 37b6899660 Main: move code to storage/Configured.cxx 2014-02-09 08:09:47 +01:00
Max Kellermann 570b12ec13 Idle: error out when unrecognized idle event was specified
Implements the error checks missing in commit 0bad8406
2014-02-09 08:07:48 +01:00
Max Kellermann ac286ef734 OtherCommands: remove unnecessary nullptr check 2014-02-09 08:07:43 +01:00
Max Kellermann b3663b5da2 storage/nfs: new storage plugin 2014-02-08 14:24:47 +01:00
Max Kellermann d761d8b168 input/nfs: move nfs_domain to lib/nfs/Domain.cxx 2014-02-08 14:24:47 +01:00
Max Kellermann fe7c6fee34 ArchivePlugin: pass Path to open() 2014-02-08 13:25:44 +01:00
Max Kellermann 9906daeca7 ArchivePlugin: rename struct archive_plugin to ArchivePlugin 2014-02-08 13:22:13 +01:00
Max Kellermann 5fb54095d2 doc/user: document storage plugins 2014-02-08 00:09:53 +01:00
Max Kellermann 3fdc678aae Main: support arbitrary storage plugins 2014-02-08 00:04:29 +01:00
Max Kellermann a0088ccce1 storage: add struct StoragePlugin and a plugin registry 2014-02-07 23:46:15 +01:00
Max Kellermann be081929f4 storage/local: remove utf8 path from constructor
Build the UTF-8 version of the path automatically in the constructor.
2014-02-07 23:41:06 +01:00
Max Kellermann b0b086d473 Main: move storage initialization to InitStorage() 2014-02-07 23:37:39 +01:00
Max Kellermann 6798af52b6 Mapper: obtain music directory from Storage
Eliminate duplicate variable.
2014-02-07 23:34:29 +01:00
Max Kellermann 4d5ebafa6d Main: check the music directory
Move call from Mapper.cxx.
2014-02-07 23:29:20 +01:00
Max Kellermann ec8873b178 Mapper: move check_directory() to the filesystem library 2014-02-07 23:25:47 +01:00
Max Kellermann c45f205593 Main: chop separators from music directory
Move call from Mapper.cxx.
2014-02-07 23:13:24 +01:00
Max Kellermann 027b2063ba Mapper: remove unused functions 2014-02-07 23:03:25 +01:00
Max Kellermann b531c4c2fe OtherCommands: use Storage::MapUTF8() instead of Mapper.cxx 2014-02-07 22:58:21 +01:00
Max Kellermann 4b010df99e Main: create Storage instance in glue_mapper_init()
Don't use the obsolete Mapper library to create it.
2014-02-07 22:54:18 +01:00
Max Kellermann 5e4dd4be9c Main: allow playlist directory without music directory 2014-02-07 22:39:17 +01:00
Max Kellermann 04d5896c1c NEWS: mention default soundcloud API key
Missing from commit 48c96bba
2014-02-07 22:38:04 +01:00
Max Kellermann f947274626 InotifyUpdate: use class Storage instead of Mapper.cxx 2014-02-07 22:30:40 +01:00
Max Kellermann f6939f71a7 InotifyUpdate: use the root name instead of mapper_get_music_directory_fs()
The root WatchDirectory instance already contains the music directory,
and we don't need to fetch it again.
2014-02-07 22:30:01 +01:00