summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/output/OutputThread.cxx7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/output/OutputThread.cxx b/src/output/OutputThread.cxx
index 16774ad37..20a9febb8 100644
--- a/src/output/OutputThread.cxx
+++ b/src/output/OutputThread.cxx
@@ -473,7 +473,12 @@ AudioOutput::PlayChunk(const MusicChunk *chunk)
if (tags && gcc_unlikely(chunk->tag != nullptr)) {
const ScopeUnlock unlock(mutex);
- ao_plugin_send_tag(this, *chunk->tag);
+ try {
+ ao_plugin_send_tag(this, *chunk->tag);
+ } catch (const std::runtime_error &e) {
+ FormatError(e, "Failed to send tag to \"%s\" [%s]",
+ name, plugin.name);
+ }
}
auto data = ConstBuffer<char>::FromVoid(ao_filter_chunk(this, chunk));