aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Main: support arbitrary storage pluginsMax Kellermann2014-02-082-0/+15
|
* storage: add struct StoragePlugin and a plugin registryMax Kellermann2014-02-079-6/+177
|
* storage/local: remove utf8 path from constructorMax Kellermann2014-02-074-13/+14
| | | | Build the UTF-8 version of the path automatically in the constructor.
* Main: move storage initialization to InitStorage()Max Kellermann2014-02-071-20/+27
|
* Mapper: obtain music directory from StorageMax Kellermann2014-02-073-31/+19
| | | | Eliminate duplicate variable.
* Main: check the music directoryMax Kellermann2014-02-072-3/+4
| | | | Move call from Mapper.cxx.
* Mapper: move check_directory() to the filesystem libraryMax Kellermann2014-02-074-44/+100
|
* Main: chop separators from music directoryMax Kellermann2014-02-072-1/+3
| | | | Move call from Mapper.cxx.
* Mapper: remove unused functionsMax Kellermann2014-02-072-65/+1
|
* OtherCommands: use Storage::MapUTF8() instead of Mapper.cxxMax Kellermann2014-02-071-4/+6
|
* Main: create Storage instance in glue_mapper_init()Max Kellermann2014-02-071-5/+12
| | | | Don't use the obsolete Mapper library to create it.
* Main: allow playlist directory without music directoryMax Kellermann2014-02-072-4/+2
|
* NEWS: mention default soundcloud API keyMax Kellermann2014-02-071-0/+1
| | | | Missing from commit 48c96bba
* InotifyUpdate: use class Storage instead of Mapper.cxxMax Kellermann2014-02-073-5/+11
|
* InotifyUpdate: use the root name instead of mapper_get_music_directory_fs()Max Kellermann2014-02-071-1/+1
| | | | | The root WatchDirectory instance already contains the music directory, and we don't need to fetch it again.
* InotifyUpdate: move functions into the WatchDirectory classMax Kellermann2014-02-071-13/+18
|
* InotifyUpdate: remove unnecessary #ifdefsMax Kellermann2014-02-071-18/+0
|
* PlaylistMapper: use class Storage instead of Mapper.cxxMax Kellermann2014-02-077-12/+64
|
* Playlist{Any,Registry,Mapper}: move functions to PlaylistStream.cxxMax Kellermann2014-02-077-86/+145
|
* PlaylistSong: include cleanupMax Kellermann2014-02-071-2/+0
|
* playlist/CloseSongEnumerator: new wrapper classMax Kellermann2014-02-0711-62/+111
| | | | | Simplifies a lot of code, because we don't need to return both the SongEnumerator and the InputStream.
* StoragePlugin: add method MapToRelativeUTF8()Max Kellermann2014-02-0710-55/+60
| | | | Replaces map_to_relative_path() from Mapper.cxx.
* fs/Traits: add function Relative()Max Kellermann2014-02-074-23/+61
| | | | Move code from Path::RelativeFS() and make it generic.
* DecoderPlugin: pass Path instance to file_decode() and scan_file()Max Kellermann2014-02-0717-82/+103
|
* Mapper: remove unused function map_song_fs()Max Kellermann2014-02-072-86/+0
|
* DecoderThread: use only DetachedSong::GetRealURI()Max Kellermann2014-02-071-4/+2
| | | | | Don't use the mapper - all DetachedSong instances we get have already been mapped.
* DecoderThread: pass Path object around for local song filesMax Kellermann2014-02-071-21/+27
|
* SongUpdate: pass Storage to UpdateFileInArchive()Max Kellermann2014-02-072-5/+6
|
* PlaylistSave: use DetachedSong::GetRealURI() in playlist_print_song()Max Kellermann2014-02-071-12/+7
| | | | | The DetachedSong instance already knows its own absolute path, and there is no need to ask the mapper again.
* FileCommands: support remove database filesMax Kellermann2014-02-071-6/+13
|
* FileCommands: use Storage::MapFS() instead of map_uri_fs()Max Kellermann2014-02-071-5/+11
|
* FileCommands: move code to read_file_comments()Max Kellermann2014-02-071-15/+22
|
* fixed possible format_context not closed in ffmpeg_decodegeneticdrift2014-02-071-1/+4
|
* storage/local: hide the class declarationsMax Kellermann2014-02-073-49/+63
| | | | Hide inside CreateLocalStorage().
* Mapper: move map_song_detach() to db/DatabaseSong.cxxMax Kellermann2014-02-0717-55/+97
| | | | Use Storage::MapUTF8() internally, don't use global variables.
* Mapper: convert IsInDatabase() check to assertion in map_song_detach()Max Kellermann2014-02-071-1/+2
|
* Merge tag 'release-0.18.8'Max Kellermann2014-02-073-3/+52
|\
| * release v0.18.8Max Kellermann2014-02-071-1/+1
| |
| * NEWS: fix 0.18.7 release yearMax Kellermann2014-02-071-1/+1
| |
| * doc/user: document the RoarAudio output pluginMax Kellermann2014-02-062-0/+47
| |
| * configure.ac: link the Vorbis encoder with libvorbisMax Kellermann2014-02-062-1/+3
| | | | | | | | | | Since the encoder plugin uses a libvorbis function (and not only libvorbisenc functions), we need to link with libvorbis explicitly.
* | pcm/FallbackResampler: add missing ConstBuffer<T>::ToVoid() callMax Kellermann2014-02-061-1/+1
| |
* | fixed leaked LocalDirectoryReader *const reader in UpdateWalk::UpdateDirectorygeneticdrift2014-02-061-3/+3
| |
* | */smbclient: protect all libsmbclient calls with a mutexMax Kellermann2014-02-067-1/+86
| | | | | | | | | | libsmbclient is not thread-safe nor reentrant. We must protect all function calls with a global mutex, unfortunately.
* | neighbor/smbclient: move smbclient_domain to lib/smbclient/Domain.cxxMax Kellermann2014-02-064-2/+53
| |
* | Makefile.am: add variable SMBCLIENT_SOURCESMax Kellermann2014-02-061-3/+6
| |
* | mixer/Plugin: pass AudioOutput reference to init()Max Kellermann2014-02-0618-143/+81
| | | | | | | | Passing a void pointer is unsafe.
* | MixerPlugin: convert function pointers to Mixer virtual methodsMax Kellermann2014-02-0611-298/+200
| |
* | Mixer: delete the implicit copy constructorMax Kellermann2014-02-061-0/+2
| |
* | Mixer: make the constructor "explicit"Max Kellermann2014-02-061-1/+1
| |