diff --git a/src/client.rs b/src/client.rs index 19452bf0..034d70a2 100644 --- a/src/client.rs +++ b/src/client.rs @@ -491,7 +491,13 @@ impl Client { // Reflection methods {{{ /// Get current music directory pub fn music_directory(&mut self) -> Result { - self.run_command("config", ()).and_then(|_| self.read_field("music_directory")) + self.run_command("config", ()).and_then(|_| loop { + let (key, value) = self.read_pair()?; + if key == "music_directory" { + self.drain()?; + break Ok(value) + } + }) } /// List all available commands