Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-12-24 | input/curl: remove unnecessary InvalidateSockets() call | Max Kellermann | |
Like fe598e7d30d82794560df053623a16fee8d3fb9c | |||
2019-12-16 | input: add missing boost meson dependency | Jacob Vosmaer | |
2019-08-06 | input/cdio_paranoia: drop support for libcdio-paranoia older than 10.2+0.93+1 | Max Kellermann | |
Version 10.2+0.93+1 was released five years ago in 2014 and is the first version to feature cdio_cddap_free_messages(). There is no way to check the libcdio-paranoia version at compile time, so let's just remove support for older versions instead of attempting to fix the cdio_cddap_free_messages() check at build time. Closes https://github.com/MusicPlayerDaemon/MPD/issues/613 | |||
2019-06-26 | input/tidal: deprecated because Tidal has changed the protocol | Max Kellermann | |
See https://github.com/MusicPlayerDaemon/MPD/issues/545 | |||
2019-05-17 | input/buffered: check error in IsAvailable() | Max Kellermann | |
2019-05-16 | input/buffered: rethrow read_error in Check() | Max Kellermann | |
2019-05-16 | input/buffered: wake up client thread on seek error | Max Kellermann | |
2019-05-16 | input/buffered: fix deadlock bug | Max Kellermann | |
2019-04-23 | input/smbclient: wrap in MaybeBufferedInputStream | Max Kellermann | |
This enables the input buffer for remote files and caches file contents in MPD. Closes https://github.com/MusicPlayerDaemon/MPD/issues/376 | |||
2019-03-29 | input/curl: use std::throw_with_nested() instead of logging the exception | Max Kellermann | |
Let the caller decide what to do with the original exception. | |||
2019-03-29 | input/smbclient: use std::throw_with_nested() to construct PluginUnavailable | Max Kellermann | |
Preserve the original exception. | |||
2019-02-05 | input/Init: add RAII class | Max Kellermann | |
2019-01-22 | input/buffered: implement seeking to end of file | Max Kellermann | |
Previously, a seek to the end of the file would cause an assertion failure in SparseMap::Check() because the given offset was invalid. Closes #453 | |||
2019-01-21 | input/CdioParanoia: C++ wrappers for libcdio types | Max Kellermann | |
2019-01-21 | input/CdioParanoia: use the new function names | Max Kellermann | |
2019-01-21 | input/CdioParanoia: use cdio_cddap_free_messages() on recent library versions | Max Kellermann | |
2019-01-21 | input/CdioParanoia: remove useless cdda_messages() call | Max Kellermann | |
2019-01-21 | input/CdioParanoia: detect libcdio version at compile time | Max Kellermann | |
libcdio_paranoia was split from libcdio in version 90, and at the same time, the header was moved from cdio/paranoia.h to cdio/paranoia/paranoia.h. We can easily detect this version at compile time which is faster than configure time. | |||
2019-01-20 | input/CdioParanoia: add `const` to pointer | Max Kellermann | |
2019-01-20 | input/CdioParanoia: make variables more local | Max Kellermann | |
2018-12-09 | Add boost_dep in subdir meson.build files | Jacob Vosmaer | |
2018-11-19 | check.h: remove obsolete header | Max Kellermann | |
Since we switched from autotools to Meson in commit 94592c14062d5afc9482d11baa401648082022c0, we don't need to include `config.h` early to properly enable large file support. Meson passes the required macros on the compiler command line instead of defining them in `config.h`. This means we can include `config.h` at any time, whenever we want to check its macros, and there are no ordering constraints. | |||
2018-11-11 | {output,mixer}/alsa: use snd_pcm_poll_descriptors_revents() | Max Kellermann | |
This call was missing, causing very high CPU usage when the ALSA output plugin was used with dmix. Closes #391 | |||
2018-11-11 | lib/alsa/NonBlock: move the functions into a class managing the state | Max Kellermann | |
2018-10-31 | *: copyright year 2018 | Max Kellermann | |
2018-10-29 | Merge branch 'v0.20.x' | Max Kellermann | |
2018-10-29 | input/CdioParanoia: parse_cdio_uri() returns CdioUri | Max Kellermann | |
The `bool` return value isn't used anymore, so we can just return the parsed object instead of passing it as an output parameter. | |||
2018-10-29 | input/CdioParanoia: rename struct cdio_uri to CdioUri | Max Kellermann | |
2018-10-29 | input/CdioParanoia: use StringAfterPrefixIgnoreCase() | Max Kellermann | |
2018-10-29 | configure.ac: add `-funwind-tables` to work around clang bug | Max Kellermann | |
Replaces the workaround from commit 751fff07fb28720156d0d1dc833a2b6534959a0d which fixed only one of many crash locations. See: https://github.com/MusicPlayerDaemon/MPD/issues/373 https://github.com/android-ndk/ndk/issues/831 https://bugs.llvm.org/show_bug.cgi?id=32611 | |||
2018-10-25 | input/Registry: add missing include | Max Kellermann | |
2018-10-25 | decoder/Thread: reimplement HasRemoteTagScanner() using the InputPlugin list | Max Kellermann | |
2018-10-24 | input/Plugin: add attribute `prefixes` | Max Kellermann | |
2018-10-23 | Merge tag 'v0.20.22' | Max Kellermann | |
release v0.20.22 | |||
2018-10-23 | input/Error: work around clang bug leading to crash | Max Kellermann | |
Closes #373 | |||
2018-10-16 | input/Error: add `noexcept` | Max Kellermann | |
2018-10-14 | build with Meson instead of autotools | Max Kellermann | |
So long, autotools! This is my last MPD related project to migrate away from it. It has its strengths, but also very obvious weaknesses and weirdnesses. Today, many of its quirks are not needed anymore, and are cumbersome and slow. Now welcome our new Meson overlords! | |||
2018-10-07 | Remove some extraneous leftover debugging | Andrew Basterfield | |
2018-10-06 | Set cdrive speed hint for cdparanoia | Andrew Basterfield | |
2018-08-20 | Compiler.h: move to util/ | Max Kellermann | |
2018-08-17 | Merge tag 'v0.20.21' | Max Kellermann | |
release v0.20.21 | |||
2018-08-17 | android: raise minSdkVersion to 21 | Max Kellermann | |
The number of MPD installs on Android < 5.0 is negligible, and that API version introduces lots of useful features for MPD. | |||
2018-08-02 | Merge branch 'v0.20.x' | Max Kellermann | |
2018-08-02 | case-insensitive URI scheme comparison | Max Kellermann | |
Required according to RFC 3986: > An implementation should accept uppercase letters as equivalent to > lowercase in scheme names Closes #330 | |||
2018-07-26 | input/qobuz: initialize the libgcrypt library | Max Kellermann | |
2018-07-26 | lib/gcrypt/MD5: return a StringBuffer | Max Kellermann | |
2018-07-25 | input/buffered: fix bogus offset after Seek() | Max Kellermann | |
Instead of copying the offset from our `input`, copy the requested offset to our `offset` attribute. By the time Seek() finishes, our input's offset may have advanced already, having read some more data, thus giving us a bogus offset. This fixes spurious decoder failues (closes #320). | |||
2018-07-18 | fs/Path: add method ToUTF8Throw() | Max Kellermann | |
2018-07-18 | config/Migrate: library to migrate deprecated settings | Max Kellermann | |
2018-07-17 | input/Init: use struct ConfigData | Max Kellermann | |