lib/alsa/NonBlock: throw exception on error

Avoid another potential deadlock: if no file descriptors are
registered, our non-blocking ALSA code cannot ever work.
This commit is contained in:
Max Kellermann
2017-11-14 21:06:17 +01:00
parent e0f777d4eb
commit 7d579e7400
3 changed files with 24 additions and 7 deletions

View File

@@ -33,10 +33,12 @@ class MultiSocketMonitor;
* Update #MultiSocketMonitor's socket list from
* snd_pcm_poll_descriptors(). To be called from
* MultiSocketMonitor::PrepareSockets().
*
* Throws exception on error.
*/
std::chrono::steady_clock::duration
PrepareAlsaPcmSockets(MultiSocketMonitor &m, snd_pcm_t *pcm,
ReusableArray<pollfd> &pfd_buffer) noexcept;
ReusableArray<pollfd> &pfd_buffer);
/**
* Update #MultiSocketMonitor's socket list from