aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--NEWS1
-rw-r--r--src/output/mvp_plugin.c9
2 files changed, 8 insertions, 2 deletions
diff --git a/NEWS b/NEWS
index 629b29826..324a8e4b8 100644
--- a/NEWS
+++ b/NEWS
@@ -19,6 +19,7 @@ ver 0.15 - (200?/??/??)
- null: allow disabling synchronization
- mvp: fall back to stereo
- mvp: fall back to 16 bit audio samples
+ - mvp: check for reopen errors
* commands:
- "playlistinfo" supports a range now
- added "sticker database", command "sticker", which allows clients
diff --git a/src/output/mvp_plugin.c b/src/output/mvp_plugin.c
index 2bf79afad..65df5a2aa 100644
--- a/src/output/mvp_plugin.c
+++ b/src/output/mvp_plugin.c
@@ -272,8 +272,13 @@ mvp_output_play(void *data, const void *chunk, size_t size)
ssize_t ret;
/* reopen the device since it was closed by dropBufferedAudio */
- if (md->fd < 0)
- mvp_output_open(md, &md->audio_format);
+ if (md->fd < 0) {
+ bool success;
+
+ success = mvp_output_open(md, &md->audio_format);
+ if (!success)
+ return 0;
+ }
while (true) {
ret = write(md->fd, chunk, size);