diff --git a/bindings.lua b/bindings.lua index d6a1141..cc2845d 100644 --- a/bindings.lua +++ b/bindings.lua @@ -16,9 +16,7 @@ mpdmap = { n = mpd.ctrl.next, N = mpd.ctrl.prev, s = function() awful.util.spawn("mpd") end, - g = function () awful.util.spawn(cmd.mpd_client) end, - d = mpd.disconnect, - c = mpd.connect + g = function () awful.util.spawn(cmd.mpd_client) end } mpdpromts = { name = "MPD PROMPTS", diff --git a/mpd.lua b/mpd.lua index 8493880..b227178 100644 --- a/mpd.lua +++ b/mpd.lua @@ -36,7 +36,8 @@ M.disconnect = function() end M.ensure_connection = function() - if conn == nil then M.connect() end + -- luampd throws SOCKET_ERRORs all the time. catch them and reconnect + if conn == nil or not pcall(conn:status()) then M.connect() end end -- }}}