From c341ae0a393bdea908e9eb1205e2929c658a20d6 Mon Sep 17 00:00:00 2001 From: happyleavesaoc Date: Wed, 11 May 2016 21:53:56 -0700 Subject: [PATCH] Media Player - MPD: handle more exceptions (#2045) --- homeassistant/components/media_player/mpd.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/homeassistant/components/media_player/mpd.py b/homeassistant/components/media_player/mpd.py index 266203e52e7..fefdab68685 100644 --- a/homeassistant/components/media_player/mpd.py +++ b/homeassistant/components/media_player/mpd.py @@ -89,7 +89,13 @@ class MpdDevice(MediaPlayerDevice): try: self.status = self.client.status() self.currentsong = self.client.currentsong() - except mpd.ConnectionError: + except (mpd.ConnectionError, BrokenPipeError, ValueError): + # Cleanly disconnect in case connection is not in valid state + try: + self.client.disconnect() + except mpd.ConnectionError: + pass + self.client.connect(self.server, self.port) if self.password is not None: