aboutsummaryrefslogtreecommitdiffstats
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
* util/ConstBuffer: wrap assert() in NDEBUG checkMax Kellermann2014-06-261-0/+4
| | | | Fixes build failure because assert.h was not included.
* util/ConstBuffer: add method Contains()Max Kellermann2014-06-231-0/+10
|
* Merge branch 'v0.18.x'Max Kellermann2014-06-235-1/+63
|\
| * db/proxy: fall back to recursive walk on old libmpdclient/MPDMax Kellermann2014-06-235-1/+63
| | | | | | | | | | Error message was 'too few arguments for "find"' because the "base" constraint was not supported, and no other constraints remained.
| * db/proxy: use mpd_song_get_{start,end}() only with libmpdclient >= 2.3Max Kellermann2014-06-231-0/+5
| |
* | db/proxy: use mpd_song_get_{start,end}() only with libmpdclient >= 2.3Max Kellermann2014-06-231-0/+5
| |
* | input/async: use IsEOF() instead of !open for "ready" checkMax Kellermann2014-06-211-2/+3
| | | | | | | | | | Checking "!open" did not work with the NFS plugin because that plugin does not close the file automatically, unlike CURL.
* | Revert "AsyncInputStream: fix assertion failure in AppendToBuffer()"Max Kellermann2014-06-211-6/+4
| | | | | | | | | | | | | | This reverts commit 966c4244cbe0de174df1e72e917078269ec9dbb9. The commit was bad, because the bug was really in NfsInputStream::DoRead(); see previous commit.
* | input/nfs: never read more than space available in bufferMax Kellermann2014-06-211-2/+4
| | | | | | | | Avoids off-by-one bug and obsoletes the bug fix in commit 966c4244
* | db/proxy: initialize LightSong::real_uriMax Kellermann2014-06-211-0/+1
| | | | | | | | Fixes potential crash.
* | lib/nfs/Manager: gcc 4.7 compatibility hackMax Kellermann2014-06-173-0/+32
| | | | | | | | std::map::emplace() is only available from gcc 4.8 on.
* | input/nfs: use the asynchronous libnfs APIMax Kellermann2014-06-1712-84/+1536
| | | | | | | | More robust and cancellable.
* | AsyncInputStream: fix assertion failure in AppendToBuffer()Max Kellermann2014-06-171-4/+6
| |
* | AsyncInputStream: reset "paused" when seekingMax Kellermann2014-06-171-0/+1
| | | | | | | | May cause assertion failure.
* | input/curl: hold mutex while writing to postponed_errorMax Kellermann2014-06-173-3/+16
| |
* | input/AsyncInputStream: add method IsBufferFull()Max Kellermann2014-06-171-0/+4
| |
* | command: make argc unsignedMax Kellermann2014-06-1625-206/+205
| |
* | Directory: eliminate attribute "have_stat"Max Kellermann2014-06-163-4/+3
| | | | | | | | Check for 0 in "device" and "inode" instead.
* | TagPool: move code to tag_value_slot_p()Max Kellermann2014-06-161-9/+18
| |
* | TagPool: convert macro to constexprMax Kellermann2014-06-161-1/+1
| |
* | db/simple: use class boost::intrusive::listMax Kellermann2014-06-1611-946/+151
| | | | | | | | Remove the C list_head library and use type-safe C++ instead.
* | ClientList: use class boost::intrusive::listMax Kellermann2014-06-114-29/+25
| | | | | | | | Eliminate extra allocations for the std::list node instances.
* | ClientList: add typedef ListMax Kellermann2014-06-101-3/+5
| |
* | zeroconf/Avahi: call dbus_shutdown() during shutdownMax Kellermann2014-06-101-0/+4
| | | | | | | | Make valgrind happy.
* | Main: delete the Storage instance on shutdownMax Kellermann2014-06-101-0/+2
| |
* | lib/icu/Init: call u_init() and u_cleanup()Max Kellermann2014-06-101-0/+14
| | | | | | | | Make valgrind happy.
* | lib/icu: add IcuInit(), IcuFinish()Max Kellermann2014-06-104-11/+81
| |
* | thread/Util: relicense to BSD-2Max Kellermann2014-05-311-15/+25
| |
* | input/async: add offset/size comparison to IsEOF()Max Kellermann2014-05-241-1/+2
| |
* | input/curl: move code to AsyncInputStreamMax Kellermann2014-05-243-211/+409
| | | | | | | | | | New base class for other InputStream implementations that run in the I/O thread.
* | input/curl: call SetReady() only if not yet readyMax Kellermann2014-05-241-1/+2
| | | | | | Fixes assertion failure.
* | input/curl: include cleanupMax Kellermann2014-05-241-7/+0
| |
* | InputStream: make Seek() always absoluteMax Kellermann2014-05-2227-124/+181
| | | | | | | | | | Remove the "whence" parameter that is not actually necessary, and only complicates the InputStream implementations.
* | decoder/vorbis: make VorbisInputStream::input_stream a referenceMax Kellermann2014-05-221-6/+6
| |
* | decoder/vorbis: add VorbisInputStream constructorMax Kellermann2014-05-221-14/+13
| |
* | decoder/vorbis: rename struct vorbis_input_stream to VorbisInputStreamMax Kellermann2014-05-221-7/+7
| |
* | decoder/vorbis: add "restrict" to pointers in vorbis_interleave()Max Kellermann2014-05-221-2/+2
| | | | | | | | Allows more compiler optimizations.
* | decoder/vorbis: log libvorbis version on startupMax Kellermann2014-05-221-1/+11
| |
* | decoder/wavpack: move code to WavpackInput::ReadBytes()Max Kellermann2014-05-221-6/+12
| |
* | decoder/wavpack: convert WavpackInput attributes to referencesMax Kellermann2014-05-221-12/+12
| |
* | decoder/wavpack: move wavpack_input_init into struct WavpackInputMax Kellermann2014-05-221-16/+7
| |
* | decoder/wavpack: wavpack_open_wvc() returns WavpackInput*Max Kellermann2014-05-221-14/+12
| |
* | DecoderAPI: add function decoder_open_uri()Max Kellermann2014-05-223-18/+43
| | | | | | Move and refactor code from the Wavpack decoder plugin.
* | decoder/wavpack: rename struct wavpack_input to WavpackInputMax Kellermann2014-05-221-8/+8
| |
* | input/curl: relock mutex in error pathsMax Kellermann2014-05-211-2/+7
| |
* | input/curl: pass remaining size to CircularBuffer::Append()Max Kellermann2014-05-211-1/+1
| |
* | input/curl: move code to IcyInputStreamMax Kellermann2014-05-215-86/+218
| |
* | input/rewind: move code to class ProxyInputStreamMax Kellermann2014-05-213-59/+175
| |
* | input/InputStream: move Open() to Open.cxxMax Kellermann2014-05-212-50/+72
| | | | | | | | Allow compiling test programs with only selected plugins.
* | input/rewind: include cleanupMax Kellermann2014-05-211-4/+2
| |