- 02 Nov, 2014 8 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
Many years ago, FAAD had a serious ABI bug: the NeAACDecInit() prototype in its header declared the "samplerate" parameter to be "unsigned long *", but internally, the function assumed it was "uint32_t *" instead. On 32 bit machines, that was no difference, but on 64 bit, this left one portion of the return value uninitialized; and worse, on big-endian, the wrong word was filled. This bug had to be worked around in MPD (commit 9c4e97a6). A few months later, the bug was fixed in the FAAD CVS in commit 1.117 on file libfaad/decoder.c; the commit message was: "Use public headers internally to prevent duplicate declarations" The commit message was too brief at best; the problem was not duplicate declarations, but a prototype mismatch. No mention of the bug fix in the ChangeLog. The MPD project never learned about this bug fix, and so MPD would always pass a "uin32_t *" dressed up as a "unsigned long *". Nearly 6 years later, it's about time to fix this second ABI problem. Let's kill the workaround!
-
Steven OBrien authored
-
Max Kellermann authored
-
Max Kellermann authored
A mutex acts as a memory barrier, and thus "volatile" is not necessary.
-
Max Kellermann authored
Fixes buffer overflow bug.
-
Max Kellermann authored
-
- 26 Sep, 2014 9 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
There's always the "PCM" decoder plugin, which was never checked by configure.ac.
-
Max Kellermann authored
MPD can easily be used as a database provider for the proxy database plugin. In that case, it needs only one "null" output, and no real output plugin.
-
Max Kellermann authored
-
Max Kellermann authored
Allow building a smaller MPD binary for people who don't need DSD.
-
Max Kellermann authored
The name "cue" was listed twice in "mpd --version".
-
- 24 Sep, 2014 2 commits
-
-
Max Kellermann authored
EXIT_SUCCESS and EXIT_FAILURE are defined in stdlib.h, not unistd.h. D'oh!
-
Max Kellermann authored
-
- 18 Sep, 2014 2 commits
-
-
Max Kellermann authored
Fixes MixRamp breakage.
-
Andrzej Rybczak authored
-
- 13 Sep, 2014 2 commits
-
-
Max Kellermann authored
On NetBSD, PTHREAD_MUTEX_INITIALIZER and PTHREAD_COND_INITIALIZER are not compatible with C++11 "constexpr" (see Mantis ticket 0004110). As a workaround, don't ues "constexpr", and use the functions pthread_mutex_init(), pthread_mutex_destroy(), pthread_cond_init() and pthread_cond_destroy() instead. This adds some runtime overhead, but is portable to POSIX implementations that have awkward initializer macros.
-
Max Kellermann authored
-
- 11 Sep, 2014 1 commit
-
-
Max Kellermann authored
-
- 09 Sep, 2014 2 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
-
- 07 Sep, 2014 3 commits
-
-
Max Kellermann authored
That attribute was uninitialized before, which could crash libavformat. See Debian bug 760669
-
Max Kellermann authored
-
Max Kellermann authored
See code comment. Fixes assertion failure in decoder_command_finished().
-
- 06 Sep, 2014 1 commit
-
-
Max Kellermann authored
Log call was added to the wrong branch. Fixes regression by commit ca1a1149
-
- 04 Sep, 2014 2 commits
-
-
Max Kellermann authored
Casting std::numeric_limits<unsigned>::max() to "long" leads to an overflow if sizeof(unsigned)==sizeof(long), and the result will be -1. This happens on some 32 bit architectures, for example ARM and WIN32. Workaround: use std::numeric_limits<int>::max(), which is the largest signed integer. Since sizeof(long)>=sizeof(int), this will never overflow. Fixes Mantis ticket 0004080.
-
Max Kellermann authored
-
- 03 Sep, 2014 1 commit
-
-
Max Kellermann authored
-
- 31 Aug, 2014 6 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
The "current" attribute is a "song order", not a "song position". This is usually the same - except in random mode. Fixes Mantis ticket 0004073.
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Joachim Fasting authored
Fix incorrect description of the "songs" field and add missing "albums" field. Signed-off-by: Joachim Fasting <joachifm@fastmail.fm>
-
- 29 Aug, 2014 1 commit
-
-
Max Kellermann authored
The unit of gme_info_t::length is milliseconds, not centiseconds.
-