From 1f88cd73d43b4b67b27a5b0ba48cfa990e628244 Mon Sep 17 00:00:00 2001
From: Max Kellermann <max@duempel.org>
Date: Sun, 15 Feb 2009 18:40:47 +0100
Subject: [PATCH] decoder_list: added configuration option to disable decoder
 plugins

---
 NEWS               | 1 +
 src/decoder_list.c | 4 ++++
 2 files changed, 5 insertions(+)

diff --git a/NEWS b/NEWS
index 5559c0b40..af5307f35 100644
--- a/NEWS
+++ b/NEWS
@@ -13,6 +13,7 @@ ver 0.15 - (200?/??/??)
   - sidplay: new decoder plugin for C64 SID (using libsidplay2)
   - fluidsynth: new decoder plugin for MIDI files (using libfluidsynth)
   - wildmidi: another decoder plugin for MIDI files (using libwildmidi)
+  - added configuration option to disable decoder plugins
 * audio outputs:
   - shout: enlarged buffer size to 32 kB
   - null: allow disabling synchronization
diff --git a/src/decoder_list.c b/src/decoder_list.c
index a644a6370..34dc779c5 100644
--- a/src/decoder_list.c
+++ b/src/decoder_list.c
@@ -218,6 +218,10 @@ void decoder_plugin_init_all(void)
 		const struct config_param *param =
 			decoder_plugin_config(plugin->name);
 
+		if (!config_get_block_bool(param, "enabled", true))
+			/* the plugin is disabled in mpd.conf */
+			continue;
+
 		if (decoder_plugin_init(plugin, param))
 			decoder_plugins_enabled[i] = true;
 	}