aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | decoder/audiofile: fix bit rate calculationMax Kellermann2014-11-102-1/+2
| |
* | test/FakeDecoderAPI: dump bit rateMax Kellermann2014-11-101-0/+6
| |
* | input/curl: ignore ResponseBoundary() while seekingMax Kellermann2014-11-102-0/+6
| | | | | | | | | | | | While seeking, metadata must not be updated. ResponseBoundary() was added in MPD 0.19.1, but I forgot to add the IsSeeking() check there. This caused the "seekable" flag to reset.
* | tag/Set: do AlbumArtist/Artist fallback only if AlbumArtist is not disabledMax Kellermann2014-11-082-0/+4
| | | | | | | | | | | | | | | | | | | | On "list albumartist", songs that have no AlbumArtist tag will use the Artist tag. However, if AlbumArtist is disabled via "metadata_to_use", the TagBuilder::AddItem() call is ignored, and PrintUniqueTag() attempts to print a nullptr string. This commit fixes the problem by attempting the fallback only if AlbumArtist is not disabled.
* | db/Count: include cleanupMax Kellermann2014-11-081-1/+1
| |
* | decoder/ffmpeg: support opusMax Kellermann2014-11-072-1/+3
| |
* | db/upnp: fix valgrind warningMax Kellermann2014-11-071-0/+1
| |
* | lib/upnp/ContentDirectoryService: swap uri_apply_base() parametersMax Kellermann2014-11-072-1/+3
| | | | | | | | | | | | When uri_apply_base() was moved from db/upnp/Util.cpp to util/UriUtil.cpp, the parameter order was changed, however without swapping the parameters in the ContentDirectoryService constructor.
* | input/AsyncInputStream: set Error when seeking unseekableMax Kellermann2014-11-072-1/+6
| | | | | | | | Fixes crash in the "audiofile" decoder while logging the seek error.
* | input/Open: expose input_domainMax Kellermann2014-11-074-2/+53
| |
* | configure.ac: prepare for 0.19.3Max Kellermann2014-11-042-2/+4
| |
* | release v0.19.2Max Kellermann2014-11-021-1/+1
| |
* | Merge tag 'v0.18.17' into v0.19.xMax Kellermann2014-11-021-1/+1
|\|
| * release v0.18.17Max Kellermann2014-11-021-1/+1
| |
* | input/curl: forget Content-Length (and more) after redirectMax Kellermann2014-11-022-0/+28
| | | | | | | | Fixes playback of redirected streams.
* | AsyncInputStream: add method ClearTag()Max Kellermann2014-11-021-0/+4
| |
* | InputStream: add method ClearMimeType()Max Kellermann2014-11-021-0/+4
| |
* | Merge branch 'v0.18.x' into v0.19.xMax Kellermann2014-11-022-1/+10
|\|
| * input/curl: fix curl_easy_setopt() parameter typesMax Kellermann2014-11-021-4/+4
| |
| * Decoder, Playlist: ignore URI query string for plugin detectionMax Kellermann2014-11-023-6/+9
| | | | | | | | Use the new uri_get_suffix() overload that removes the query string.
| * util/UriUtil: add uri_get_suffix() overload that ignores query stringMax Kellermann2014-11-023-0/+47
| |
| * PlaylistFile: don't allow empty playlist nameMax Kellermann2014-11-022-0/+5
| |
| * playlist/m3u: recognize the file suffix ".m3u8"Max Kellermann2014-11-023-1/+5
| |
| * decoder/faad: remove workaround for ancient libfaad2 ABI bugMax Kellermann2014-11-023-40/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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!
| * decoder/ffmpeg: recognize MIME type audio/aacpSteven OBrien2014-11-022-0/+3
| |
| * configure.ac: show DSD in resultMax Kellermann2014-11-021-0/+1
| |
| * output/roar: remove unnecessary "volatile" keywordMax Kellermann2014-11-021-1/+1
| | | | | | | | | | A mutex acts as a memory barrier, and thus "volatile" is not necessary.
| * TagString: use g_strndup() for unterminated stringMax Kellermann2014-11-021-1/+1
| | | | | | | | Fixes buffer overflow bug.
| * configure.ac: prepare for 0.18.17Max Kellermann2014-11-022-2/+4
| |
* | lib/upnp/Discovery: add missing stdlib.h includeMax Kellermann2014-11-021-0/+1
| |
* | input/curl: fix curl_easy_setopt() parameter typesMax Kellermann2014-11-011-3/+3
| |
* | Decoder, Playlist: ignore URI query string for plugin detectionMax Kellermann2014-11-014-5/+11
| | | | | | | | Use the new uri_get_suffix() overload that removes the query string.
* | util/UriUtil: add uri_get_suffix() overload that ignores query stringMax Kellermann2014-11-013-0/+47
| |
* | Main: run the OS X native event loop after forkingNanoTech2014-10-311-0/+27
| |
* | Revert "Main: run the OS X native event loop"NanoTech2014-10-314-51/+0
| | | | | | | | | | | | | | | | This reverts commit f0be48ff90503d9ffa5b295fd4454eec753950ee (except for the NEWS entry). If libdispatch (GCD) is used before forking, it can't safely be used again after forking.
* | PlaylistFile: don't allow empty playlist nameMax Kellermann2014-10-312-0/+5
| |
* | decoder/mad: fix negative replay gain valuesMax Kellermann2014-10-282-1/+2
| | | | | | | | Negating an unsigned integer does not work.
* | TextInputStream: don't ignore unterminated last lineMax Kellermann2014-10-282-4/+17
| |
* | playlist/m3u: recognize the file suffix ".m3u8"Max Kellermann2014-10-263-0/+4
| |
* | OutputThread: fall back to PCM if given DSD sample rate is not supportedMax Kellermann2014-10-252-0/+31
| | | | | | | | | | Works around the "PCM conversion from f to dsd is not implemented" error message that prevents DSD playback.
* | decoder/faad: remove workaround for ancient libfaad2 ABI bugMax Kellermann2014-10-254-50/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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!
* | configure.ac: update VERSION_REVISIONMax Kellermann2014-10-251-1/+1
| |
* | decoder/ffmpeg: recognize MIME type audio/aacpSteven OBrien2014-10-252-0/+3
| |
* | configure.ac: add storage plugin section to resultMax Kellermann2014-10-251-0/+4
| |
* | configure.ac: show DSD in resultMax Kellermann2014-10-251-0/+1
| |
* | configure.ac: require xmlto for --enable-documentationMax Kellermann2014-10-252-11/+4
| |
* | test/test_archive: don't use GLibMax Kellermann2014-10-251-8/+6
| |
* | fs/Charset: work around clang's -Wunused-const-variableMax Kellermann2014-10-251-1/+2
| | | | | | | | MPD_PATH_MAX_UTF8 is only used by GLib-specific code currently.
* | configure.ac: auto-disable plugins that require GLib when --disable-glib is usedMax Kellermann2014-10-242-0/+21
| |
* | configure.ac: improve database dependency checksMax Kellermann2014-10-242-2/+15
| | | | | | | | | | Abort if --enable-libmpdclient or --enable-upnp are used with --disable-database, instead of ignoring the mismatch silently.