- 16 May, 2017 2 commits
-
-
Max Kellermann authored
We can remove those C++11 and C++14 kludges because we require GCC 4.9 now.
-
Max Kellermann authored
Fixes build failure on OS X, closes #44. With the other plugins, that's not critical, because those use the AudioOutputWrapper, which hides this problem.
-
- 15 May, 2017 1 commit
-
-
Max Kellermann authored
See commit 71f0ed8b
-
- 08 May, 2017 2 commits
-
-
Max Kellermann authored
The "pure" and "const" attributes are not so well-defined, and a recent clang version implements an optimization which pushes the definition's boundary beyond what I believed it was. clang now assumes that functions declared "pure" cannot throw exceptions, even if they lack the "noexcept" specification. When compiled with this new clang version, MPD will crash randomly if an exception happens to get thrown by such as "pure" function (https://github.com/MusicPlayerDaemon/MPD/issues/41). This commit removes all such misplaced "pure" and "const" attributes, closing #41.
-
Max Kellermann authored
This eliminates some overhead, because the compiler doesn't need to consider these functions throwing.
-
- 28 Apr, 2017 1 commit
-
-
Max Kellermann authored
The AudioOutput struct (which is exposed to all plugins) should not be aware that it's being controlled by another thread.
-
- 21 Apr, 2017 1 commit
-
-
Bart Nagel authored
See https://picard.musicbrainz.org/docs/mappings/ This tag is useful when the user would like all releases of the same album to be sorted next to each other.
-
- 18 Apr, 2017 1 commit
-
-
Bart Nagel authored
-
- 29 Mar, 2017 2 commits
-
-
Max Kellermann authored
See code comment. Bug was reported against MPD, but it's really an alsa-lib bug. https://bugs.musicpd.org/view.php?id=4662
-
Max Kellermann authored
-
- 20 Feb, 2017 1 commit
-
-
François Revol authored
Some missing bits when converted to C++ exceptions...
-
- 19 Feb, 2017 14 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
Fixes a potential deadlock introduced by commit 94528735
-
Max Kellermann authored
-
Max Kellermann authored
Using variable-size objects is not worth the trouble here. Let's drop this and use existing and simpler code.
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
Fixes another buffer overflow: if the stream has a very long title or URL, resulting in a metadata string of more than 2 kB, icy_string[0] is a negative value, which gets casted to size_t - ouch! https://bugs.musicpd.org/view.php?id=4652
-
Max Kellermann authored
Fixes a buffer overflow due to the bad formula rounding the buffer size up. At the same time, remove the "+1" from the meta_length calculation, which takes the padding into account and at the same time implements proper rounding.
-
Max Kellermann authored
Why did this cast exist??
-
- 15 Feb, 2017 1 commit
-
-
Max Kellermann authored
During UnlockActivate() while the mutex is unlocked, the IOThread can set a new error condition, and will never again wake up the OutputThread. This race condition can cause a deadlock in the OutputThread.
-
- 10 Feb, 2017 2 commits
-
-
Max Kellermann authored
.. and not the input data. Regression from commit b1c7649e (integer underflow). https://bugs.musicpd.org/view.php?id=4639
-
Max Kellermann authored
-
- 09 Feb, 2017 1 commit
-
-
Max Kellermann authored
Use SND_PCM_NONBLOCK, and perform all snd_pcm_writei() calls in the IOThread. Use a lockless queue to copy data from the OutputThread to the IOThread. This rather major change aims to improve MPD's internal latency. All waits are now under MPD's control, instead of blocking inside libasound2. As a side effect, an output's filter is now decoupled from the actual device I/O, which solves a major latency problem with the conversion filter on slow CPUs and small period buffers. See: https://bugs.musicpd.org/view.php?id=3900
-
- 08 Feb, 2017 1 commit
-
-
Max Kellermann authored
-
- 01 Feb, 2017 1 commit
-
-
Max Kellermann authored
Same as in commit e02d8ad8, but this time for the sndio plugin which can be emulated by libroar.
-
- 25 Jan, 2017 8 commits
-
-
Max Kellermann authored
Eliminate dependency on io_thread_get().
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
- 24 Jan, 2017 1 commit
-
-
Max Kellermann authored
-