mpd/src
Max Kellermann 4ad525d939 output/alsa: implement Interrupt()
This allows canceling the blocking method LockWaitWriteAvailable(),
and thus allows breaking free of misbehaving ALSA drivers, avoiding a
MPD lockup.

Closes https://github.com/MusicPlayerDaemon/MPD/issues/966
2020-10-02 10:35:18 +02:00
..
AudioCompress audio_{parser,config}: convert to C++ 2013-01-30 21:47:12 +01:00
android release v0.21.22 2020-04-02 18:02:10 +02:00
apple apple/AudioUnit: add AudioUnitSetPropertyT() 2020-07-02 14:59:40 +02:00
archive release v0.21.26 2020-09-21 15:20:02 +02:00
client use std chr functions 2020-05-30 13:36:53 +02:00
command fix double promotions 2020-09-21 09:13:51 +02:00
config use std chr functions 2020-05-30 13:36:53 +02:00
db db/upnp: store UPnPDirContent in local variable 2020-09-23 15:25:39 +02:00
decoder clang-tidy: use auto 2020-09-26 21:33:35 -07:00
encoder fix double promotions 2020-09-21 09:13:51 +02:00
event event/Loop: integrate io_uring support 2020-05-05 17:13:14 +02:00
filter remove gcc_unused 2020-03-16 00:08:21 -07:00
fs fs/AllocatedPath: add method GetSuffix() 2020-06-10 21:00:41 +02:00
haiku Haiku: add version info to the resources like win32 does 2019-03-29 14:33:27 +01:00
input input/uring: safe cancellation 2020-09-23 11:07:26 +02:00
io clang-tidy: use auto 2020-09-26 21:33:35 -07:00
java java/Object: rename class Object to GlobalObject 2020-03-25 20:07:15 +01:00
lib remove GCC5 hacks 2020-09-16 18:10:27 -07:00
mixer fix double promotions 2020-09-21 09:13:51 +02:00
neighbor Merge branch 'v0.21.x' into master 2020-09-04 18:35:21 +02:00
net net/SocketError: work around -Wvla by defining a constexpr variable 2020-09-22 20:40:53 +02:00
output output/alsa: implement Interrupt() 2020-10-02 10:35:18 +02:00
pcm Merge branch 'v0.21.x' into master 2020-09-21 11:37:50 +02:00
player LogLevel: rename DEFAULT to NOTICE 2020-09-23 14:22:33 +02:00
playlist use std chr functions 2020-05-30 13:36:53 +02:00
protocol replace stdint.h with cstdint 2020-03-12 19:04:39 -07:00
queue fix double promotions 2020-09-21 09:13:51 +02:00
song Merge branch 'stl' of git://github.com/neheb/MPD 2020-04-08 23:03:44 +02:00
sticker replace assert.h with cassert 2020-03-12 15:25:38 -07:00
storage clang-tidy: remove pointless std::move 2020-09-26 21:34:25 -07:00
system system/FileDescriptor: add method FullWrite() 2020-09-07 20:13:43 +02:00
tag system/ByteOrder: move to util/ 2020-07-01 17:49:57 +02:00
thread remove some more extra semicolons 2020-05-27 15:36:53 +02:00
time time/ISO8601: use <cstdlib> 2020-07-23 16:26:18 +02:00
unix *: use nullptr instead of NULL 2020-09-07 20:08:27 +02:00
util Merge branch 'v0.21.x' into master 2020-09-21 11:37:50 +02:00
win32 win32: add COM helper classes 2020-05-30 22:21:03 +08:00
zeroconf LogLevel: rename DEFAULT to NOTICE 2020-09-23 14:22:33 +02:00
BulkEdit.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
Chrono.hxx remove extra semicolon 2020-03-16 00:13:20 -07:00
CommandLine.cxx decoder/plugin: add method protocols() 2020-09-21 14:53:18 +02:00
CommandLine.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
GitVersion.cxx GitVersion: make GIT_VERSION const 2020-05-05 15:12:40 +02:00
GitVersion.hxx GitVersion: make GIT_VERSION const 2020-05-05 15:12:40 +02:00
IcyMetaDataParser.cxx replace assert.h with cassert 2020-03-12 15:25:38 -07:00
IcyMetaDataParser.hxx replace stddef.h with cstddef 2020-03-12 19:04:38 -07:00
Idle.cxx replace assert.h with cassert 2020-03-12 15:25:38 -07:00
Idle.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
IdleFlags.cxx replace assert.h with cassert 2020-03-12 15:25:38 -07:00
IdleFlags.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
Instance.cxx remove gcc_unused 2020-03-16 00:08:21 -07:00
Instance.hxx Instance: flush input cache on SIGHUP 2020-02-17 15:23:05 +01:00
Listen.cxx copyright year 2020 2020-01-18 19:23:49 +01:00
Listen.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
LocateUri.cxx storage/Interface: convert URI parameters to std::string_view 2020-04-03 19:45:10 +02:00
LocateUri.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
Log.cxx LogLevel: rename DEFAULT to NOTICE 2020-09-23 14:22:33 +02:00
Log.hxx LogLevel: rename DEFAULT to NOTICE 2020-09-23 14:22:33 +02:00
LogBackend.cxx LogLevel: rename DEFAULT to NOTICE 2020-09-23 14:22:33 +02:00
LogBackend.hxx Log: make LogLevel the first parameter 2020-07-06 21:07:26 +02:00
LogInit.cxx LogLevel: rename DEFAULT to NOTICE 2020-09-23 14:22:33 +02:00
LogInit.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
LogLevel.hxx LogLevel: rename DEFAULT to NOTICE 2020-09-23 14:22:33 +02:00
LogV.hxx Log: make LogLevel the first parameter 2020-07-06 21:07:26 +02:00
Main.cxx remove clocale test 2020-09-29 14:51:17 -07:00
Main.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
Mapper.cxx fs/AllocatedPath: pass std::string_view to FromUTF8() 2020-04-03 16:21:41 +02:00
Mapper.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
MixRampInfo.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
MusicBuffer.cxx replace assert.h with cassert 2020-03-12 15:25:38 -07:00
MusicBuffer.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
MusicChunk.cxx replace assert.h with cassert 2020-03-12 15:25:38 -07:00
MusicChunk.hxx replace stdint.h with cstdint 2020-03-12 19:04:39 -07:00
MusicChunkPtr.cxx copyright year 2020 2020-01-18 19:23:49 +01:00
MusicChunkPtr.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
MusicPipe.cxx replace assert.h with cassert 2020-03-12 15:25:38 -07:00
MusicPipe.hxx AudioFormat: move to pcm/ 2020-01-18 20:24:59 +01:00
Partition.cxx output/multiple: add "client" field, replacing the "client" parameter 2020-01-20 14:51:08 +01:00
Partition.hxx Partition: add a local idle_monitor 2020-01-20 13:33:01 +01:00
Permission.cxx *: use nullptr instead of NULL 2020-09-07 20:08:27 +02:00
Permission.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
PlaylistDatabase.cxx use std chr functions 2020-05-30 13:36:53 +02:00
PlaylistDatabase.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
PlaylistError.cxx copyright year 2020 2020-01-18 19:23:49 +01:00
PlaylistError.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
PlaylistFile.cxx use std chr functions 2020-05-30 13:36:53 +02:00
PlaylistFile.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
PlaylistPrint.cxx copyright year 2020 2020-01-18 19:23:49 +01:00
PlaylistPrint.hxx replace stdint.h with cstdint 2020-03-12 19:04:39 -07:00
PlaylistSave.cxx copyright year 2020 2020-01-18 19:23:49 +01:00
PlaylistSave.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
PluginUnavailable.hxx PluginUnavailable: backport class PluginUnconfigured from master 2020-07-06 21:08:22 +02:00
RemoteTagCache.cxx copyright year 2020 2020-01-18 19:23:49 +01:00
RemoteTagCache.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
RemoteTagCacheHandler.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
ReplayGainConfig.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
ReplayGainGlobal.cxx fix double promotions 2020-09-21 09:13:51 +02:00
ReplayGainGlobal.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
ReplayGainInfo.cxx fix double promotions 2020-09-21 09:13:51 +02:00
ReplayGainInfo.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
ReplayGainMode.cxx replace assert.h with cassert 2020-03-12 15:25:38 -07:00
ReplayGainMode.hxx replace stdint.h with cstdint 2020-03-12 19:04:39 -07:00
SingleMode.cxx replace assert.h with cassert 2020-03-12 15:25:38 -07:00
SingleMode.hxx replace stdint.h with cstdint 2020-03-12 19:04:39 -07:00
SongLoader.cxx storage/Interface: convert URI parameters to std::string_view 2020-04-03 19:45:10 +02:00
SongLoader.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
SongPrint.cxx copyright year 2020 2020-01-18 19:23:49 +01:00
SongPrint.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
SongSave.cxx use std chr functions 2020-05-30 13:36:53 +02:00
SongSave.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
SongUpdate.cxx Merge branch 'v0.21.x' 2020-07-06 20:56:52 +02:00
StateFile.cxx copyright year 2020 2020-01-18 19:23:49 +01:00
StateFile.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
StateFileConfig.cxx copyright year 2020 2020-01-18 19:23:49 +01:00
StateFileConfig.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
Stats.cxx treewide: use boost::lround when std::round is unavailable 2020-03-25 18:54:15 -07:00
Stats.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
TagAny.cxx copyright year 2020 2020-01-18 19:23:49 +01:00
TagAny.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
TagArchive.cxx copyright year 2020 2020-01-18 19:23:49 +01:00
TagArchive.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
TagFile.cxx decoder/Plugin: allow scan_{file,stream}() to throw 2020-07-06 14:13:34 +02:00
TagFile.hxx decoder/Plugin: allow scan_{file,stream}() to throw 2020-07-06 14:13:34 +02:00
TagPrint.cxx copyright year 2020 2020-01-18 19:23:49 +01:00
TagPrint.hxx replace stdint.h with cstdint 2020-03-12 19:04:39 -07:00
TagSave.cxx copyright year 2020 2020-01-18 19:23:49 +01:00
TagSave.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
TagStream.cxx Merge branch 'v0.21.x' 2020-07-06 20:56:52 +02:00
TagStream.hxx Merge branch 'v0.21.x' 2020-07-06 20:56:52 +02:00
TimePrint.cxx copyright year 2020 2020-01-18 19:23:49 +01:00
TimePrint.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
ls.cxx decoder/plugin: add method protocols() 2020-09-21 14:53:18 +02:00
ls.hxx copyright year 2020 2020-01-18 19:23:49 +01:00
open.h copyright year 2020 2020-01-18 19:23:49 +01:00