aboutsummaryrefslogtreecommitdiffstats
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
* mixer/alsa: fix deadlockMax Kellermann2013-12-151-1/+13
| | | | | | This deadlock was a regression by commit 8e38b4f8. Since we currently can't resolve this, let's revert the commit, and add a GLib specific workaround for the build failure.
* mixer/alsa: use BlockingCall() instead of EventLoop::AddCall()Max Kellermann2013-12-131-1/+2
| | | | | This is safer, and works without epoll(). Fixes a build failure with uClibc, which does not support epoll().
* SongUpdate: accept files without metadatamobidyc2013-12-101-2/+1
| | | | | If the file was recognized by a decoder plugin, accept it - don't require metadata.
* TagFile: add return value API documentationMax Kellermann2013-12-101-0/+3
|
* output/osx: fix build failureLukas Stabe2013-12-101-3/+3
|
* output/openal: check __APPLE__ instead of HAVE_OSXLukas Stabe2013-12-021-1/+1
| | | | | | | | | | On OSX, the configure-flag --enable-osx is used to enable the unsupported osx output. It sets the HAVE_OSX preprocessor define. src/output/OpenALOutputPlugin.cxx uses this define to determine wether it is building on OSX, and imports different headers (which have nothing to do with the osx output) depending on wether or not it is set.
* decoder/ffmpeg: use IgnoreError instead of local Error instanceMax Kellermann2013-11-281-5/+2
|
* input/cdio_paranoia: support libcdio-paranoia 0.90Gaetan Bisson2013-11-271-0/+5
|
* decoder/{dsf,dsdiff}: eliminate useless assignmentsMax Kellermann2013-11-232-5/+4
|
* archive/iso9660: eliminate useless assignmentsMax Kellermann2013-11-231-4/+2
|
* input/curl: work around stream resume bug (fixed in libcurl 7.32.0)Max Kellermann2013-11-231-0/+17
|
* input/curl: add global variable "curl_version"Max Kellermann2013-11-231-0/+7
|
* input/curl: dump version numberMax Kellermann2013-11-231-0/+8
|
* PcmResampleLibsamplerate: clip 24 bit dataMax Kellermann2013-11-223-2/+47
| | | | | | Using pcm_resample_lsr_32() for 24 bit samples works, but may cause 24 bit overflows. This commit makes 24 bit a special case with explicit clipping.
* PcmResample: un-inline Resample24()Max Kellermann2013-11-222-7/+13
|
* PcmUtils: add function PcmClampN()Max Kellermann2013-11-221-0/+12
|
* db/proxy: implement method GetUpdateStamp()Max Kellermann2013-11-221-2/+7
|
* DatabasePlugin: add method GetUpdateStamp()Max Kellermann2013-11-226-26/+26
| | | | | | Refactor SimpleDatabase::GetLastModified() to be generic for all plugins. Remove the SimpleDatabase assumption from db_stats_print(), allowing it to be implemented by all database plugins.
* Stats: print db statistics only if db is availableMax Kellermann2013-11-221-6/+19
| | | | Fixes crash on "stats" in certain configurations.
* Stats: print more unsigned integersMax Kellermann2013-11-221-6/+6
|
* Stats: auto-reload statistics with proxy pluginMax Kellermann2013-11-221-0/+7
|
* Stats: use struct DatabaseStatsMax Kellermann2013-11-222-25/+4
| | | | Eliminate redundant declaration.
* Stats: move the GTimer variable out of struct statsMax Kellermann2013-11-222-6/+4
|
* Stats: don't export the global variable "stats"Max Kellermann2013-11-222-3/+1
| | | | Unused outside of Stats.cxx.
* Stats: print db_update as unsigned integerMax Kellermann2013-11-221-2/+2
|
* Mapper: _get_music_directory_utf8() may return nullptrMax Kellermann2013-11-222-2/+5
| | | | | | 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.
* system/ByteOrder: testing for endianness in a more general wayFlorian Schlichting2013-11-211-1/+11
| | | | | Fixes build tests on ia64 and mipsel by testing for endianness in a more general / portable way.
* util/ByteOrder: add commentsMax Kellermann2013-11-211-0/+2
|
* util/ByteOrder: indent the preprocessor directivesMax Kellermann2013-11-211-4/+4
| | | | Improve readability.
* system/fd_util.h: avoid symbol conflict with statically linked libmpdclientDenis Krjuchkov2013-11-181-0/+5
|
* decoder/OggFind.cxx: include stdio.h for SEEK_END definitionDenis Krjuchkov2013-11-181-0/+2
|
* util/RefCount: no "constexpr" with libc++Max Kellermann2013-11-111-1/+6
| | | | Not supported by libc++.
* util/LazyRandomEngine: make min()/max() static+constexprMax Kellermann2013-11-111-4/+4
| | | | Required for building with libc++.
* output/httpd: don't use incomplete template argument with libc++Max Kellermann2013-11-111-0/+5
|
* filter/route, ...: add missing stdlib.h includesMax Kellermann2013-11-113-0/+3
|
* DespotifyUtils: add missing stdio.h includeMax Kellermann2013-11-111-0/+2
|
* DecoderAPI: add missing math.h includeMax Kellermann2013-11-111-0/+1
|
* decoder/dsdiff: fix byte order bugJurgen Kramer2013-11-102-2/+13
|
* DecoderThread: add missing <functional> includeMax Kellermann2013-11-091-0/+2
|
* DecoderAPI: log without holding mutexMax Kellermann2013-11-081-2/+2
|
* PlayerThread: fix stuck MPD after song change (0.18.2 regression)Max Kellermann2013-11-081-4/+8
| | | | | | | | | | | | | Commit 77c63511 caused MPD to become stuck right after a song change. The problem was that at some point, the MusicBuffer became full, and the DecoderThread working on the next song waits for the PlayerThread. However, the PlayerThread was stuck in a loop of g_usleep() calls, and never bothered to tell the DecoderThread that the MusicBuffer is not full anymore. This bug is very old, but its chance to occur went from nearly 0% to nearly 100%. The fix is to wake up the DecoderThread before waiting for it. As a side effect, I replaced the g_usleep() call with a Cond::Wait() call.
* DecoderInternal: simplify need_chunks()Max Kellermann2013-11-081-11/+4
| | | | | Remove the "do_wait" parameter which is always true. Check only command==NONE and merge the "return" statements.
* DecoderInternal: don't wake up player in need_chunksMax Kellermann2013-11-081-1/+0
| | | | Nothing of interest happens here. No need to wake up the player.
* input/cdio_paranoia: add setting "default_byte_order"Max Kellermann2013-11-071-2/+26
| | | | | | Allows big-endian users to configure the fallback byte order to little-endian. Without this setting, MPD assumes native byte order if the CD drive can't decide.
* AvahiPoll: don't close the dbus socketMax Kellermann2013-11-071-0/+4
| | | | Avoid closing it twice.
* input/curl: unregister removed sockets from epollMax Kellermann2013-11-071-1/+9
| | | | Fixes a crash bug. See code comment.
* OutputControl: reduce the number of OutputThread wakeupsMax Kellermann2013-11-064-2/+30
| | | | | Wake up the OutputThread only if it hasn't already been woken up and if it isn't already in the playback loop.
* PlayerThread: reduce the number of DecoderThread wakeupsMax Kellermann2013-11-061-2/+14
| | | | | | | After the number of decoded chunks has fallen below the threshold, the PlayerThread woke up the DecoderThread over and over. This commit adds a boolean flag that avoids these duplicate wakeups, and thus reduces the number of system calls.
* DecoderControl: reduce the number of PlayerThread wakeupsMax Kellermann2013-11-063-4/+26
| | | | | Wake up the PlayerThread only if it is really waiting for the decoder. This greatly reduces the number of system calls in the DecoderThread.
* DecoderInternal: lock DecoderControl in _flush_chunk()Max Kellermann2013-11-062-0/+4
| | | | Must hold the Mutex to signal the Cond object safely.