1. 28 Dec, 2018 8 commits
  2. 14 Dec, 2018 2 commits
  3. 04 Dec, 2018 1 commit
  4. 20 Nov, 2018 1 commit
  5. 19 Nov, 2018 11 commits
  6. 16 Nov, 2018 2 commits
    • Max Kellermann's avatar
      release v0.21.3 · 43df4a75
      Max Kellermann authored
      43df4a75
    • Max Kellermann's avatar
      output/alsa: don't call snd_pcm_drain() if nothing was written · 4cdcaa86
      Max Kellermann authored
      Works around a problem where MPD goes into a busy loop because
      snd_pcm_drain() always returns `-EAGAIN` without making any progress
      (fixes #425).
      
      This problem was triggered by snd_pcm_drain() after snd_pcm_cancel()
      and snd_pcm_prepare(), but without submitting any data with
      snd_pcm_writei().
      
      I believe this is a kernel bug: in non-blocking mode, the kernel's
      snd_pcm_drain() function returns early.  In this mode, it only checks
      whether snd_pcm_drain_done() has been called already, but
      snd_pcm_drain_done() is never called if no data was submitted.
      
      In blocking mode, the following `for` loop detects this condition, so
      snd_pcm_drain_done() is not necessary, but without this extra check,
      we get `-EAGAIN` forever.
      4cdcaa86
  7. 15 Nov, 2018 2 commits
  8. 14 Nov, 2018 13 commits